class QPanda::QuantumMachine

Overview

Abstract quantum machine base classes. More…

Detailed Documentation

Abstract quantum machine base classes.

Methods

allocateQubitThroughPhyAddress

Parameters:

size_t

address

Returns:

QPanda::Qubit * qubit

allocateQubitThroughVirAddress

Parameters:

size_t

address

Returns:

QPanda::Qubit * qubit

init

Returns:

void

getStatus

Returns:

QPanda::QMachineStatus *

directlyRun

Parameters:

QProg&

quantum program

Returns:

std::map<std::string, bool>

runWithConfiguration

Parameters:

QProg&

quantum program

std::vector<ClassicalCondition>&

rapidjson::Document&

Returns:

std::map<std::string, Eigen::size_t>

runWithConfiguration

Parameters:

QProg&

quantum program

std::vector<ClassicalCondition>&

int

Returns:

std::map<std::string, Eigen::size_t>

getGateTimeMap

Returns:

std::map<GateType, Eigen::size_t>

finalize

Returns:

void

getQState

Returns:

QStat

getVirtualQubitAddress

Parameters:

Qubit*

qubit

Returns:

Eigen::size_t

swapQubitPhysicalAddress

Parameters:

Qubit*

qubit

Qubit*

qubit

Returns:

bool

To initialize the quantum machine.

Allocate and return a qubit.

allocateQubits

Allocate and run a cbit.

Allocate and run a cbit.

Allocate and return a list of cbits.

Free a qubit.

Gree a list of qubits.

Gree a cbit.

Gree a list of CBits.

getAllocateQubit

getAllocateCMem

setConfigure

Parameters:

const

Configuration & config

Returns:

void

qAlloc

Returns:

QPanda::Qubit * qubit

qAllocMany

Parameters:

size_t

qubit_count

Returns:

QPanda::QVec

cAlloc

Returns:

QPanda::ClassicalCondition

cAlloc

Parameters:

size_t

Returns:

QPanda::ClassicalCondition

cAllocMany

Parameters:

size_t

count

Returns:

std::vector<QPanda::ClassicalCondition> cbit_vec

qFree

Parameters:

Qubit*

Returns:

void

qFreeAll

Parameters:

QVec&

Returns:

void

cFree

Parameters:

ClassicalCondition&

cbit

Returns:

void

cFreeAll

Parameters:

std::vector<ClassicalCondition

>& cbit_vec

Returns:

void

getAllocateQubitNum

Returns:

Eigen::size_t count

getAllocateCMemNum

Returns:

Eigen::size_t count

get allocate qubits

Parameters:

QVec&

Returns:

size_t allocate qubits size

get allocate cbits

Parameters:

std::vector<ClassicalCondition>&

Returns:

size_t allocate cbits size

gets the expected value of the Hamiltonian of the circuit

Parameters:

QProg

quantum program

QHamiltonian

hamiltonian

QVec

qubits

Returns:

double expectation

gets the expected value of the Hamiltonian of the circuit

Parameters:

QProg

quantum program

QHamiltonian

hamiltonian

QVec

qubits

int

run shots

Returns:

double expectation