Template Numerical Library version\ main:bb09b17
Loading...
Searching...
No Matches
TNL::Solvers::Linear::HypreTriSolve Class Reference

Wrapper for Hypre's preconditioner that is intended for matrices that are triangular in some ordering. More...

#include <TNL/Solvers/Linear/Hypre.h>

Inheritance diagram for TNL::Solvers::Linear::HypreTriSolve:
Collaboration diagram for TNL::Solvers::Linear::HypreTriSolve:

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::HypreParCSRMatrixA = 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.
 

Detailed Description

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.

Member Function Documentation

◆ setupFcn()

HYPRE_PtrToParSolverFcn TNL::Solvers::Linear::HypreTriSolve::setupFcn ( ) const
inlineoverridevirtual

Hypre's internal setup function.

Implements TNL::Solvers::Linear::HypreSolver.

◆ solveFcn()

HYPRE_PtrToParSolverFcn TNL::Solvers::Linear::HypreTriSolve::solveFcn ( ) const
inlineoverridevirtual

Hypre's internal solve function.

Implements TNL::Solvers::Linear::HypreSolver.


The documentation for this class was generated from the following file: