9 #ifndef Tempus_WrapStaggeredFSAModelEvaluator_hpp 10 #define Tempus_WrapStaggeredFSAModelEvaluator_hpp 12 #include "Tempus_config.hpp" 14 #include "Tempus_StaggeredForwardSensitivityModelEvaluator.hpp" 15 #include "Tempus_WrapperModelEvaluatorPairIMEX_Basic.hpp" 17 #include "Tempus_WrapperModelEvaluatorPairPartIMEX_StaggeredFSA.hpp" 26 template <
typename Scalar>
27 Teuchos::RCP< SensitivityModelEvaluatorBase<Scalar> >
30 const Teuchos::RCP<const Teuchos::ParameterList>& pList = Teuchos::null)
33 using Teuchos::rcp_dynamic_cast;
35 RCP<SensitivityModelEvaluatorBase<Scalar> > wrapped_model;
38 RCP<const WrapperModelEvaluatorPairIMEX_Basic<Scalar> > modelPairIMEX =
40 RCP<const WrapperModelEvaluatorPairPartIMEX_Basic<Scalar> > modelPairPartIMEX =
42 if (modelPairIMEX != Teuchos::null) {
45 modelPairIMEX, pList));
47 else if (modelPairPartIMEX != Teuchos::null) {
50 modelPairPartIMEX, pList));
61 template <
typename Scalar>
62 Teuchos::RCP< SensitivityModelEvaluatorBase<Scalar> >
65 const Teuchos::RCP<const Teuchos::ParameterList>& pList = Teuchos::null)
67 Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> > cmodel = model;
ModelEvaluator pair for implicit and explicit (IMEX) evaulations.
Specialization of IMEX ME for "staggered" FSA method.
Teuchos::RCP< SensitivityModelEvaluatorBase< Scalar > > wrapStaggeredFSAModelEvaluator(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model, const Teuchos::RCP< const Teuchos::ParameterList > &pList=Teuchos::null)
ModelEvaluator pair for implicit and explicit (IMEX) evaulations.
Transform a ModelEvaluator's sensitivity equations to its residual.
Specialization of IMEX-Part ME for "combined" FSA method.