10#ifndef Tempus_WrapperModelEvaluatorBasic_decl_hpp 
   11#define Tempus_WrapperModelEvaluatorBasic_decl_hpp 
   14#include "Tempus_config.hpp" 
   26template <
typename Scalar>
 
   35    using Teuchos::rcp_const_cast;
 
   40    typedef Thyra::ModelEvaluatorBase MEB;
 
   41    MEB::InArgs<Scalar> inArgs = 
appModel_->getNominalValues();
 
   42    x_                         = rcp_const_cast<Thyra::VectorBase<Scalar>>(inArgs.get_x());
 
   44    if (inArgs.supports(MEB::IN_ARG_x_dot)) {
 
   45      xDot_ = rcp_const_cast<Thyra::VectorBase<Scalar>>(inArgs.get_x_dot());
 
   48      xDot_ = Teuchos::null;
 
 
   60  virtual Teuchos::RCP<const Thyra::ModelEvaluator<Scalar>> 
getAppModel()
 const 
 
   71      const int index                                  = -1 )
 
 
   96  Teuchos::RCP<const Thyra::LinearOpWithSolveFactoryBase<Scalar>>
 
  102  Teuchos::RCP<const Thyra::VectorSpaceBase<Scalar>> 
get_f_space()
 const 
 
  107  Teuchos::RCP<const Thyra::VectorSpaceBase<Scalar>> 
get_p_space(
int p)
 const 
 
  112  Teuchos::RCP<const Teuchos::Array<std::string>> 
get_p_names(
int p)
 const 
 
  122  Teuchos::RCP<const Thyra::VectorSpaceBase<Scalar>> 
get_x_space()
 const 
 
  127  Teuchos::RCP<const Thyra::VectorSpaceBase<Scalar>> 
get_g_space(
int i)
 const 
 
  152  Thyra::ModelEvaluatorBase::InArgs<Scalar> 
createInArgs() 
const;
 
  156      const Thyra::ModelEvaluatorBase::InArgs<Scalar> &inArgs,
 
  157      const Thyra::ModelEvaluatorBase::OutArgs<Scalar> &outArgs) 
const;
 
  165  Teuchos::RCP<const Thyra::ModelEvaluator<Scalar>> 
appModel_;
 
  167  Teuchos::RCP<Thyra::VectorBase<Scalar>> 
x_;
 
  168  Teuchos::RCP<Thyra::VectorBase<Scalar>> 
xDot_;
 
  170  Teuchos::RCP<ImplicitODEParameters<Scalar>> 
p_;
 
  171  Teuchos::RCP<Thyra::VectorBase<Scalar>> 
y_;
 
 
A ModelEvaluator for residual evaluations given a state. This ModelEvaluator takes a state,...
 
Teuchos::RCP< Thyra::LinearOpBase< Scalar > > create_DfDp_op(int l) const
 
Teuchos::RCP< Thyra::LinearOpBase< Scalar > > create_DgDx_op(int j) const
 
Teuchos::RCP< Thyra::LinearOpBase< Scalar > > create_W_op() const
 
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > get_g_space(int i) const
Get the g space.
 
Teuchos::RCP< Thyra::PreconditionerBase< Scalar > > create_W_prec() const
 
WrapperModelEvaluatorBasic(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &appModel)
Constructor.
 
Teuchos::RCP< TimeDerivative< Scalar > > timeDer_
 
void evalModelImpl(const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const
 
Thyra::ModelEvaluatorBase::InArgs< Scalar > createInArgs() const
 
Teuchos::RCP< Thyra::VectorBase< Scalar > > xDot_
 
virtual void setAppModel(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &me)
Set the underlying application ModelEvaluator.
 
Thyra::ModelEvaluatorBase::OutArgs< Scalar > createOutArgsImpl() const
 
Teuchos::RCP< Thyra::VectorBase< Scalar > > y_
 
Teuchos::RCP< const Thyra::LinearOpWithSolveFactoryBase< Scalar > > get_W_factory() const
 
Thyra::ModelEvaluatorBase::InArgs< Scalar > getNominalValues() const
 
EVALUATION_TYPE evaluationType_
 
Teuchos::RCP< Thyra::VectorBase< Scalar > > x_
 
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > get_x_space() const
Get the x-solution space.
 
Teuchos::ArrayView< const std::string > get_g_names(int g) const
 
WrapperModelEvaluatorBasic()
Default constructor - not allowed.
 
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > get_f_space() const
 
Teuchos::RCP< ImplicitODEParameters< Scalar > > p_
 
Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > get_p_space(int p) const
Get the p space.
 
void setForSolve(const Teuchos::RCP< Thyra::VectorBase< Scalar > > &x, const Teuchos::RCP< Thyra::VectorBase< Scalar > > &xDot, const Scalar time, const Teuchos::RCP< ImplicitODEParameters< Scalar > > &p, const Teuchos::RCP< Thyra::VectorBase< Scalar > > &y=Teuchos::null, const int index=-1)
Set parameters for application implicit ModelEvaluator solve.
 
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > appModel_
 
Teuchos::RCP< Thyra::LinearOpBase< Scalar > > create_DgDp_op(int j, int l) const
 
Teuchos::RCP< const Teuchos::Array< std::string > > get_p_names(int p) const
 
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > getAppModel() const
Get the underlying application model 'f'.
 
A ModelEvaluator which wraps the application ModelEvaluator.
 
EVALUATION_TYPE
EVALUATION_TYPE indicates the evaluation to apply to the implicit ODE.
 
@ SOLVE_FOR_X
Solve for x and determine xDot from x.