QuantumCircuit

Overview

QPanda2 quantum circuit and quantum program. More...

Detailed Documentation

QPanda2 quantum circuit and quantum program.

Global Functions

QPanda2 basic interface for creating a QIf program.

Parameters:

ClassicalCondition Cbit
QProg QIf true node

Returns:

QIfProg QIf program

QPanda2 basic interface for creating a QIf program.

Parameters:

ClassicalCondition Cbit
QProg QIf true node
QProg QIf false node

Returns:

QIfProg QIf program

QPanda2 basic interface for creating a QWhile program.

Parameters:

ClassicalCondition Cbit
QProg QWhile true node

Returns:

QWhileProg QWhile program

QPanda2 basic interface for creating a empty circuit.

Returns:

QPanda::QCircuit

Create a hadamard qcircuit.

Parameters:

QVec& qubit vector

Returns:

QPanda::HadamardQCircuit hadamard qcircuit

Construct a new I gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum X gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum X1 gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum RX gate.

Parameters:

Qubit* target qubit
double angle

Returns:

QPanda::QGate quantum gate

Construct a new quantum U1 gate.

Parameters:

Qubit* target qubit
double angle

Returns:

QPanda::QGate quantum gate

Construct a new quantum U2 gate.

Parameters:

Qubit* target qubit
double phi
double lambda

Returns:

QPanda::QGate quantum gate

Construct a new quantum U3 gate.

Parameters:

Qubit* target qubit
double theta
double phi
double lambda

Returns:

QPanda::QGate quantum gate

Construct a new quantum Y gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum Y1 gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum RY gate.

Parameters:

Qubit* target qubit
double angle target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum Z gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum Z1 gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum RZ gate.

Parameters:

Qubit* target qubit
double angle

Returns:

QPanda::QGate quantum gate

Construct a new quantum RZPhi gate.

Parameters:

Qubit* target qubit
double angle
double phi

Returns:

QPanda::QGate quantum gate

Construct a new quantum S gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum T gate.

Parameters:

Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum H gate.

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum ECHO gate; Only for 6 qubits online projects !

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum BARRIER gate; Only for 6 qubits online projects !

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum BARRIER gate; Only for 6 qubits online projects !

Parameters:

Qubit* qubit target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum CNOT gate.

Parameters:

Qubit* control qubit
Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum CZ gate.

Parameters:

Qubit* control qubit
Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum U4 gate.

Parameters:

double alpha
double beta
double gamma
double delta
Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum U4 gate.

Parameters:

QStat& matrix
Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum QDouble gate.

Parameters:

QStat matrix
Qubit* control qubit
Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum CU gate.

Parameters:

double alpha
double beta
double gamma
double delta
Qubit* control qubit
Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum CU gate.

Parameters:

QStat & matrix
Qubit* target qubit
Qubit* control qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum iSWAP gate.

Parameters:

Qubit* control qubit
Qubit* target qubit
double theta

Returns:

QPanda::QGate quantum gate

Construct a new quantum CR gate.

Parameters:

Qubit* control qubit
Qubit* targit qubit
double theta

Returns:

QPanda::QGate quantum gate

Construct a new quantum SqiSWAP gate.

Parameters:

Qubit* control qubit
Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum SWAP gate.

Parameters:

Qubit* control qubit
Qubit* target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum U4 gate.

Parameters:

Qubit* target qubit
double alpha
double beta
double gamma
double delta

Returns:

QPanda::QGate quantum gate

Construct a new quantum U4 gate.

Parameters:

Qubit* target qubit
QStat& matrix

Returns:

QPanda::QGate quantum gate

Construct a new quantum QDouble gate.

Parameters:

Qubit* control qubit
Qubit* target qubit
QStat matrix

Returns:

QPanda::QGate quantum gate

Construct a new quantum CU gate.

Parameters:

Qubit* control qubit
Qubit* target qubit
double alpha
double beta
double gamma
double delta

Returns:

QPanda::QGate quantum gate

Construct a new quantum CU gate.

Parameters:

Qubit* target qubit
Qubit* control qubit
QStat & matrix

Returns:

QPanda::QGate quantum gate

Construct a new I gate.

Construct QGate by Qubit physics addr

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum X gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum X1 gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum RX gate.

Parameters:

int qaddr target qubit phy addr
double angle

Returns:

QPanda::QGate quantum gate

Construct a new quantum U1 gate.

Parameters:

int qaddr target qubit phy addr
double angle

Returns:

QPanda::QGate quantum gate

Construct a new quantum U2 gate.

Parameters:

int qaddr target qubit phy addr
double phi
double lambda

Returns:

QPanda::QGate quantum gate

Construct a new quantum U3 gate.

Parameters:

int qaddr target qubit phy addr
double theta
double phi
double lambda

Returns:

QPanda::QGate quantum gate

Construct a new quantum Y gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum Y1 gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum RY gate.

Parameters:

int qaddr target qubit phy addr
double angle target qubit

Returns:

QPanda::QGate quantum gate

Construct a new quantum Z gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum Z1 gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum RZ gate.

Parameters:

int qaddr target qubit phy addr
double angle

Returns:

QPanda::QGate quantum gate

Construct a new quantum RZPhi gate.

Parameters:

int qaddr target qubit phy addr
double angle
double phi

Returns:

QPanda::QGate quantum gate

Construct a new quantum S gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum T gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum H gate.

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum ECHO gate; Only for 6 qubits online projects !

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum BARRIER gate; Only for 6 qubits online projects !

Parameters:

int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum BARRIER gate; Only for 6 qubits online projects !

Parameters:

std::vector<int> qaddrs all qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum CNOT gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum CZ gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum iSWAP gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr
double theta

Returns:

QPanda::QGate quantum gate

Construct a new quantum CR gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr
double theta

Returns:

QPanda::QGate quantum gate

Construct a new quantum SqiSWAP gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum SWAP gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr

Returns:

QPanda::QGate quantum gate

Construct a new quantum U4 gate.

Parameters:

int qaddr target qubit phy addr
double alpha
double beta
double gamma
double delta

Returns:

QPanda::QGate quantum gate

Construct a new quantum U4 gate.

Parameters:

int qaddr target qubit phy addr
QStat& matrix

Returns:

QPanda::QGate quantum gate

Construct a new quantum QDouble gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr
QStat matrix

Returns:

QPanda::QGate quantum gate

Construct a new quantum CU gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr
double alpha
double beta
double gamma
double delta

Returns:

QPanda::QGate quantum gate

Construct a new quantum CU gate.

Parameters:

int qaddr control qubit phy addr
int qaddr target qubit phy addr
QStat & matrix

Returns:

QPanda::QGate quantum gate

deep copy interface for classess base on QNode

Parameters:

_Ty & node

Returns:

_Ty

QPanda2 basic interface for creating a empty quantum program.

Returns:

QPanda::QProg quantum program

QPanda2 basic interface for creating a quantum Reset node.

Parameters:

Qubit* Qubit pointer

Returns:

QPanda::QReset quantum reset node

QPanda2 basic interface for creating a quantum Reset node.

Parameters:

int qubit phy addr

Returns:

QPanda::QReset quantum reset node