Template Numerical Library: TNL::Solvers::Linear::HypreTriSolve Class Reference

Template Numerical Library version\ main:0b2c40fb1

Loading...
Searching...
No Matches
Public Member Functions | List of all members
TNL::Solvers::Linear::HypreTriSolve Class Reference
Wrappers for the Hypre library

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:
[legend]
Collaboration diagram for TNL::Solvers::Linear::HypreTriSolve:
[legend]

## 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 : std::uint8_t { 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.

## 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
| inlinenodiscardoverridevirtual

Hypre's internal setup function.

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

## ◆ solveFcn()

HYPRE_PtrToParSolverFcn TNL::Solvers::Linear::HypreTriSolve::solveFcn | ( |  | ) | const
| inlinenodiscardoverridevirtual

Hypre's internal solve function.

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

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

- src/TNL/Solvers/Linear/Hypre.h