Template Numerical Library version\ main:bb09b17
|
Wrapper for Hypre's preconditioner that is intended for matrices that are triangular in some ordering. More...
#include <TNL/Solvers/Linear/Hypre.h>
Public Member Functions | |
HYPRE_PtrToParSolverFcn | setupFcn () const override |
Hypre's internal setup function. | |
HYPRE_PtrToParSolverFcn | solveFcn () const override |
Hypre's internal solve function. | |
Public Member Functions inherited from TNL::Solvers::Linear::HypreSolver | |
HypreSolver (const Matrices::HypreParCSRMatrix &A) | |
virtual | operator HYPRE_Solver () const |
Type-cast to HYPRE_Solver. | |
void | setErrorMode (ErrorMode err_mode) const |
Set the behavior for treating Hypre errors, see the ErrorMode enum. The default mode in the base class is ABORT_HYPRE_ERRORS. | |
virtual void | setMatrix (const Matrices::HypreParCSRMatrix &op, bool reuse_setup=false) |
Set the matrix of the linear system to be solved. | |
virtual void | setup (const Containers::HypreParVector &b, Containers::HypreParVector &x) const |
Setup the solver for solving the linear system Ax=b. | |
virtual void | solve (const Containers::HypreParVector &b, Containers::HypreParVector &x) const |
Solve the linear system Ax=b. | |
Additional Inherited Members | |
Public Types inherited from TNL::Solvers::Linear::HypreSolver | |
enum | ErrorMode { IGNORE_HYPRE_ERRORS , WARN_HYPRE_ERRORS , ABORT_HYPRE_ERRORS } |
How to treat errors returned by Hypre function calls. More... | |
Protected Member Functions inherited from TNL::Solvers::Linear::HypreSolver | |
virtual void | postSolveHook () const |
Hook function that is called at the end of solve. | |
Protected Attributes inherited from TNL::Solvers::Linear::HypreSolver | |
const Matrices::HypreParCSRMatrix * | A = nullptr |
The linear system matrix. | |
ErrorMode | error_mode = ABORT_HYPRE_ERRORS |
How to treat Hypre errors. | |
bool | setup_called = false |
Indicates if Hypre's setup function was already called. | |
HYPRE_Solver | solver = nullptr |
Handle for the Hypre solver. | |
Wrapper for Hypre's preconditioner that is intended for matrices that are triangular in some ordering.
Finds correct ordering and performs forward substitution on processor as approximate inverse. Exact on one processor.
|
inlineoverridevirtual |
Hypre's internal setup function.
Implements TNL::Solvers::Linear::HypreSolver.
|
inlineoverridevirtual |
Hypre's internal solve function.
Implements TNL::Solvers::Linear::HypreSolver.