QuISP
|
#include <Qubit.h>
Public Member Functions | |
GraphStateQubit (const IQubitId *id, GraphStateBackend *const backend, bool is_short_live) | |
~GraphStateQubit () | |
void | configure (std::unique_ptr< StationaryQubitConfiguration > configuration) |
void | setFree () override |
const IQubitId *const | getId () const override |
void | relaseBackToPool () override |
void | gateX () override |
void | gateZ () override |
void | gateY () override |
void | gateH () override |
void | gateS () override |
void | gateSdg () override |
void | gateCNOT (IQubit *const target_qubit) override |
EigenvalueResult | measureX () override |
EigenvalueResult | measureY () override |
EigenvalueResult | measureZ () override |
void | noiselessH () override |
void | noiselessX () override |
void | noiselessZ () override |
void | noiselessCNOT (IQubit *const target_qubit) override |
EigenvalueResult | noiselessMeasureZ () override |
EigenvalueResult | noiselessMeasureX () override |
EigenvalueResult | noiselessMeasureZ (EigenvalueResult forced_result) override |
EigenvalueResult | noiselessMeasureX (EigenvalueResult forced_result) override |
![]() | |
IQubit () | |
virtual | ~IQubit () |
virtual void | gateI () |
virtual void | gateT () |
virtual void | gateCZ (IQubit *const target_qubit) |
Protected Member Functions | |
void | setMemoryErrorRates (double x_error_rate, double y_error_rate, double z_error_rate, double excitation_rate, double relaxation_rate) |
void | applySingleQubitGateError (SingleGateErrorModel const &err) |
void | applyTwoQubitGateError (TwoQubitGateErrorModel const &err, GraphStateQubit *another_qubit) |
void | applyMemoryError () |
void | excite () |
void | relax () |
void | applyClifford (CliffordOperator op) |
void | applyRightClifford (CliffordOperator op) |
bool | isNeighbor (GraphStateQubit *another_qubit) |
void | addEdge (GraphStateQubit *another_qubit) |
void | deleteEdge (GraphStateQubit *another_qubit) |
void | toggleEdge (GraphStateQubit *another_qubit) |
void | removeAllEdges () |
void | localComplement () |
void | removeVertexOperation (GraphStateQubit *qubit_to_avoid) |
void | applyPureCZ (GraphStateQubit *another_qubit) |
EigenvalueResult | graphMeasureZ () |
EigenvalueResult | graphMeasureZ (EigenvalueResult eigenvalue) |
std::string | cliffordToString (CliffordOperator op) |
Protected Attributes | |
SingleGateErrorModel | gate_err_h |
SingleGateErrorModel | gate_err_x |
SingleGateErrorModel | gate_err_z |
TwoQubitGateErrorModel | gate_err_cnot |
MeasurementErrorModel | measurement_err |
MemoryErrorModel | memory_err |
Eigen::MatrixXd | memory_transition_matrix |
SimTime | updated_time = SimTime(0) |
std::unordered_set< GraphStateQubit * > | neighbors |
CliffordOperator | vertex_operator |
const IQubitId * | id |
GraphStateBackend *const | backend |
const bool | is_short_live |
Static Protected Attributes | |
static std::string | decomposition_table [24] |
static CliffordOperator | clifford_application_lookup [24][24] |
static bool | controlled_z_lookup_edge [2][24][24] |
static CliffordOperator | controlled_z_lookup_node_1 [2][24][24] |
static CliffordOperator | controlled_z_lookup_node_2 [2][24][24] |
quisp::backends::graph_state::GraphStateQubit::GraphStateQubit | ( | const IQubitId * | id, |
GraphStateBackend *const | backend, | ||
bool | is_short_live ) |
quisp::backends::graph_state::GraphStateQubit::~GraphStateQubit | ( | ) |
|
protected |
|
protected |
|
protected |
100
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
void quisp::backends::graph_state::GraphStateQubit::configure | ( | std::unique_ptr< StationaryQubitConfiguration > | configuration | ) |
|
protected |
|
protected |
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
protected |
|
protected |
|
protected |
|
protected |
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
overridevirtual |
Reimplemented from quisp::backends::abstract::IQubit.
|
protected |
|
protected |
|
protected |
|
overridevirtual |
Implements quisp::backends::abstract::IQubit.
|
protected |
|
protected |
|
protected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
staticprotected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |