QStabilizerHybrid

Defined in qstabilizerhybrid.hpp.

The API is provided by Qrack::QInterface. This is an extended “stabilizer” or “Clifford” simulation. If a Qrack::QInterface method call cannot be carried out by this simulator via “stabilizer” simulation methods, it will automatically convert to traditional state vector representation, (while keep its Qrack::QStabilizerHybrid class type).

inline Qrack::QStabilizerHybrid::QStabilizerHybrid(bitLenInt qBitCount, const bitCapInt &initState = ZERO_BCI, qrack_rand_gen_ptr rgp = nullptr, const complex &phaseFac = CMPLX_DEFAULT_ARG, bool doNorm = false, bool randomGlobalPhase = true, bool useHostMem = false, int64_t deviceId = -1, bool useHardwareRNG = true, bool useSparseStateVec = false, real1_f norm_thresh = REAL1_EPSILON, std::vector<int64_t> devList = {}, bitLenInt qubitThreshold = 0U, real1_f separation_thresh = _qrack_qunit_sep_thresh)
Qrack::QStabilizerHybrid::QStabilizerHybrid(std::vector<QInterfaceEngine> eng, bitLenInt qBitCount, const bitCapInt &initState = ZERO_BCI, qrack_rand_gen_ptr rgp = nullptr, const complex &phaseFac = CMPLX_DEFAULT_ARG, bool doNorm = false, bool randomGlobalPhase = true, bool useHostMem = false, int64_t deviceId = -1, bool useHardwareRNG = true, bool useSparseStateVec = false, real1_f norm_thresh = REAL1_EPSILON, std::vector<int64_t> devList = {}, bitLenInt qubitThreshold = 0U, real1_f separation_thresh = _qrack_qunit_sep_thresh)