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

Function setFullStateDiagMatrFromMultiVarFunc

quest/src/api/matrices.cpp:687–698  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

685
686
687extern "C" void setFullStateDiagMatrFromMultiVarFunc(FullStateDiagMatr out, qcomp (*callbackFunc)(qindex*), int* numQubitsPerVar, int numVars, int areSigned) {
688 validate_matrixFields(out, __func__);
689 validate_multiVarFuncQubits(out.numQubits, numQubitsPerVar, numVars, __func__);
690 validate_funcVarSignedFlag(areSigned, __func__);
691
692 // we assume callbackFunc is thread-safe (!!!!) and possibly use multithreading, but never
693 // GPU acceleration, since we cannot invoke user callback functions from GPU kernels
694 cpu_fullstatediagmatr_setElemsFromMultiVarFunc(out, callbackFunc, numQubitsPerVar, numVars, areSigned);
695
696 // overwrite all GPU elems
697 syncFullStateDiagMatr(out);
698}
699
700
701extern "C" void setDiagMatrFromMultiDimLists(DiagMatr out, void* lists, int* numQubitsPerDim, int numDims) {

Callers

nothing calls this directly

Tested by

no test coverage detected