10 #ifndef __Thyra_BelosTpetraSolverAdapter_hpp
11 #define __Thyra_BelosTpetraSolverAdapter_hpp
13 #include "BelosConfigDefs.hpp"
14 #include "BelosLinearProblem.hpp"
18 #include "Thyra_MultiVectorBase.hpp"
24 #include "Tpetra_CrsMatrix.hpp"
25 #include "BelosTpetraAdapter.hpp"
26 #include "solvers/Belos_Tpetra_Krylov_parameters.hpp"
27 #include "solvers/Belos_Tpetra_Krylov.hpp"
28 #include "solvers/Belos_Tpetra_Gmres.hpp"
29 #include "solvers/Belos_Tpetra_GmresPipeline.hpp"
30 #include "solvers/Belos_Tpetra_GmresSingleReduce.hpp"
31 #include "solvers/Belos_Tpetra_GmresSstep.hpp"
37 template<
class SC,
class MV,
class OP>
54 const Belos::LinearProblem<SC, MV, OP>&
getProblem()
const override {
72 bool defaultValues =
true;
81 void reset(
const Belos::ResetType type )
override {
91 Belos::ReturnType
solve()
override {
115 Belos::ReturnType belos_output = (
solver_output.converged ? Belos::Converged : Belos::Unconverged);
133 template<
class SC,
class MV,
class OP>
154 template<
class SC,
class MV,
class OP>
175 template<
class SC,
class MV,
class OP>
196 template<
class SC,
class MV,
class OP>
217 #endif // __Thyra_TpetraSolverAdapter_hpp
Teuchos::RCP< Teuchos::ParameterList > params_
Current parameter list.
void reset(const Belos::ResetType type) override
BelosTpetra::Impl::GmresSingleReduce< SC > tpetra_solver_type
bool is_null(const std::shared_ptr< T > &p)
Teuchos::RCP< tpetra_base_solver_type > tpetra_solver
BelosTpetra::Impl::Gmres< SC > tpetra_solver_type
BelosTpetraKrylov()=default
constructor
Teuchos::RCP< Belos::SolverManager< SC, MV, OP > > clone() const override
clone for Inverted Injection (DII)
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const override
virtual Teuchos::RCP< Belos::SolverManager< SC, MV, OP > > clone() const override=0
clone for Inverted Injection (DII)
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
BelosTpetraGmresSstep()
constructor
BelosTpetraGmres()
constructor
const Belos::LinearProblem< SC, MV, OP > & getProblem() const override
bool isLOADetected() const override
Teuchos::RCP< const Teuchos::ParameterList > getCurrentParameters() const override
Belos::ReturnType solve() override
solve
BelosTpetraGmresSingleReduce()
constructor
BelosTpetra::Impl::Krylov< SC > tpetra_base_solver_type
Teuchos::RCP< Belos::SolverManager< SC, MV, OP > > clone() const override
clone for Inverted Injection (DII)
Teuchos::RCP< Belos::LinearProblem< SC, MV, OP > > problem_
The linear problem to solve.
int getNumIters() const override
Get the iteration count for the most recent call to solve().
void setProblem(const Teuchos::RCP< Belos::LinearProblem< SC, MV, OP > > &problem) override
set/get problem
BelosTpetra::Impl::SolverOutput< SC > solver_output
Teuchos::RCP< Belos::SolverManager< SC, MV, OP > > clone() const override
clone for Inverted Injection (DII)
BelosTpetra::Impl::GmresSstep< SC > tpetra_solver_type
BelosTpetraGmresPipeline()
constructor
BelosTpetra::Impl::GmresPipeline< SC > tpetra_solver_type
Teuchos::ScalarTraits< SC >::magnitudeType achievedTol() const override
void setParameters(const Teuchos::RCP< Teuchos::ParameterList > ¶ms) override
set/get parameters
Teuchos::RCP< Belos::SolverManager< SC, MV, OP > > clone() const override
clone for Inverted Injection (DII)