Tempus  Version of the Day
Time Integration
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp
Go to the documentation of this file.
1 //@HEADER
2 // *****************************************************************************
3 // Tempus: Time Integration and Sensitivity Analysis Package
4 //
5 // Copyright 2017 NTESS and the Tempus contributors.
6 // SPDX-License-Identifier: BSD-3-Clause
7 // *****************************************************************************
8 //@HEADER
9 
10 #ifndef Tempus_ModelEvaluatorPairIMEX_CombinedFSA_hpp
11 #define Tempus_ModelEvaluatorPairIMEX_CombinedFSA_hpp
12 
13 #include "Tempus_config.hpp"
15 #include "Tempus_WrapperModelEvaluatorPairIMEX_Basic.hpp"
16 #include "Tempus_CombinedForwardSensitivityModelEvaluator.hpp"
17 
18 namespace Tempus {
19 
27 template <typename Scalar>
29  : public SensitivityModelEvaluatorBase<Scalar>,
31  public:
35  forwardModel,
36  const Teuchos::RCP<const Teuchos::ParameterList>& pList = Teuchos::null)
37  {
38  forwardModel_ = forwardModel;
39  appExplicitModel_ = forwardModel_->getExplicitModel();
40  appImplicitModel_ = forwardModel_->getImplicitModel();
42  appExplicitModel_, pList));
44  appImplicitModel_, pList));
46  }
47 
50 
52 
53 
56  const
57  {
58  return forwardModel_;
59  }
60 
62 
63  private:
66 
67  protected:
70 
77 };
78 
79 } // namespace Tempus
80 
81 #endif // Tempus_ModelEvaluatorPairIMEX_CombinedFSA_hpp
Transform a ModelEvaluator&#39;s sensitivity equations to its residual.
ModelEvaluator pair for implicit and explicit (IMEX) evaulations.
Specialization of IMEX ME for &quot;combined&quot; FSA method.
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > getForwardModel() const
Get the underlying forward model.
void setup(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &explicitModel, const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &implicitModel)
Setup ME when using default constructor – for derived classes.
TEUCHOS_DEPRECATED RCP< T > rcp(T *p, Dealloc_T dealloc, bool owns_mem)
WrapperModelEvaluatorPairIMEX_CombinedFSA(const Teuchos::RCP< const WrapperModelEvaluatorPairIMEX_Basic< Scalar > > &forwardModel, const Teuchos::RCP< const Teuchos::ParameterList > &pList=Teuchos::null)
Constructor.
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > appExplicitModel_
Teuchos::RCP< const WrapperModelEvaluatorPairIMEX_Basic< Scalar > > forwardModel_
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > appImplicitModel_
A ModelEvaluator decorator for sensitivity analysis.