From 8dd30ef39e0c9719d58c9df4b58bc5cbb0e7f68a Mon Sep 17 00:00:00 2001
From: TysonRayJones void applyPhaseFuncOverrides (Qureg qureg, int *qubits, int numQubits, enum bitEncoding encoding, qreal *coeffs, qreal *exponents, int numTerms, long long int *overrideInds, qreal *overridePhases, int numOverrides) Induces a phase change upon each amplitude of qureg
, determined by the passed exponential polynomial "phase function", and an explicit set of 'overriding' values at specific state indices. More...
+
+void applyProjector (Qureg qureg, int qubit, int outcome)
+ Force the target qubit
of qureg
into the given classical outcome
, via a non-renormalising projection. More... void applyQFT (Qureg qureg, int *qubits, int numQubits) Applies the quantum Fourier transform (QFT) to a specific subset of qubits of the register qureg
. More...
@@ -269,6 +272,9 @@
int getQuEST_PREC (void)
+
+void getQuESTSeeds (QuESTEnv env, unsigned long int **seeds, int *numSeeds)
+ Obtain the seeds presently used in random number generation. More... qreal getRealAmp (Qureg qureg, long long int index) Get the real component of the complex probability amplitude at an index in the state vector. More...
@@ -303,7 +309,7 @@
Initialise qureg
into to a given pure state of an equivalent Hilbert dimension. More...
-void initStateFromAmps (Qureg qureg, qreal *reals, qreal *imags)
+ Initialise state-vector qureg
by specifying all amplitudes. More... Initialise qureg
by specifying all amplitudes. More... void initStateFromSingleFile (Qureg *qureg, char filename[200], QuESTEnv env)
@@ -422,6 +428,9 @@
Initialises the wavefunction amplitudes according to those specified in a file. More... void rotateZ (Qureg qureg, int targetQubit, qreal angle) Rotate a single qubit by a given angle around the Z-axis of the Bloch-sphere (also known as a phase shift gate). More...
+
+void seedQuESTDefault (QuESTEnv *env)
+ Seeds the random number generator with the (master node) current time and process ID. More... void setAmps (Qureg qureg, long long int startInd, qreal *reals, qreal *imags, long long int numAmps) Overwrites a subset of the amplitudes in state-vector qureg
, with those passed in reals
and imags
. More...
@@ -513,13 +522,13 @@ Definition at line 1558 of file QuEST.c.
Definition at line 1573 of file QuEST.c.
+References statevec_compareStates(), and validateMatchingQuregDims().
+References statevec_compareStates(), and validateMatchingQuregDims().
Definition at line 1595 of file QuEST.c.
-Definition at line 1610 of file QuEST.c.
+References qreal.
@@ -583,13 +592,13 @@Definition at line 1582 of file QuEST.c.
+References statevec_initStateFromSingleFile(), and validateFileOpened().
+References statevec_initStateFromSingleFile(), and validateFileOpened().
Definition at line 1587 of file QuEST.c.
+References statevec_initStateOfSingleQubit(), validateOutcome(), validateStateVecQureg(), and validateTarget().
+References statevec_initStateOfSingleQubit(), validateOutcome(), validateStateVecQureg(), and validateTarget().
Definition at line 1030 of file QuEST.c.
+References Qureg::numAmpsTotal, qasm_recordComment(), and statevec_setAmps().
+References Qureg::numAmpsTotal, qasm_recordComment(), and statevec_setAmps().
qureg
, determined by the passed exponential polynomial "phase function", and an explicit set of 'overriding' values at specific state indices. More...qubit
of qureg
into the given classical outcome
, via a non-renormalising projection. More...qureg
. More...qureg
into to a given pure state of an equivalent Hilbert dimension. More...qureg
by specifying all amplitudes. More...qureg
by specifying all amplitudes. More...qureg
into the zero state. More...qureg
, with those passed in reals
and imags
. More...qubit1
and qubit2
. More...The QuEST API. This file contains the comments used by doxygen for generating API doc.
Definition in file QuEST.h.
-void SHARED_calcProbOfAllOutcomes | -( | -qreal * | -outcomeProbs, | -
- | - | Qureg | -qureg, | -
- | - | int * | -qubits, | -
- | - | int | -numQubits | -
- | ) | -- |
void TEST_calcProbOfAllOutcomes | -( | -qreal * | -retProbs, | -
- | - | Qureg | -qureg, | -
- | - | int * | -qubits, | -
- | - | int | -numQubits | -
- | ) | -- |
Definition at line 683 of file QuEST_common.c.
+Definition at line 675 of file QuEST_common.c.
@@ -333,7 +330,7 @@Definition at line 677 of file QuEST_common.c.
+Definition at line 669 of file QuEST_common.c.
@@ -395,7 +392,7 @@Definition at line 595 of file QuEST_common.c.
+Definition at line 585 of file QuEST_common.c.
@@ -473,74 +470,74 @@Definition at line 836 of file QuEST_common.c.
-Definition at line 849 of file QuEST_common.c.
+References GATE_HADAMARD, GATE_SWAP, Qureg::isDensityMatrix, M_PI, Qureg::numQubitsRepresented, qasm_recordControlledGate(), qasm_recordGate(), qasm_recordNamedPhaseFunc(), qreal, SCALED_PRODUCT, shiftSubregIndices(), statevec_applyParamNamedPhaseFuncOverrides(), statevec_hadamard(), statevec_swapQubitAmps(), and UNSIGNED.
- -Referenced by applyFullQFT(), and applyQFT().
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +References GATE_HADAMARD, GATE_SWAP, Qureg::isDensityMatrix, M_PI, Qureg::numQubitsRepresented, qasm_recordControlledGate(), qasm_recordGate(), qasm_recordNamedPhaseFunc(), qreal, SCALED_PRODUCT, shiftSubregIndices(), statevec_applyParamNamedPhaseFuncOverrides(), statevec_hadamard(), statevec_swapQubitAmps(), and UNSIGNED.
+ +Referenced by applyFullQFT(), and applyQFT().
@@ -588,19 +585,19 @@Definition at line 827 of file QuEST_common.c.
-Definition at line 840 of file QuEST_common.c.
+References applySymmetrizedTrotterCircuit().
+References applySymmetrizedTrotterCircuit().
-Referenced by applyTrotterCircuit().
+Referenced by applyTrotterCircuit().
Definition at line 752 of file QuEST_common.c.
-References Qureg::isDensityMatrix, PauliHamil::numQubits, PauliHamil::numSumTerms, PAULI_X, PAULI_Y, PAULI_Z, PauliHamil::pauliCodes, qasm_recordComment(), qreal, statevec_multiRotatePauli(), and PauliHamil::termCoeffs.
- -Referenced by applySymmetrizedTrotterCircuit().
+Definition at line 765 of file QuEST_common.c.
+References Qureg::isDensityMatrix, PauliHamil::numQubits, PauliHamil::numSumTerms, PAULI_X, PAULI_Y, PAULI_Z, PauliHamil::pauliCodes, qasm_recordComment(), qreal, statevec_multiRotatePauli(), and PauliHamil::termCoeffs.
+ +Referenced by applySymmetrizedTrotterCircuit().
@@ -742,30 +739,30 @@Definition at line 807 of file QuEST_common.c.
-Definition at line 820 of file QuEST_common.c.
+References applyExponentiatedPauliHamil(), and qreal.
+References applyExponentiatedPauliHamil(), and qreal.
-Referenced by agnostic_applyTrotterCircuit().
+Referenced by agnostic_applyTrotterCircuit().
Definition at line 661 of file QuEST_common.c.
-Definition at line 652 of file QuEST_common.c.
+References ComplexMatrixN::imag, ComplexMatrixN::numQubits, and ComplexMatrixN::real.
@@ -864,16 +861,16 @@Definition at line 630 of file QuEST_common.c.
-Definition at line 620 of file QuEST_common.c.
+References Qureg::numQubitsRepresented, and statevec_multiControlledTwoQubitUnitary().
+References Qureg::numQubitsRepresented, and statevec_multiControlledTwoQubitUnitary().
-Referenced by densmatr_mixKrausMap().
+Referenced by densmatr_mixKrausMap().
Definition at line 644 of file QuEST_common.c.
-Definition at line 634 of file QuEST_common.c.
+References Qureg::numQubitsRepresented, and statevec_multiControlledMultiQubitUnitary().
+References Qureg::numQubitsRepresented, and statevec_multiControlledMultiQubitUnitary().
-Referenced by densmatr_mixMultiQubitKrausMap().
+Referenced by densmatr_mixMultiQubitKrausMap().
Definition at line 636 of file QuEST_common.c.
-Definition at line 626 of file QuEST_common.c.
+References Qureg::numQubitsRepresented, and statevec_multiControlledMultiQubitUnitary().
+References Qureg::numQubitsRepresented, and statevec_multiControlledMultiQubitUnitary().
-Referenced by densmatr_mixTwoQubitKrausMap().
+Referenced by densmatr_mixTwoQubitKrausMap().
Definition at line 382 of file QuEST_common.c.
-Definition at line 372 of file QuEST_common.c.
+References densmatr_calcProbOfOutcome(), densmatr_collapseToKnownProbOutcome(), generateMeasurementOutcome(), and qreal.
+References densmatr_calcProbOfOutcome(), densmatr_collapseToKnownProbOutcome(), generateMeasurementOutcome(), and qreal.
-Referenced by measure(), and measureWithStats().
+Referenced by measure(), and measureWithStats().
Definition at line 654 of file QuEST_common.c.
-Definition at line 644 of file QuEST_common.c.
+References densmatr_applyKrausSuperoperator(), and populateKrausSuperOperator2().
+References densmatr_applyKrausSuperoperator(), and populateKrausSuperOperator2().
-Referenced by densmatr_mixPauli(), and mixKrausMap().
+Referenced by densmatr_mixPauli(), and mixKrausMap().
Definition at line 697 of file QuEST_common.c.
-References createComplexMatrixN(), densmatr_applyMultiQubitKrausSuperoperator(), destroyComplexMatrixN(), macro_allocStackComplexMatrixN, and populateKrausSuperOperatorN().
- -Referenced by mixMultiQubitKrausMap().
+Definition at line 701 of file QuEST_common.c.
+References createComplexMatrixN(), densmatr_applyMultiQubitKrausSuperoperator(), destroyComplexMatrixN(), macro_allocStackComplexMatrixN, and populateKrausSuperOperatorN().
+ +Referenced by mixMultiQubitKrausMap().
@@ -1212,32 +1218,32 @@Definition at line 730 of file QuEST_common.c.
-Definition at line 743 of file QuEST_common.c.
+References densmatr_mixKrausMap(), ComplexMatrix2::imag, qreal, and ComplexMatrix2::real.
+References densmatr_mixKrausMap(), ComplexMatrix2::imag, qreal, and ComplexMatrix2::real.
-Referenced by mixPauli().
+Referenced by mixPauli().
Definition at line 689 of file QuEST_common.c.
-Definition at line 682 of file QuEST_common.c.
+References densmatr_applyTwoQubitKrausSuperoperator(), macro_allocStackComplexMatrixN, and populateKrausSuperOperator4().
+References createComplexMatrixN(), densmatr_applyTwoQubitKrausSuperoperator(), destroyComplexMatrixN(), macro_allocStackComplexMatrixN, and populateKrausSuperOperator4().
-Referenced by mixTwoQubitKrausMap().
+Referenced by mixTwoQubitKrausMap().
Referenced by mixTwoQubitDephasing(), and mixTwoQubitDepolarising().
+Referenced by mixTwoQubitDephasing(), and mixTwoQubitDepolarising().
@@ -1386,7 +1403,7 @@Referenced by densmatr_measureWithStats(), and statevec_measureWithStats().
+Referenced by densmatr_measureWithStats(), and statevec_measureWithStats().
@@ -1501,7 +1518,7 @@Referenced by qasm_recordAxisRotation(), qasm_recordControlledAxisRotation(), statevec_controlledRotateAroundAxis(), statevec_controlledRotateAroundAxisConj(), statevec_rotateAroundAxis(), and statevec_rotateAroundAxisConj().
+Referenced by qasm_recordAxisRotation(), qasm_recordControlledAxisRotation(), statevec_controlledRotateAroundAxis(), statevec_controlledRotateAroundAxisConj(), statevec_rotateAroundAxis(), and statevec_rotateAroundAxisConj().
@@ -1530,7 +1547,7 @@Referenced by controlledUnitary(), multiControlledUnitary(), multiStateControlledUnitary(), and unitary().
+Referenced by controlledUnitary(), multiControlledUnitary(), multiStateControlledUnitary(), and unitary().
@@ -1559,7 +1576,7 @@Referenced by controlledTwoQubitUnitary(), multiControlledTwoQubitUnitary(), and twoQubitUnitary().
+Referenced by controlledTwoQubitUnitary(), multiControlledTwoQubitUnitary(), and twoQubitUnitary().
@@ -1590,7 +1607,7 @@Referenced by compactUnitary(), and controlledCompactUnitary().
+Referenced by compactUnitary(), and controlledCompactUnitary().
@@ -1637,7 +1654,7 @@Referenced by multiStateControlledUnitary().
+Referenced by multiStateControlledUnitary().
@@ -1677,7 +1694,7 @@Referenced by applyMultiControlledMatrixN(), multiControlledMultiQubitNot(), multiControlledMultiQubitUnitary(), multiControlledMultiRotatePauli(), multiControlledMultiRotateZ(), multiControlledTwoQubitUnitary(), multiControlledUnitary(), multiQubitNot(), multiRotateZ(), multiStateControlledUnitary(), statevec_multiControlledMultiQubitUnitary(), statevec_multiControlledMultiRotatePauli(), statevec_multiControlledPhaseFlip(), statevec_multiControlledPhaseShift(), statevec_multiRotatePauli(), and validateMultiControlsMultiTargets().
+Referenced by applyMultiControlledMatrixN(), multiControlledMultiQubitNot(), multiControlledMultiQubitUnitary(), multiControlledMultiRotatePauli(), multiControlledMultiRotateZ(), multiControlledTwoQubitUnitary(), multiControlledUnitary(), multiQubitNot(), multiRotateZ(), multiStateControlledUnitary(), statevec_multiControlledMultiQubitUnitary(), statevec_multiControlledMultiRotatePauli(), statevec_multiControlledPhaseFlip(), statevec_multiControlledPhaseShift(), statevec_multiRotatePauli(), and validateMultiControlsMultiTargets().
@@ -1722,7 +1739,7 @@Referenced by seedQuESTDefault().
+Referenced by seedQuESTDefault().
@@ -1780,7 +1797,7 @@Referenced by getUnitVector(), and validateVector().
+Referenced by getUnitVector(), and validateVector().
@@ -1909,15 +1926,15 @@Definition at line 617 of file QuEST_common.c.
-Definition at line 607 of file QuEST_common.c.
+ -References macro_populateKrausOperator.
+References macro_populateKrausOperator.
-Referenced by densmatr_mixKrausMap().
+Referenced by densmatr_mixKrausMap().
Definition at line 621 of file QuEST_common.c.
-Definition at line 611 of file QuEST_common.c.
+ -References macro_populateKrausOperator.
+References macro_populateKrausOperator.
-Referenced by densmatr_mixTwoQubitKrausMap().
+Referenced by densmatr_mixTwoQubitKrausMap().
Definition at line 625 of file QuEST_common.c.
-Definition at line 615 of file QuEST_common.c.
+References macro_populateKrausOperator, and ComplexMatrixN::numQubits.
+References macro_populateKrausOperator, and ComplexMatrixN::numQubits.
-Referenced by densmatr_mixMultiQubitKrausMap().
+Referenced by densmatr_mixMultiQubitKrausMap().
Referenced by controlledMultiQubitUnitary(), multiControlledMultiQubitUnitary(), and multiQubitUnitary().
+Referenced by controlledMultiQubitUnitary(), multiControlledMultiQubitUnitary(), and multiQubitUnitary().
@@ -2075,7 +2092,7 @@Referenced by applyPhaseFunc(), applyPhaseFuncOverrides(), controlledMultiQubitUnitary(), multiControlledMultiQubitUnitary(), multiControlledMultiRotatePauli(), multiControlledPhaseFlip(), multiControlledPhaseShift(), multiQubitUnitary(), and multiRotatePauli().
+Referenced by applyPhaseFunc(), applyPhaseFuncOverrides(), controlledMultiQubitUnitary(), multiControlledMultiQubitUnitary(), multiControlledMultiRotatePauli(), multiControlledPhaseFlip(), multiControlledPhaseShift(), multiQubitUnitary(), and multiRotatePauli().
@@ -2125,7 +2142,7 @@Referenced by agnostic_applyQFT(), applyMultiVarPhaseFunc(), applyMultiVarPhaseFuncOverrides(), applyNamedPhaseFunc(), applyNamedPhaseFuncOverrides(), applyParamNamedPhaseFunc(), and applyParamNamedPhaseFuncOverrides().
+Referenced by agnostic_applyQFT(), applyMultiVarPhaseFunc(), applyMultiVarPhaseFuncOverrides(), applyNamedPhaseFunc(), applyNamedPhaseFuncOverrides(), applyParamNamedPhaseFunc(), and applyParamNamedPhaseFuncOverrides().
@@ -2167,23 +2184,23 @@Definition at line 505 of file QuEST_common.c.
-Definition at line 495 of file QuEST_common.c.
+References PAULI_X, PAULI_Y, PAULI_Z, statevec_pauliX(), statevec_pauliY(), and statevec_pauliZ().
+References PAULI_X, PAULI_Y, PAULI_Z, statevec_pauliX(), statevec_pauliY(), and statevec_pauliZ().
-Referenced by statevec_applyPauliSum(), and statevec_calcExpecPauliProd().
+Referenced by statevec_applyPauliSum(), and statevec_calcExpecPauliProd().
Definition at line 548 of file QuEST_common.c.
-Definition at line 538 of file QuEST_common.c.
+References Qureg::numQubitsRepresented, Complex::real, statevec_applyPauliProd(), statevec_initBlankState(), and statevec_setWeightedQureg().
+References Qureg::numQubitsRepresented, Complex::real, statevec_applyPauliProd(), statevec_initBlankState(), and statevec_setWeightedQureg().
-Referenced by applyPauliHamil(), and applyPauliSum().
+Referenced by applyPauliHamil(), and applyPauliSum().
Definition at line 519 of file QuEST_common.c.
-Definition at line 509 of file QuEST_common.c.
+References densmatr_calcTotalProb(), Qureg::isDensityMatrix, qreal, Complex::real, statevec_applyPauliProd(), statevec_calcInnerProduct(), and statevec_cloneQureg().
+References densmatr_calcTotalProb(), Qureg::isDensityMatrix, qreal, Complex::real, statevec_applyPauliProd(), statevec_calcInnerProduct(), and statevec_cloneQureg().
-Referenced by calcExpecPauliProd(), and statevec_calcExpecPauliSum().
+Referenced by calcExpecPauliProd(), and statevec_calcExpecPauliSum().
Definition at line 534 of file QuEST_common.c.
-Definition at line 524 of file QuEST_common.c.
+References Qureg::numQubitsRepresented, qreal, and statevec_calcExpecPauliProd().
+References Qureg::numQubitsRepresented, qreal, and statevec_calcExpecPauliProd().
-Referenced by calcExpecPauliHamil(), and calcExpecPauliSum().
+Referenced by calcExpecPauliHamil(), and calcExpecPauliSum().
Definition at line 390 of file QuEST_common.c.
-Definition at line 380 of file QuEST_common.c.
+References Complex::imag, qreal, Complex::real, and statevec_calcInnerProduct().
-Referenced by calcFidelity().
+Referenced by calcFidelity().
Definition at line 589 of file QuEST_common.c.
-Definition at line 579 of file QuEST_common.c.
+References statevec_multiControlledMultiQubitUnitary().
+References statevec_multiControlledMultiQubitUnitary().
-Referenced by controlledMultiQubitUnitary().
+Referenced by controlledMultiQubitUnitary().
Definition at line 340 of file QuEST_common.c.
-Definition at line 330 of file QuEST_common.c.
+References getComplexPairFromRotation(), and statevec_controlledCompactUnitary().
+References getComplexPairFromRotation(), and statevec_controlledCompactUnitary().
-Referenced by controlledRotateAroundAxis(), statevec_controlledRotateX(), statevec_controlledRotateY(), and statevec_controlledRotateZ().
+Referenced by controlledRotateAroundAxis(), statevec_controlledRotateX(), statevec_controlledRotateY(), and statevec_controlledRotateZ().
Definition at line 347 of file QuEST_common.c.
-Definition at line 337 of file QuEST_common.c.
+References getComplexPairFromRotation(), Complex::imag, and statevec_controlledCompactUnitary().
+References getComplexPairFromRotation(), Complex::imag, and statevec_controlledCompactUnitary().
-Referenced by controlledRotateAroundAxis().
+Referenced by controlledRotateAroundAxis().
Definition at line 356 of file QuEST_common.c.
-Definition at line 346 of file QuEST_common.c.
+References statevec_controlledRotateAroundAxis().
+References statevec_controlledRotateAroundAxis().
-Referenced by controlledRotateX().
+Referenced by controlledRotateX().
Definition at line 362 of file QuEST_common.c.
-Definition at line 352 of file QuEST_common.c.
+References statevec_controlledRotateAroundAxis().
+References statevec_controlledRotateAroundAxis().
-Referenced by controlledRotateY().
+Referenced by controlledRotateY().
Definition at line 368 of file QuEST_common.c.
-Definition at line 358 of file QuEST_common.c.
+References statevec_controlledRotateAroundAxis().
+References statevec_controlledRotateAroundAxis().
-Referenced by controlledRotateZ().
+Referenced by controlledRotateZ().
Definition at line 577 of file QuEST_common.c.
-Definition at line 567 of file QuEST_common.c.
+References statevec_multiControlledTwoQubitUnitary().
+References statevec_multiControlledTwoQubitUnitary().
-Referenced by controlledTwoQubitUnitary().
+Referenced by controlledTwoQubitUnitary().
Definition at line 258 of file QuEST_common.c.
-Definition at line 248 of file QuEST_common.c.
+References qreal, statevec_getImagAmp(), and statevec_getRealAmp().
+References qreal, statevec_getImagAmp(), and statevec_getRealAmp().
-Referenced by getProbAmp().
+Referenced by getProbAmp().
Definition at line 374 of file QuEST_common.c.
-Definition at line 364 of file QuEST_common.c.
+References generateMeasurementOutcome(), qreal, statevec_calcProbOfOutcome(), and statevec_collapseToKnownProbOutcome().
+References generateMeasurementOutcome(), qreal, statevec_calcProbOfOutcome(), and statevec_collapseToKnownProbOutcome().
-Referenced by measure(), and measureWithStats().
+Referenced by measure(), and measureWithStats().
Definition at line 463 of file QuEST_common.c.
-References getQubitBitMask(), ComplexMatrix2::imag, PAULI_I, PAULI_X, PAULI_Y, qreal, ComplexMatrix2::real, statevec_multiControlledMultiRotateZ(), and statevec_multiControlledUnitary().
- -Referenced by multiControlledMultiRotatePauli().
+Definition at line 453 of file QuEST_common.c.
+References getQubitBitMask(), ComplexMatrix2::imag, PAULI_I, PAULI_X, PAULI_Y, qreal, ComplexMatrix2::real, statevec_multiControlledMultiRotateZ(), and statevec_multiControlledUnitary().
+ +Referenced by multiControlledMultiRotatePauli().
@@ -3042,16 +3059,16 @@Definition at line 583 of file QuEST_common.c.
-Definition at line 573 of file QuEST_common.c.
+References statevec_multiControlledMultiQubitUnitary().
+References statevec_multiControlledMultiQubitUnitary().
-Referenced by applyMatrixN(), and multiQubitUnitary().
+Referenced by applyMatrixN(), and multiQubitUnitary().
References getQubitBitMask(), Complex::imag, PAULI_I, PAULI_X, PAULI_Y, qreal, Complex::real, statevec_compactUnitary(), and statevec_multiRotateZ().
- -Referenced by applyExponentiatedPauliHamil(), and multiRotatePauli().
+Definition at line 414 of file QuEST_common.c.
+References getQubitBitMask(), Complex::imag, PAULI_I, PAULI_X, PAULI_Y, qreal, Complex::real, statevec_compactUnitary(), and statevec_multiRotateZ().
+ +Referenced by applyExponentiatedPauliHamil(), and multiRotatePauli().
@@ -3176,17 +3193,17 @@Definition at line 271 of file QuEST_common.c.
-Definition at line 261 of file QuEST_common.c.
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
-Referenced by pauliZ(), and statevec_applyPauliProd().
+Referenced by pauliZ(), and statevec_applyPauliProd().
Definition at line 264 of file QuEST_common.c.
-Definition at line 254 of file QuEST_common.c.
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
-Referenced by phaseShift().
+Referenced by phaseShift().
Definition at line 324 of file QuEST_common.c.
-Definition at line 314 of file QuEST_common.c.
+References getComplexPairFromRotation(), and statevec_compactUnitary().
+References getComplexPairFromRotation(), and statevec_compactUnitary().
-Referenced by rotateAroundAxis(), statevec_rotateX(), statevec_rotateY(), and statevec_rotateZ().
+Referenced by rotateAroundAxis(), statevec_rotateX(), statevec_rotateY(), and statevec_rotateZ().
Definition at line 331 of file QuEST_common.c.
-Definition at line 321 of file QuEST_common.c.
+References getComplexPairFromRotation(), Complex::imag, and statevec_compactUnitary().
+References getComplexPairFromRotation(), Complex::imag, and statevec_compactUnitary().
-Referenced by rotateAroundAxis().
+Referenced by rotateAroundAxis().
Definition at line 306 of file QuEST_common.c.
-Definition at line 296 of file QuEST_common.c.
+References statevec_rotateAroundAxis().
+References statevec_rotateAroundAxis().
-Referenced by rotateX().
+Referenced by rotateX().
Definition at line 312 of file QuEST_common.c.
-Definition at line 302 of file QuEST_common.c.
+References statevec_rotateAroundAxis().
+References statevec_rotateAroundAxis().
-Referenced by rotateY().
+Referenced by rotateY().
Definition at line 318 of file QuEST_common.c.
-Definition at line 308 of file QuEST_common.c.
+References statevec_rotateAroundAxis().
+References statevec_rotateAroundAxis().
-Referenced by rotateZ().
+Referenced by rotateZ().
Definition at line 278 of file QuEST_common.c.
-Definition at line 268 of file QuEST_common.c.
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
-Referenced by sGate().
+Referenced by sGate().
Definition at line 292 of file QuEST_common.c.
-Definition at line 282 of file QuEST_common.c.
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
-Referenced by sGate().
+Referenced by sGate().
Definition at line 397 of file QuEST_common.c.
-Definition at line 387 of file QuEST_common.c.
+References ComplexMatrix4::imag, ComplexMatrix4::real, and statevec_twoQubitUnitary().
+References ComplexMatrix4::imag, ComplexMatrix4::real, and statevec_twoQubitUnitary().
-Referenced by sqrtSwapGate().
+Referenced by sqrtSwapGate().
Definition at line 410 of file QuEST_common.c.
-Definition at line 400 of file QuEST_common.c.
+References ComplexMatrix4::imag, ComplexMatrix4::real, and statevec_twoQubitUnitary().
+References ComplexMatrix4::imag, ComplexMatrix4::real, and statevec_twoQubitUnitary().
-Referenced by sqrtSwapGate().
+Referenced by sqrtSwapGate().
Definition at line 285 of file QuEST_common.c.
-Definition at line 275 of file QuEST_common.c.
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
-Referenced by tGate().
+Referenced by tGate().
Definition at line 299 of file QuEST_common.c.
-Definition at line 289 of file QuEST_common.c.
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
+References Complex::imag, Complex::real, and statevec_phaseShiftByTerm().
-Referenced by tGate().
+Referenced by tGate().
Definition at line 571 of file QuEST_common.c.
-Definition at line 561 of file QuEST_common.c.
+References statevec_multiControlledTwoQubitUnitary().
+References statevec_multiControlledTwoQubitUnitary().
-Referenced by applyMatrix4(), statevec_sqrtSwapGate(), statevec_sqrtSwapGateConj(), and twoQubitUnitary().
+Referenced by applyMatrix4(), statevec_sqrtSwapGate(), statevec_sqrtSwapGateConj(), and twoQubitUnitary().
Definition at line 1335 of file QuEST_cpu.c.
-Definition at line 1346 of file QuEST_cpu.c.
+References DiagonalOp::chunkId, DiagonalOp::imag, DiagonalOp::numChunks, DiagonalOp::numElemsPerChunk, DiagonalOp::numQubits, QuESTEnv::numRanks, qreal, QuESTEnv::rank, and DiagonalOp::real.
+References DiagonalOp::chunkId, DiagonalOp::imag, DiagonalOp::numChunks, DiagonalOp::numElemsPerChunk, DiagonalOp::numQubits, QuESTEnv::numRanks, qreal, QuESTEnv::rank, and DiagonalOp::real.
Definition at line 1357 of file QuEST_cpu.c.
-Definition at line 1368 of file QuEST_cpu.c.
+References DiagonalOp::imag, and DiagonalOp::real.
@@ -404,68 +404,68 @@Definition at line 1366 of file QuEST_cpu.c.
-Definition at line 1377 of file QuEST_cpu.c.
+References DiagonalOp::chunkId, extractBit(), DiagonalOp::imag, DiagonalOp::numElemsPerChunk, PauliHamil::numQubits, PauliHamil::numSumTerms, PAULI_Z, PauliHamil::pauliCodes, qreal, DiagonalOp::real, and PauliHamil::termCoeffs.
@@ -515,46 +515,46 @@Definition at line 4188 of file QuEST_cpu.c.
-Definition at line 4228 of file QuEST_cpu.c.
+References DiagonalOp::chunkId, DiagonalOp::imag, DiagonalOp::numElemsPerChunk, qreal, and DiagonalOp::real.
@@ -576,10 +576,10 @@Definition at line 1362 of file QuEST_cpu.c.
-Definition at line 1373 of file QuEST_cpu.c.
+Definition at line 754 of file QuEST_cpu.c.
-Definition at line 760 of file QuEST_cpu.c.
+References normaliseSomeAmps(), and zeroSomeAmps().
+References normaliseSomeAmps(), and zeroSomeAmps().
-Referenced by densmatr_collapseToKnownProbOutcome().
+Referenced by densmatr_collapseToKnownProbOutcome().
Definition at line 4042 of file QuEST_cpu.c.
-Definition at line 4082 of file QuEST_cpu.c.
+References Qureg::numAmpsPerChunk, DiagonalOp::numQubits, Qureg::pairStateVec, qreal, and Qureg::stateVec.
-Referenced by densmatr_applyDiagonalOp().
+Referenced by densmatr_applyDiagonalOp().
Definition at line 4127 of file QuEST_cpu.c.
-Definition at line 4167 of file QuEST_cpu.c.
+References Qureg::chunkId, Complex::imag, DiagonalOp::imag, Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, Complex::real, DiagonalOp::real, and Qureg::stateVec.
-Referenced by densmatr_calcExpecDiagonalOp().
+Referenced by densmatr_calcExpecDiagonalOp().
Definition at line 1001 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numAmpsTotal, Qureg::pairStateVec, qreal, and Qureg::stateVec.
-Referenced by densmatr_calcFidelity().
+Referenced by densmatr_calcFidelity().
Definition at line 934 of file QuEST_cpu.c.
+References Qureg::numAmpsPerChunk, qreal, and Qureg::stateVec.
-Referenced by densmatr_calcHilbertSchmidtDistance().
+Referenced by densmatr_calcHilbertSchmidtDistance().
Definition at line 969 of file QuEST_cpu.c.
+References Qureg::numAmpsPerChunk, qreal, and Qureg::stateVec.
-Referenced by densmatr_calcInnerProduct().
+Referenced by densmatr_calcInnerProduct().
Definition at line 3576 of file QuEST_cpu.c.
-Definition at line 3616 of file QuEST_cpu.c.
+References Qureg::chunkId, extractBit(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
-Referenced by densmatr_calcProbOfAllOutcomes().
+Referenced by densmatr_calcProbOfAllOutcomes().
Definition at line 861 of file QuEST_cpu.c.
-Definition at line 872 of file QuEST_cpu.c.
+References Qureg::numAmpsPerChunk, qreal, and Qureg::stateVec.
-Referenced by densmatr_calcPurity().
+Referenced by densmatr_calcPurity().
Definition at line 791 of file QuEST_cpu.c.
+References alternateNormZeroingSomeAmpBlocks(), Qureg::chunkId, extractBit(), normaliseSomeAmps(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, and zeroSomeAmps().
+References alternateNormZeroingSomeAmpBlocks(), Qureg::chunkId, extractBit(), normaliseSomeAmps(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, and zeroSomeAmps().
Definition at line 3363 of file QuEST_cpu.c.
-Definition at line 3402 of file QuEST_cpu.c.
+References Qureg::chunkId, extractBit(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
-Referenced by densmatr_calcProbOfOutcome().
+Referenced by densmatr_calcProbOfOutcome().
Definition at line 1115 of file QuEST_cpu.c.
-Definition at line 1126 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
@@ -1540,35 +1545,35 @@Definition at line 1154 of file QuEST_cpu.c.
-Definition at line 1165 of file QuEST_cpu.c.
+References Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
@@ -1600,63 +1605,63 @@Definition at line 1184 of file QuEST_cpu.c.
-Definition at line 1195 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numAmpsTotal, Qureg::pairStateVec, qreal, and Qureg::stateVec.
-Referenced by densmatr_initPureState().
+Referenced by densmatr_initPureState().
Definition at line 300 of file QuEST_cpu.c.
-Definition at line 306 of file QuEST_cpu.c.
+References Qureg::chunkId, densmatr_oneQubitDegradeOffDiagonal(), extractBit(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, Qureg::pairStateVec, qreal, and Qureg::stateVec.
+References Qureg::chunkId, densmatr_oneQubitDegradeOffDiagonal(), extractBit(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, Qureg::pairStateVec, qreal, and Qureg::stateVec.
-Referenced by densmatr_mixDamping().
+Referenced by densmatr_mixDamping().
Definition at line 174 of file QuEST_cpu.c.
-Definition at line 180 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
-Referenced by densmatr_mixDamping().
+Referenced by densmatr_mixDamping().
Definition at line 890 of file QuEST_cpu.c.
-Definition at line 901 of file QuEST_cpu.c.
+References Qureg::numAmpsPerChunk, qreal, and Qureg::stateVec.
@@ -1976,15 +1981,15 @@Definition at line 79 of file QuEST_cpu.c.
-Definition at line 85 of file QuEST_cpu.c.
+References densmatr_oneQubitDegradeOffDiagonal(), and qreal.
+References densmatr_oneQubitDegradeOffDiagonal(), and qreal.
-Referenced by densmatr_mixDepolarisingDistributed().
+Referenced by densmatr_mixDepolarisingDistributed().
Definition at line 224 of file QuEST_cpu.c.
-Definition at line 230 of file QuEST_cpu.c.
+References Qureg::chunkId, densmatr_mixDephasing(), extractBit(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, Qureg::pairStateVec, and Qureg::stateVec.
+References Qureg::chunkId, densmatr_mixDephasing(), extractBit(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, Qureg::pairStateVec, and Qureg::stateVec.
-Referenced by densmatr_mixDepolarising().
+Referenced by densmatr_mixDepolarising().
Definition at line 125 of file QuEST_cpu.c.
-Definition at line 131 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
-Referenced by densmatr_mixDepolarising().
+Referenced by densmatr_mixDepolarising().
Definition at line 84 of file QuEST_cpu.c.
-Definition at line 90 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
@@ -2319,100 +2324,100 @@Definition at line 541 of file QuEST_cpu.c.
-Definition at line 547 of file QuEST_cpu.c.
+References Qureg::chunkId, extractBit(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, Qureg::pairStateVec, and Qureg::stateVec.
-Referenced by densmatr_mixTwoQubitDepolarising().
+Referenced by densmatr_mixTwoQubitDepolarising().
Definition at line 387 of file QuEST_cpu.c.
-Definition at line 393 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
-Referenced by densmatr_mixTwoQubitDepolarising().
+Referenced by densmatr_mixTwoQubitDepolarising().
Definition at line 488 of file QuEST_cpu.c.
-Definition at line 494 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, qreal, and Qureg::stateVec.
-Referenced by densmatr_mixTwoQubitDepolarising().
+Referenced by densmatr_mixTwoQubitDepolarising().
Definition at line 632 of file QuEST_cpu.c.
-Definition at line 638 of file QuEST_cpu.c.
+References Qureg::chunkId, extractBit(), Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, Qureg::pairStateVec, and Qureg::stateVec.
-Referenced by densmatr_mixTwoQubitDepolarising().
+Referenced by densmatr_mixTwoQubitDepolarising().
Definition at line 48 of file QuEST_cpu.c.
-Definition at line 54 of file QuEST_cpu.c.
+References Qureg::chunkId, Qureg::numAmpsPerChunk, Qureg::numQubitsRepresented, and Qureg::stateVec.
-Referenced by densmatr_mixDampingDistributed(), and densmatr_mixDephasing().
+Referenced by densmatr_mixDampingDistributed(), and densmatr_mixDephasing().
Definition at line 3268 of file QuEST_cpu.c.
-Definition at line 3307 of file QuEST_cpu.c.
+Referenced by statevec_multiControlledMultiRotateZ(), and statevec_multiRotateZ().
+Referenced by statevec_multiControlledMultiRotateZ(), and statevec_multiRotateZ().
Definition at line 744 of file QuEST_cpu.c.
-Definition at line 750 of file QuEST_cpu.c.
+References Qureg::stateVec.
-Referenced by alternateNormZeroingSomeAmpBlocks(), and densmatr_collapseToKnownProbOutcome().
+Referenced by alternateNormZeroingSomeAmpBlocks(), and densmatr_collapseToKnownProbOutcome().
Definition at line 1897 of file QuEST_cpu.c.
-Definition at line 1908 of file QuEST_cpu.c.
+ -Referenced by statevec_multiControlledMultiQubitUnitaryLocal().
+Referenced by statevec_multiControlledMultiQubitUnitaryLocal().
Definition at line 4007 of file QuEST_cpu.c.
-Definition at line 4047 of file QuEST_cpu.c.
+References DiagonalOp::imag, Qureg::numAmpsPerChunk, qreal, DiagonalOp::real, and Qureg::stateVec.
@@ -3159,102 +3164,102 @@Definition at line 4305 of file QuEST_cpu.c.
-Definition at line 4345 of file QuEST_cpu.c.
+References Qureg::chunkId, extractBit(), MAX_NUM_REGS_APPLY_ARBITRARY_PHASE, Qureg::numAmpsPerChunk, qreal, Qureg::stateVec, TWOS_COMPLEMENT, and UNSIGNED.
@@ -3346,160 +3351,160 @@