|
ThunderEgg
1.0.0
|
Wraps a PETSc KSP solver for use use as a Solver. More...
#include <KSPSolver.h>


Public Member Functions | |
| KSPSolver () | |
| Construct a new MatWrapper object. More... | |
| KSPSolver< D > * | clone () const override |
| Clone this solver. More... | |
| void | setType (KSPType new_type) |
| int | solve (const Operator< D > &A, Vector< D > &x, const Vector< D > &b, const Operator< D > *Mr=nullptr, bool output=false, std::ostream &os=std::cout) const override |
| Perform an iterative solve. More... | |
Public Member Functions inherited from ThunderEgg::Iterative::Solver< D > | |
| virtual | ~Solver () |
| Destroy the Solver object. | |
Wraps a PETSc KSP solver for use use as a Solver.
|
inlineexplicit |
Construct a new MatWrapper object.
This object will not deallocate the PETSc Mat, you are responsible for deallocating it.
| A_in | the PETSc Mat to wrap |
|
inlineoverridevirtual |
Clone this solver.
Implements ThunderEgg::Iterative::Solver< D >.
|
inlineoverridevirtual |
Perform an iterative solve.
| A | the matrix |
| x | the initial LHS guess. |
| b | the RHS vector. |
| Mr | the right preconditioner. Set to nullptr if there is no right preconditioner. |
| output | print output to the provided stream |
| os | the stream to output to |
Implements ThunderEgg::Iterative::Solver< D >.