Tempus
Version of the Day
Time Integration
Toggle main menu visibility
Loading...
Searching...
No Matches
src
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp
Go to the documentation of this file.
1
// @HEADER
2
// ****************************************************************************
3
// Tempus: Copyright (2017) Sandia Corporation
4
//
5
// Distributed under BSD 3-clause license (See accompanying file Copyright.txt)
6
// ****************************************************************************
7
// @HEADER
8
9
#ifndef Tempus_ModelEvaluatorPairIMEX_CombinedFSA_hpp
10
#define Tempus_ModelEvaluatorPairIMEX_CombinedFSA_hpp
11
12
#include "Tempus_config.hpp"
13
#include "
Tempus_SensitivityModelEvaluatorBase.hpp
"
14
#include "Tempus_WrapperModelEvaluatorPairIMEX_Basic.hpp"
15
#include "Tempus_CombinedForwardSensitivityModelEvaluator.hpp"
16
17
namespace
Tempus
{
18
26
template
<
typename
Scalar>
27
class
WrapperModelEvaluatorPairIMEX_CombinedFSA
28
:
public
SensitivityModelEvaluatorBase
<Scalar>,
29
public
WrapperModelEvaluatorPairIMEX_Basic
<Scalar>
30
{
31
public
:
32
34
WrapperModelEvaluatorPairIMEX_CombinedFSA
(
35
const
Teuchos::RCP<
const
WrapperModelEvaluatorPairIMEX_Basic<Scalar>
>& forwardModel,
36
const
Teuchos::RCP<const Teuchos::ParameterList>& pList = Teuchos::null)
37
{
38
forwardModel_
= forwardModel;
39
appExplicitModel_
=
forwardModel_
->getExplicitModel();
40
appImplicitModel_
=
forwardModel_
->getImplicitModel();
41
fsaExplicitModel_
= rcp(
new
FSAME
(
appExplicitModel_
,
appExplicitModel_
,
appExplicitModel_
, pList));
42
fsaImplicitModel_
= rcp(
new
FSAME
(
appImplicitModel_
,
appImplicitModel_
,
appImplicitModel_
, pList));
43
Base::setup
(
fsaExplicitModel_
,
fsaImplicitModel_
);
44
}
45
47
virtual
~WrapperModelEvaluatorPairIMEX_CombinedFSA
() {}
48
50
51
53
virtual
Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> >
54
getForwardModel
()
const
55
{
56
return
forwardModel_
;
57
}
58
60
61
private
:
62
64
WrapperModelEvaluatorPairIMEX_CombinedFSA
(){}
65
66
protected
:
67
68
typedef
WrapperModelEvaluatorPairIMEX_Basic<Scalar>
Base
;
69
typedef
CombinedForwardSensitivityModelEvaluator<Scalar>
FSAME
;
70
71
Teuchos::RCP<const WrapperModelEvaluatorPairIMEX_Basic<Scalar> >
forwardModel_
;
72
Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> >
appExplicitModel_
;
73
Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> >
appImplicitModel_
;
74
Teuchos::RCP<FSAME>
fsaExplicitModel_
;
75
Teuchos::RCP<FSAME>
fsaImplicitModel_
;
76
};
77
78
}
// namespace Tempus
79
80
#endif
// Tempus_ModelEvaluatorPairIMEX_CombinedFSA_hpp
Tempus_SensitivityModelEvaluatorBase.hpp
Tempus::CombinedForwardSensitivityModelEvaluator
Transform a ModelEvaluator's sensitivity equations to its residual.
Definition
Tempus_CombinedForwardSensitivityModelEvaluator_decl.hpp:41
Tempus::SensitivityModelEvaluatorBase::SensitivityModelEvaluatorBase
SensitivityModelEvaluatorBase()
Constructor.
Definition
Tempus_SensitivityModelEvaluatorBase.hpp:32
Tempus::WrapperModelEvaluatorPairIMEX_Basic::WrapperModelEvaluatorPairIMEX_Basic
WrapperModelEvaluatorPairIMEX_Basic(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &explicitModel, const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &implicitModel)
Constructor.
Definition
Tempus_WrapperModelEvaluatorPairIMEX_Basic_decl.hpp:45
Tempus::WrapperModelEvaluatorPairIMEX_Basic::setup
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.
Definition
Tempus_WrapperModelEvaluatorPairIMEX_Basic_decl.hpp:151
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::fsaExplicitModel_
Teuchos::RCP< FSAME > fsaExplicitModel_
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:74
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::Base
WrapperModelEvaluatorPairIMEX_Basic< Scalar > Base
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:68
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::appExplicitModel_
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > appExplicitModel_
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:72
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::FSAME
CombinedForwardSensitivityModelEvaluator< Scalar > FSAME
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:69
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::WrapperModelEvaluatorPairIMEX_CombinedFSA
WrapperModelEvaluatorPairIMEX_CombinedFSA(const Teuchos::RCP< const WrapperModelEvaluatorPairIMEX_Basic< Scalar > > &forwardModel, const Teuchos::RCP< const Teuchos::ParameterList > &pList=Teuchos::null)
Constructor.
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:34
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::~WrapperModelEvaluatorPairIMEX_CombinedFSA
virtual ~WrapperModelEvaluatorPairIMEX_CombinedFSA()
Destructor.
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:47
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::fsaImplicitModel_
Teuchos::RCP< FSAME > fsaImplicitModel_
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:75
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::WrapperModelEvaluatorPairIMEX_CombinedFSA
WrapperModelEvaluatorPairIMEX_CombinedFSA()
Default constructor - not allowed.
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:64
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::getForwardModel
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > getForwardModel() const
Get the underlying forward model.
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:54
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::forwardModel_
Teuchos::RCP< const WrapperModelEvaluatorPairIMEX_Basic< Scalar > > forwardModel_
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:71
Tempus::WrapperModelEvaluatorPairIMEX_CombinedFSA::appImplicitModel_
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > appImplicitModel_
Definition
Tempus_WrapperModelEvaluatorPairIMEX_CombinedFSA.hpp:73
Tempus
Definition
Tempus_AdjointAuxSensitivityModelEvaluator_decl.hpp:21
Generated by
1.17.0