20 #ifndef GEOS_LINEARALGEBRA_INTERFACES_HYPRESOLVER_HPP_ 
   21 #define GEOS_LINEARALGEBRA_INTERFACES_HYPRESOLVER_HPP_ 
   33 struct HypreSolverWrapper;
 
   95   std::unique_ptr< HypreSolverWrapper > m_solver;
 
Wrapper class for hypre's ParCSRMatrix.
 
Wrapper around hypre-based preconditioners.
 
This class creates and provides basic support for Hypre solvers.
 
virtual ~HypreSolver() override
Destructor.
 
HypreSolver(LinearSolverParameters parameters)
Solver constructor, with parameter list reference.
 
virtual void solve(HypreVector const &rhs, HypreVector &sol) const override
Solve preconditioned system.
 
virtual void setup(HypreMatrix const &mat) override
Compute the preconditioner from a matrix.
 
virtual void clear() override
Clean up the preconditioner setup.
 
virtual void apply(HypreVector const &src, HypreVector &dst) const override
Apply operator to a vector, dst = this(src).
 
Wrapper class for hypre's ParVector.
 
Simple interface for linear solvers that allows to extract solution results.
 
LinearSolverResult m_result
Result of most recent solve (status, timings)
 
LinearSolverParameters m_params
Parameters for the solver.
 
LinearSolverParameters const & parameters() const
 
Set of parameters for a linear solver or preconditioner.