Template Numerical Library version\ main:481315e2

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 
Typecast 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.