16 #ifndef dealii_trilinos_solver_h 17 # define dealii_trilinos_solver_h 22 # ifdef DEAL_II_WITH_TRILINOS 31 # include <Epetra_LinearProblem.h> 32 # include <Epetra_Operator.h> 44 class PreconditionBase;
200 Epetra_MultiVector & x,
201 const Epetra_MultiVector &
b,
216 Epetra_MultiVector & x,
217 const Epetra_MultiVector &
b,
235 const ::Vector<double> &
b,
252 const ::Vector<double> &
b,
264 const ::LinearAlgebra::distributed::Vector<double> &
b,
277 const ::LinearAlgebra::distributed::Vector<double> &
b,
292 <<
"An error with error number " << arg1
293 <<
" occurred while calling a Trilinos function");
309 template <
typename Preconditioner>
311 do_solve(
const Preconditioner &preconditioner);
316 template <
typename Preconditioner>
455 const unsigned int restart_parameter = 30);
583 const std::string &solver_type =
"Amesos_Klu");
647 const ::LinearAlgebra::distributed::Vector<double> &
b);
668 const ::Vector<double> &
b);
679 const ::LinearAlgebra::distributed::Vector<double> &
b);
692 <<
"An error with error number " << arg1
693 <<
" occurred while calling a Trilinos function");
722 std::unique_ptr<Amesos_BaseSolver>
solver;
734 # endif // DEAL_II_WITH_TRILINOS PETScWrappers::SolverGMRES SolverGMRES
void set_preconditioner(AztecOO &solver, const Preconditioner &preconditioner)
SolverBase(SolverControl &cn, const AdditionalData &data=AdditionalData())
const bool output_solver_details
std::unique_ptr< Amesos_BaseSolver > solver
const AdditionalData additional_data
std::unique_ptr< AztecOO_StatusTest > status_test
const AdditionalData additional_data
const AdditionalData additional_data
static ::ExceptionBase & ExcTrilinosError(int arg1)
void solve(const SparseMatrix &A, MPI::Vector &x, const MPI::Vector &b, const PreconditionBase &preconditioner)
const AdditionalData additional_data
virtual ~SolverBase()=default
SolverControl & solver_control
#define DeclException1(Exception1, type1, outsequence)
SolverControl & solver_control
std::unique_ptr< Epetra_LinearProblem > linear_problem
#define DEAL_II_NAMESPACE_CLOSE
std::unique_ptr< Epetra_LinearProblem > linear_problem
SymmetricTensor< 2, dim, Number > b(const Tensor< 2, dim, Number > &F)
const AdditionalData additional_data
enum TrilinosWrappers::SolverBase::SolverName solver_name
PETScWrappers::SolverCG SolverCG
#define DEAL_II_NAMESPACE_OPEN
const AdditionalData additional_data
bool output_solver_details
SolverControl & control() const
void do_solve(const Preconditioner &preconditioner)
AdditionalData(const bool output_solver_details=false, const unsigned int gmres_restart_parameter=30)
const AdditionalData additional_data
const unsigned int gmres_restart_parameter