MCPcopy Create free account
hub / github.com/QuEST-Kit/QuEST / createFullStateDiagMatrFromPauliStrSum

Function createFullStateDiagMatrFromPauliStrSum

quest/src/api/matrices.cpp:651–664  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

649
650
651extern "C" FullStateDiagMatr createFullStateDiagMatrFromPauliStrSum(PauliStrSum in) {
652 validate_pauliStrSumFields(in, __func__);
653
654 // ensure createFullStateDiagMatr() below succeeds (so if not, that thrower name is correct)
655 int numQubits = 1 + paulis_getIndOfLefmostNonIdentityPauli(in);
656 validate_newFullStateDiagMatrParams(numQubits, modeflag::USE_AUTO, modeflag::USE_AUTO, modeflag::USE_AUTO, __func__);
657
658 // permit 'in' to be non-Hermitian since it does not determine 'out' unitarity
659
660 FullStateDiagMatr out = createFullStateDiagMatr(numQubits);
661 localiser_fullstatediagmatr_setElemsToPauliStrSum(out, in);
662 markMatrixAsSynced(out);
663 return out;
664}
665
666
667extern "C" void setDiagMatrFromMultiVarFunc(DiagMatr out, qcomp (*callbackFunc)(qindex*), int* numQubitsPerVar, int numVars, int areSigned) {

Callers

nothing calls this directly

Tested by

no test coverage detected