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