|
| | KrylovSolver (MPI_Comm comm) |
| | Create a Krylov solver.
|
| | KrylovSolver (KSP ksp, bool inc_ref_count) |
| | Create solver wrapper of a PETSc KSP object.
|
|
| KrylovSolver (const KrylovSolver &solver)=delete |
|
| KrylovSolver (KrylovSolver &&solver) noexcept |
| | Move constructor.
|
|
| ~KrylovSolver () |
| | Destructor.
|
|
KrylovSolver & | operator= (const KrylovSolver &)=delete |
|
KrylovSolver & | operator= (KrylovSolver &&solver) noexcept |
| | Move assignment.
|
|
void | set_operator (const Mat A) |
| | Set operator (Mat).
|
|
void | set_operators (const Mat A, const Mat P) |
| | Set operator and preconditioner matrix (Mat).
|
| KSPConvergedReason | solve (Vec x, const Vec b, bool transpose=false) |
| | Solve linear system Ax = b (A^t x = b if transpose is true).
|
| void | set_options_prefix (std::string_view options_prefix) |
| std::string | get_options_prefix () const |
|
void | set_from_options () const |
| | Set options from PETSc options database.
|
|
KSP | ksp () const |
| | Return PETSc KSP pointer.
|
This class implements Krylov methods for linear systems of the form Ax = b. It is a wrapper for the Krylov solvers of PETSc.