GEOS
|
This class creates and provides basic support for AztecOO, Amesos and ML libraries. More...
#include <TrilinosSolver.hpp>
Public Types | |
using | Base = LinearSolverBase< TrilinosInterface > |
Alias for base type. | |
Public Types inherited from geos::LinearSolverBase< TrilinosInterface > | |
using | Base = PreconditionerBase< TrilinosInterface > |
Alias for base type. | |
using | Vector = typename Base::Vector |
Alias for vector type. | |
using | Matrix = typename Base::Matrix |
Alias for matrix type. | |
Public Types inherited from geos::PreconditionerBase< TrilinosInterface > | |
using | Base = LinearOperator< typename LAI::ParallelVector > |
Alias for base type. | |
using | Vector = typename Base::Vector |
Alias for vector type. | |
using | Matrix = typename LAI::ParallelMatrix |
Alias for matrix type. | |
Public Types inherited from geos::LinearOperator< LAI::ParallelVector > | |
using | Vector = LAI::ParallelVector |
Alias for template parameter. | |
Public Member Functions | |
TrilinosSolver (LinearSolverParameters parameters) | |
Solver constructor, with parameter list reference. More... | |
virtual | ~TrilinosSolver () override |
Destructor. | |
virtual void | setup (EpetraMatrix const &mat) override |
Compute the preconditioner from a matrix. More... | |
virtual void | apply (EpetraVector const &src, EpetraVector &dst) const override |
Apply operator to a vector, dst = this(src) . More... | |
virtual void | solve (EpetraVector const &rhs, EpetraVector &sol) const override |
Solve preconditioned system. More... | |
Public Member Functions inherited from geos::LinearSolverBase< TrilinosInterface > | |
LinearSolverBase (LinearSolverParameters params) | |
Constructor. More... | |
virtual void | solve (Vector const &rhs, Vector &sol) const=0 |
Solve preconditioned system. More... | |
LinearSolverParameters const & | parameters () const |
LinearSolverResult const & | result () const |
Public Member Functions inherited from geos::PreconditionerBase< TrilinosInterface > | |
virtual void | setup (Matrix const &mat) |
Compute the preconditioner from a matrix. More... | |
virtual void | clear () |
Clean up the preconditioner setup. More... | |
virtual globalIndex | numGlobalRows () const override |
Get the number of global rows. More... | |
virtual globalIndex | numGlobalCols () const override |
Get the number of global columns. More... | |
virtual localIndex | numLocalRows () const override |
Get the number of local rows. More... | |
virtual localIndex | numLocalCols () const override |
Get the number of local columns. More... | |
virtual MPI_Comm | comm () const override |
Get the MPI communicator the matrix was created with. More... | |
bool | ready () const |
Chech if preconditioner is ready to use. More... | |
Matrix const & | matrix () const |
Access the matrix the preconditioner was computed from. More... | |
virtual bool | hasPreconditionerMatrix () const |
Check whether the preconditioner is available in matrix (explicit) form. More... | |
virtual Matrix const & | preconditionerMatrix () const |
Access the preconditioner in matrix form (whenever available). It must be overridden by the specific preconditioner. More... | |
Public Member Functions inherited from geos::LinearOperator< LAI::ParallelVector > | |
LinearOperator ()=default | |
Constructor. | |
virtual | ~LinearOperator ()=default |
Destructor. | |
virtual void | apply (Vector const &src, Vector &dst) const=0 |
Apply operator to a vector, dst = this(src) . More... | |
virtual void | residual (Vector const &x, Vector const &b, Vector &r) const |
Compute residual r = b - this(x) . More... | |
Additional Inherited Members | |
Protected Attributes inherited from geos::LinearSolverBase< TrilinosInterface > | |
LinearSolverParameters | m_params |
Parameters for the solver. | |
LinearSolverResult | m_result |
Result of most recent solve (status, timings) | |
This class creates and provides basic support for AztecOO, Amesos and ML libraries.
Definition at line 37 of file TrilinosSolver.hpp.
|
explicit |
Solver constructor, with parameter list reference.
[in] | parameters | structure containing linear solver parameters |
|
overridevirtual |
Apply operator to a vector, dst = this(src)
.
src | input vector |
dst | output vector |
src
and dst
cannot alias the same vector (some implementations may allow this).
|
overridevirtual |
Compute the preconditioner from a matrix.
mat | the matrix to precondition. |
|
overridevirtual |
Solve preconditioned system.
[in] | rhs | system right hand side. |
[in,out] | sol | system solution (input = initial guess, output = solution). |