23 #ifndef COM_DAFER45_TBTK_LU_SOLVER 24 #define COM_DAFER45_TBTK_LU_SOLVER 32 #include "slu_zdefs.h" 42 enum class DataType {None, Double, ComplexDouble};
92 int *columnPermutations;
95 SuperLUStat_t *statistics;
101 void allocatePermutationMatrices(
102 unsigned int numRows,
103 unsigned int numColumns
107 void initStatistics();
110 void allocateLUMatrices();
113 void initOptionsAndPermutationMatrices(
114 superlu_options_t &options,
119 void performLUFactorization(SuperMatrix &matrix);
122 void checkSolveAssert(
unsigned int numRows);
125 void checkXgstrfErrors(
127 std::string functionName,
132 void checkXgstrsErrors(
int info, std::string functionName);
136 return matrixDataType;
void setMatrix(const SparseMatrix< double > &sparseMatrix)
Definition: SparseMatrix.h:35
Base class for classes that can communicate their status during execution.
DataType getMatrixDataType() const
Definition: LUSolver.h:135
Solves Mx = b for x, where M is a SparseMatrix.
Definition: LUSolver.h:37
Base class for classes that can communicate their status during execution.
Definition: Communicator.h:56
void solve(Matrix< double > &b)
DataType
Definition: LUSolver.h:42