20 #ifndef GEOS_LINEARALGEBRA_INTERFACES_HYPREINTERFACE_HPP_
21 #define GEOS_LINEARALGEBRA_INTERFACES_HYPREINTERFACE_HPP_
25 #include "linearAlgebra/common/PreconditionerBase.hpp"
54 static std::unique_ptr< LinearSolverBase< HypreInterface > >
62 static std::unique_ptr< PreconditionerBase< HypreInterface > >
71 static std::unique_ptr< PreconditionerBase< HypreInterface > >
Wrapper class for hypre's ParCSRMatrix.
Wrapper class for hypre's ParVector.
Array< T, 1 > array1d
Alias for 1D array.
This class holds aliases based on the Hypre library.
static std::unique_ptr< LinearSolverBase< HypreInterface > > createSolver(LinearSolverParameters params)
Create a hypre-based solver object.
static std::unique_ptr< PreconditionerBase< HypreInterface > > createPreconditioner(LinearSolverParameters params)
Create a hypre-based preconditioner object.
static void initialize()
Initializes the Hypre library.
static void finalize()
Finalizes the Hypre library.
static std::unique_ptr< PreconditionerBase< HypreInterface > > createPreconditioner(LinearSolverParameters params, array1d< HypreVector > const &nearNullKernel)
Create a hypre-based preconditioner object.
Set of parameters for a linear solver or preconditioner.