38 #include <MboExport.h>
MBO_EXPORT void mboNumOpDiagonal(MboNumOp op, MboGlobInd rmin, MboGlobInd rmax, struct MboAmplitude *diag)
Get diagonal entries from a numerical operator.
struct MboProdSpace_t * MboProdSpace
Type for describing tensor product spaces.
Definition: MboProdSpace.h:46
MBO_EXPORT MBO_STATUS mboNumOpMatVec(struct MboAmplitude alpha, MboNumOp a, struct MboAmplitude *x, struct MboAmplitude beta, struct MboAmplitude *y)
MBO_EXPORT MBO_STATUS mboNumOpSparseMatrix(MboNumOp op, MboGlobInd rmin, MboGlobInd rmax, MboGlobInd *i, MboGlobInd *j, struct MboAmplitude *a)
Create a sparse matrix representation for a numerical operator.
Error codes used by the MBO library.
MBO_EXPORT MboProdSpace mboNumOpGetSpace(MboNumOp op)
Returns a (non-owning) pointer to the space of an operator.
Minimal complex numbers.
Definition: MboAmplitude.h:37
MBO_STATUS
Error codes used by the MBO library.
Definition: MboErrors.h:33
MBO_EXPORT void mboNumOpDeleteDiagonal(MboNumOp op)
Erase the diagonal from an operator.
MBO_EXPORT void mboNumOpRowOffsets(MboNumOp op, MboGlobInd rmin, MboGlobInd rmax, MboGlobInd *i)
Compute row offsets of sparse matrix.
MBO_EXPORT double mboNumOpFlops(MboNumOp a)
Returns an estimate for the number of floating point operations in a MatVec.
long long MboGlobInd
Global indices.
Definition: MboIndices.h:34
MBO_EXPORT void mboNumOpDestroy(MboNumOp *op)
Deallocate all resources associated with a MboNumOp.
MBO_EXPORT void mboNumOpDenseMatrix(MboNumOp a, struct MboAmplitude *mat)
Dense matrix representation of operator.
MBO_EXPORT MBO_STATUS mboNumOpCompile(MboTensorOp op, MboNumOp *numOp)
Build a numerical operator from a tensor operator.
struct MboNumOp_t * MboNumOp
Data type for numerical operators.
Definition: MboNumOp.h:54
struct MboTensorOp_t * MboTensorOp
Definition: MboTensorOp.h:50