QuEST_validation.h
Go to the documentation of this file.
1 // Distributed under MIT licence. See https://github.com/QuEST-Kit/QuEST/blob/master/LICENCE.txt for details
38 void validateMultiTargets(Qureg qurge, int* targetQubits, const int numTargetQubits, const char* caller);
40 void validateMultiControls(Qureg qureg, int* controlQubits, const int numControlQubits, const char* caller);
42 void validateMultiControlsTarget(Qureg qureg, int* controlQubits, const int numControlQubits, const int targetQubit, const char* caller);
44 void validateMultiControlsMultiTargets(Qureg qureg, int* controlQubits, const int numControlQubits, int* targetQubits, const int numTargetQubits, const char* caller);
52 void validateMultiQubitUnitaryMatrix(Qureg qureg, ComplexMatrixN u, int numTargs, const char* caller);
74 void validateNumAmps(Qureg qureg, long long int startInd, long long int numAmps, const char* caller);
100 void validateTwoQubitKrausMap(Qureg qureg, ComplexMatrix4* ops, int numOps, const char* caller);
102 void validateMultiQubitKrausMap(Qureg qureg, int numTargs, ComplexMatrixN* ops, int numOps, const char* caller);
void validateOneQubitDephaseProb(qreal prob, const char *caller)
Definition: QuEST_validation.c:462
void validateNumPauliSumTerms(int numTerms, const char *caller)
Definition: QuEST_validation.c:507
void validateMatchingQuregDims(Qureg qureg1, Qureg qureg2, const char *caller)
Definition: QuEST_validation.c:434
void validateMultiTargets(Qureg qurge, int *targetQubits, const int numTargetQubits, const char *caller)
Definition: QuEST_validation.c:335
void validateAmpIndex(Qureg qureg, long long int ampInd, const char *caller)
Definition: QuEST_validation.c:296
void validateSecondQuregStateVec(Qureg qureg2, const char *caller)
Definition: QuEST_validation.c:442
void validateTwoQubitDephaseProb(qreal prob, const char *caller)
Definition: QuEST_validation.c:467
void validateControlTarget(Qureg qureg, int controlQubit, int targetQubit, const char *caller)
Definition: QuEST_validation.c:315
void validateControlState(int *controlState, const int numControlQubits, const char *caller)
Definition: QuEST_validation.c:375
void validateOneQubitDepolProb(qreal prob, const char *caller)
Definition: QuEST_validation.c:472
void validateStateIndex(Qureg qureg, long long int stateInd, const char *caller)
Definition: QuEST_validation.c:291
void validateNumQubitsInMatrix(int numQubits, const char *caller)
Definition: QuEST_validation.c:287
void validateNumRanks(int numRanks, const char *caller)
Definition: QuEST_validation.c:261
void validateStateVecQureg(Qureg qureg, const char *caller)
Definition: QuEST_validation.c:418
void validateMultiQubitMatrixFitsInNode(Qureg qureg, int numTargets, const char *caller)
Definition: QuEST_validation.c:380
void validateOneQubitKrausMap(Qureg qureg, ComplexMatrix2 *ops, int numOps, const char *caller)
Definition: QuEST_validation.c:511
void validateUniqueTargets(Qureg qureg, int qubit1, int qubit2, const char *caller)
Definition: QuEST_validation.c:321
void validateOneQubitPauliProbs(qreal probX, qreal probY, qreal probZ, const char *caller)
Definition: QuEST_validation.c:487
void validateMultiQubits(Qureg qureg, int *qubits, const int numQubits, const char *caller)
Definition: QuEST_validation.c:351
void validateNumQubitsInQureg(int numQubits, int numRanks, const char *caller)
Definition: QuEST_validation.c:275
void validateMultiQubitUnitaryMatrix(Qureg qureg, ComplexMatrixN u, int numTargs, const char *caller)
Definition: QuEST_validation.c:403
#define qreal
void validateMultiQubitKrausMap(Qureg qureg, int numTargs, ComplexMatrixN *ops, int numOps, const char *caller)
Definition: QuEST_validation.c:535
void validateMeasurementProb(qreal prob, const char *caller)
Definition: QuEST_validation.c:430
void validatePauliCodes(enum pauliOpType *pauliCodes, int numPauliCodes, const char *caller)
Definition: QuEST_validation.c:498
void validateMultiControlsMultiTargets(Qureg qureg, int *controlQubits, const int numControlQubits, int *targetQubits, const int numTargetQubits, const char *caller)
Definition: QuEST_validation.c:366
void validateUnitaryComplexPair(Complex alpha, Complex beta, const char *caller)
Definition: QuEST_validation.c:410
void validateFileOpened(int opened, const char *caller)
Definition: QuEST_validation.c:446
void validateMatrixInit(ComplexMatrixN matr, const char *caller)
Definition: QuEST_validation.c:393
void validateTarget(Qureg qureg, int targetQubit, const char *caller)
Definition: QuEST_validation.c:307
void validateOutcome(int outcome, const char *caller)
Definition: QuEST_validation.c:426
void validateMultiControls(Qureg qureg, int *controlQubits, const int numControlQubits, const char *caller)
Definition: QuEST_validation.c:343
void validateTwoQubitKrausMap(Qureg qureg, ComplexMatrix4 *ops, int numOps, const char *caller)
Definition: QuEST_validation.c:523
void validateTwoQubitDepolProb(qreal prob, const char *caller)
Definition: QuEST_validation.c:482
void validateTwoQubitUnitaryMatrix(Qureg qureg, ComplexMatrix4 u, const char *caller)
Definition: QuEST_validation.c:388
void validateNumAmps(Qureg qureg, long long int startInd, long long int numAmps, const char *caller)
Definition: QuEST_validation.c:301
void validateMultiControlsTarget(Qureg qureg, int *controlQubits, const int numControlQubits, const int targetQubit, const char *caller)
Definition: QuEST_validation.c:359
void validateDensityMatrQureg(Qureg qureg, const char *caller)
Definition: QuEST_validation.c:422
void validateMatchingQuregTypes(Qureg qureg1, Qureg qureg2, const char *caller)
Definition: QuEST_validation.c:438
void validateOneQubitUnitaryMatrix(ComplexMatrix2 u, const char *caller)
Definition: QuEST_validation.c:384
void validateOneQubitDampingProb(qreal prob, const char *caller)
Definition: QuEST_validation.c:477
void validateVector(Vector vector, const char *caller)
Definition: QuEST_validation.c:414
void validateNormProbs(qreal prob1, qreal prob2, const char *caller)
Definition: QuEST_validation.c:454