|
| AMGSystemSolver (bool transpose, bool multigrid, bool debug) |
|
| SystemSolver (bool debug=false) |
|
| SystemSolver (bool flatten, bool transpose, bool debug) |
|
| SystemSolver (bool transpose, bool debug) |
|
| SystemSolver (const std::string &prefix, bool debug=false) |
|
| SystemSolver (const std::string &prefix, bool flatten, bool transpose, bool debug) |
|
| SystemSolver (const std::string &prefix, bool transpose, bool debug) |
|
virtual | ~SystemSolver () |
|
void | assembly (const Assembler &assembler) |
|
void | assembly (const Assembler &assembler, const SystemMatrixOrdering &reordering) |
|
void | assembly (const SparseMatrix &matrix) |
|
void | assembly (const SparseMatrix &matrix, const SystemMatrixOrdering &reordering) |
|
virtual void | clear () |
|
virtual void | clearWorkspace () |
|
void | dumpSystem (const std::string &header, const std::string &directory, const std::string &prefix="") const |
|
void | enableForceConsistency (bool enable) |
|
virtual void | exportMatrix (const std::string &filePath, FileFormat exportFormat=FILE_BINARY) const |
|
virtual void | exportRHS (const std::string &filePath, FileFormat exportFormat=FILE_BINARY) const |
|
virtual void | exportSolution (const std::string &filePath, FileFormat exportFormat=FILE_BINARY) const |
|
virtual int | getBlockSize () const |
|
long | getColCount () const |
|
long | getColElementCount () const |
|
long | getColGlobalCount () const |
|
long | getColGlobalElementCount () const |
|
KSPOptions & | getKSPOptions () |
|
const KSPOptions & | getKSPOptions () const |
|
const KSPStatus & | getKSPStatus () const |
|
double * | getRHSRawPtr () |
|
const double * | getRHSRawPtr () const |
|
const double * | getRHSRawReadPtr () const |
|
long | getRowCount () const |
|
long | getRowElementCount () const |
|
long | getRowGlobalCount () const |
|
long | getRowGlobalElementCount () const |
|
double * | getSolutionRawPtr () |
|
const double * | getSolutionRawPtr () const |
|
const double * | getSolutionRawReadPtr () const |
|
bool | getTranspose () const |
|
virtual void | importMatrix (const std::string &filePath) |
|
virtual void | importRHS (const std::string &filePath) |
|
virtual void | importSolution (const std::string &filePath) |
|
bool | isAssembled () const |
|
bool | isForceConsistencyEnabled () const |
|
bool | isPartitioned () const |
|
bool | isSetUp () const |
|
void | restoreRHSRawPtr (double *raw_rhs) |
|
void | restoreRHSRawReadPtr (const double *raw_rhs) const |
|
void | restoreSolutionRawPtr (double *raw_solution) |
|
void | restoreSolutionRawReadPtr (const double *raw_solution) const |
|
void | restoreSystem (MPI_Comm communicator, bool redistribute, const std::string &directory, const std::string &prefix="") |
|
virtual void | setNullSpace () |
|
void | setTranspose (bool transpose) |
|
void | setUp () |
|
void | solve () |
|
void | solve (const std::vector< double > &rhs, std::vector< double > *solution) |
|
void | unsetNullSpace () |
|
void | update (const Assembler &assembler) |
|
void | update (const SparseMatrix &elements) |
|
void | update (long nRows, const long *rows, const Assembler &assembler) |
|
void | update (long nRows, const long *rows, const SparseMatrix &elements) |
|
|
void | setupPreconditioner (PC pc, const KSPOptions &options) const override |
|
template<typename DerivedSystemSolver > |
void | assembly (const typename DerivedSystemSolver::Assembler &assembler, const SystemMatrixOrdering &reordering) |
|
void | clearReordering () |
|
virtual void | createKSP () |
|
void | createMatrix (int rowBlockSize, int colBlockSize, int nNestRows, int nNestCols, Mat *subMatrices, Mat *matrix) const |
|
void | createMatrix (int rowBlockSize, int colBlockSize, Mat *matrix) const |
|
void | createVector (int blockSize, int nestSize, Vec *subVectors, Vec *vector) const |
|
void | createVector (int blockSize, Vec *vector) const |
|
virtual void | destroyKSP () |
|
virtual void | destroyKSPOptions () |
|
virtual void | destroyKSPStatus () |
|
void | destroyMatrix (Mat *matrix) const |
|
void | destroyVector (Vec *vector) const |
|
virtual void | dumpInfo (std::ostream &stream) const |
|
void | dumpMatrix (Mat matrix, const std::string &directory, const std::string &name) const |
|
void | dumpVector (Vec vector, const std::string &directory, const std::string &name) const |
|
void | dumpVector (Vec vector, VectorSide side, const std::string &directory, const std::string &name) const |
|
void | exportMatrix (Mat matrix, const std::string &filePath, FileFormat fileFormat) const |
|
void | exportVector (Vec vector, const std::string &filePath, FileFormat fileFormat) const |
|
void | exportVector (Vec vector, std::vector< double > *data) const |
|
virtual void | fillKSPStatus () |
|
virtual void | fillKSPStatus (KSP ksp, KSPStatus *status) const |
|
void | fillMatrix (Mat matrix, const std::string &filePath) const |
|
void | fillVector (Vec vector, const std::string &filePath) const |
|
void | fillVector (Vec vector, const std::vector< double > &data) const |
|
virtual void | finalizeKSP () |
|
const MPI_Comm & | getCommunicator () const |
|
std::string | getDataFilePath (const std::string &directory, const std::string &name) const |
|
virtual int | getDumpVersion () const |
|
std::string | getFilePath (const std::string &directory, const std::string &name) const |
|
std::string | getInfoFilePath (const std::string &directory, const std::string &name) const |
|
virtual void | initializeKSPOptions () |
|
virtual void | initializeKSPStatus () |
|
void | matrixAssembly (const Assembler &assembler) |
|
virtual void | matrixDestroy () |
|
virtual void | matrixDump (std::ostream &systemStream, const std::string &directory, const std::string &prefix) const |
|
virtual void | matrixFill (const std::string &filePath) |
|
virtual void | matrixRestore (std::istream &systemStream, const std::string &directory, const std::string &prefix, bool redistribute) |
|
void | matrixUpdate (long nRows, const long *rows, const Assembler &assembler) |
|
virtual void | postKrylovSetupActions () |
|
virtual void | postKSPSolveActions () |
|
virtual void | postPreconditionerSetupActions () |
|
virtual void | preKrylovSetupActions () |
|
virtual void | preKSPSolveActions () |
|
virtual void | prepareKSP () |
|
virtual void | prePreconditionerSetupActions () |
|
void | reorderVector (Vec vector, IS permutations, bool invert) const |
|
virtual void | resetKSPOptions (KSPOptions *options) const |
|
virtual void | resetKSPStatus () |
|
virtual void | resetKSPStatus (KSPStatus *status) const |
|
virtual void | restoreInfo (std::istream &stream) |
|
void | restoreMatrix (const std::string &directory, const std::string &name, bool redistribute, Mat *matrix) const |
|
void | restoreVector (const std::string &directory, const std::string &name, bool redistribute, Vec *vector) const |
|
void | restoreVector (const std::string &directory, const std::string &name, Mat matrix, VectorSide side, Vec *vector) const |
|
void | restoreVector (const std::string &directory, const std::string &name, std::size_t localSize, std::size_t globalSize, Vec *vector) const |
|
void | setReordering (long nRows, long nCols, const SystemMatrixOrdering &reordering) |
|
virtual void | setupKrylov () |
|
virtual void | setupKrylov (KSP ksp, const KSPOptions &options) const |
|
virtual void | setupPreconditioner () |
|
virtual void | solveKSP () |
|
template<typename DerivedSystemSolver > |
void | update (long nRows, const long *rows, const typename DerivedSystemSolver::Assembler &assembler) |
|
virtual void | vectorsCreate () |
|
virtual void | vectorsDestroy () |
|
virtual void | vectorsDump (std::ostream &systemStream, const std::string &directory, const std::string &prefix) const |
|
virtual void | vectorsFill (const std::string &rhsFilePath, const std::string &solutionFilePath) |
|
virtual void | vectorsFill (const std::vector< double > &rhs, const std::vector< double > &solution) |
|
virtual void | vectorsReorder (bool invert) |
|
virtual void | vectorsRestore (std::istream &systemStream, const std::string &directory, const std::string &prefix) |
|
The class AMGSystemSolver is derived form SystemSolver and it allows to solve the linear system using PETSc GAMG preconditioner. Only non-block matrices can be solved using GAMG.
- Examples
- LA_example_00001.cpp.
Definition at line 73 of file LA_example_00001.cpp.