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