Tempus
Version of the Day
Time Integration
|
Specialization of IMEX-Part ME for "combined" FSA method. More...
#include <Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp>
Public Member Functions | |
WrapperModelEvaluatorPairPartIMEX_CombinedFSA (const Teuchos::RCP< const WrapperModelEvaluatorPairPartIMEX_Basic< Scalar > > &forwardModel, const Teuchos::RCP< const Teuchos::ParameterList > &pList=Teuchos::null) | |
Constructor. More... | |
virtual | ~WrapperModelEvaluatorPairPartIMEX_CombinedFSA () |
Destructor. More... | |
virtual void | initialize () |
Initialize after setting member data. More... | |
Teuchos::RCP< const Teuchos::ParameterList > | getValidParameters () const |
Public Member Functions inherited from Tempus::SensitivityModelEvaluatorBase< Scalar > | |
SensitivityModelEvaluatorBase () | |
Constructor. More... | |
virtual | ~SensitivityModelEvaluatorBase () |
Destructor. More... | |
virtual void | setForwardSolutionHistory (const Teuchos::RCP< const Tempus::SolutionHistory< Scalar > > &) |
Set solution history from forward state evaluation (for interpolation) More... | |
virtual void | setForwardSolutionState (const Teuchos::RCP< const Tempus::SolutionState< Scalar > > &) |
Set solution state from forward state evaluation (for frozen state) More... | |
virtual void | setSolver (const Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > &, const bool) |
Set the solver of the underlying model if you want to reuse it. More... | |
Public Member Functions inherited from Thyra::ModelEvaluator< class > | |
virtual int | Np () const =0 |
virtual int | Ng () const =0 |
virtual RCP< const VectorSpaceBase< Scalar > > | get_f_multiplier_space () const =0 |
virtual RCP< const VectorSpaceBase< Scalar > > | get_g_multiplier_space (int j) const =0 |
virtual RCP < LinearOpWithSolveBase < Scalar > > | create_W () const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_DfDp_op (int l) const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_DgDx_dot_op (int j) const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_DgDx_op (int j) const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_DgDp_op (int j, int l) const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_hess_f_xx () const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_hess_f_xp (int l) const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_hess_f_pp (int l1, int l2) const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_hess_g_xx (int j) const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_hess_g_xp (int j, int l) const =0 |
virtual RCP< LinearOpBase < Scalar > > | create_hess_g_pp (int j, int l1, int l2) const =0 |
virtual ModelEvaluatorBase::OutArgs < Scalar > | createOutArgs () const =0 |
virtual void | evalModel (const ModelEvaluatorBase::InArgs< Scalar > &inArgs, const ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const =0 |
ModelEvaluatorBase () | |
std::string | toString (ModelEvaluatorBase::EInArgsMembers) |
std::string | toString (ModelEvaluatorBase::EOutArgsMembers) |
std::string | toString (ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation) |
ModelEvaluatorBase::EDerivativeMultiVectorOrientation | getOtherDerivativeMultiVectorOrientation (ModelEvaluatorBase::EDerivativeMultiVectorOrientation orientation) |
Public Member Functions inherited from Teuchos::Describable | |
virtual std::string | description () const |
virtual void | describe (FancyOStream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
void | describe (std::ostream &out, const EVerbosityLevel verbLevel=verbLevel_default) const |
virtual | ~Describable () |
LabeledObject () | |
virtual | ~LabeledObject () |
virtual void | setObjectLabel (const std::string &objectLabel) |
virtual std::string | getObjectLabel () const |
DescribableStreamManipulatorState | describe (const Describable &describable, const EVerbosityLevel verbLevel=Describable::verbLevel_default) |
std::ostream & | operator<< (std::ostream &os, const DescribableStreamManipulatorState &d) |
Public Member Functions inherited from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar > | |
WrapperModelEvaluatorPairPartIMEX_Basic () | |
Default constructor – Still requires setting the models and running initialize. More... | |
WrapperModelEvaluatorPairPartIMEX_Basic (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &explicitModel, const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &implicitModel, int numExplicitOnlyBlocks=0, int parameterIndex=-1) | |
Constructor. More... | |
virtual | ~WrapperModelEvaluatorPairPartIMEX_Basic () |
Destructor. More... | |
virtual void | setAppModel (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &me) |
Set the underlying application ModelEvaluator. More... | |
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | getAppModel () const |
Get the underlying application ModelEvaluator. More... | |
virtual void | setInArgs (Thyra::ModelEvaluatorBase::InArgs< Scalar > inArgs) |
Set InArgs the wrapper ModelEvalutor. More... | |
virtual Thyra::ModelEvaluatorBase::InArgs < Scalar > | getInArgs () |
Get InArgs the wrapper ModelEvalutor. More... | |
virtual void | setOutArgs (Thyra::ModelEvaluatorBase::OutArgs< Scalar > outArgs) |
Set OutArgs the wrapper ModelEvalutor. More... | |
virtual Thyra::ModelEvaluatorBase::OutArgs < Scalar > | getOutArgs () |
Get OutArgs the wrapper ModelEvalutor. More... | |
virtual void | setForSolve (Teuchos::RCP< TimeDerivative< Scalar > > timeDer, Thyra::ModelEvaluatorBase::InArgs< Scalar > inArgs, Thyra::ModelEvaluatorBase::OutArgs< Scalar > outArgs, EVALUATION_TYPE=SOLVE_FOR_X) |
Set parameters for application implicit ModelEvaluator solve. More... | |
virtual Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_x_space () const |
Get the x-solution space. More... | |
virtual Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_g_space (int i) const |
Get the g space. More... | |
virtual void | setNumExplicitOnlyBlocks (int numExp) |
virtual void | setExplicitModel (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model) |
virtual void | setImplicitModel (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model) |
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | getExplicitModel () const |
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | getImplicitModel () const |
virtual int | getNumExplicitOnlyBlocks () const |
virtual void | setParameterIndex (int parameterIndex=-1) |
Set the parameter index for explicit-only vector. More... | |
virtual int | getParameterIndex () const |
Get the parameter index for explicit-only vector. More... | |
virtual void | setUseImplicitModel (bool tf) |
Set parameter to switch wrapperME base functions between explicit and implicit functions. More... | |
virtual bool | getUseImplicitModel () const |
Get parameter to switch wrapperME base functions between explicit and implicit functions. More... | |
virtual Teuchos::RCP < Thyra::LinearOpBase< Scalar > > | create_W_op () const |
Teuchos::RCP< const Thyra::LinearOpWithSolveFactoryBase < Scalar > > | get_W_factory () const |
virtual Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_f_space () const |
virtual Thyra::ModelEvaluatorBase::InArgs < Scalar > | getNominalValues () const |
virtual Thyra::ModelEvaluatorBase::OutArgs < Scalar > | createOutArgsImpl () const |
Public Member Functions inherited from Tempus::WrapperModelEvaluatorPairIMEX< Scalar > | |
Public Member Functions inherited from Tempus::WrapperModelEvaluator< Scalar > | |
Public Member Functions inherited from Thyra::StateFuncModelEvaluatorBase< Scalar > | |
RCP< const VectorSpaceBase < Scalar > > | get_p_space (int l) const |
RCP< const Teuchos::Array < std::string > > | get_p_names (int l) const |
RCP< const VectorSpaceBase < Scalar > > | get_g_space (int j) const |
Teuchos::ArrayView< const std::string > | get_g_names (int j) const |
ModelEvaluatorBase::InArgs < Scalar > | getNominalValues () const |
ModelEvaluatorBase::InArgs < Scalar > | getLowerBounds () const |
ModelEvaluatorBase::InArgs < Scalar > | getUpperBounds () const |
RCP< LinearOpBase< Scalar > > | create_W_op () const |
RCP< PreconditionerBase< Scalar > > | create_W_prec () const |
RCP< const LinearOpWithSolveFactoryBase < Scalar > > | get_W_factory () const |
void | reportFinalPoint (const ModelEvaluatorBase::InArgs< Scalar > &finalPoint, const bool wasSolved) |
Protected Types | |
typedef WrapperModelEvaluatorPairPartIMEX_Basic < Scalar > | Base |
typedef Thyra::DefaultMultiVectorProductVectorSpace < Scalar > | DMVPVS |
typedef Thyra::DefaultMultiVectorProductVector < Scalar > | DMVPV |
typedef Thyra::ProductMultiVectorBase < Scalar > | PMVB |
typedef CombinedForwardSensitivityModelEvaluator < Scalar > | FSAME |
Methods that apply to both explicit and implicit terms. | |
virtual Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_p_space (int i) const |
Get the p space. More... | |
virtual Teuchos::RCP < Thyra::VectorBase< Scalar > > | getIMEXVector (const Teuchos::RCP< Thyra::VectorBase< Scalar > > &full) const |
Extract IMEX vector from a full solution vector. More... | |
virtual Teuchos::RCP< const Thyra::VectorBase< Scalar > > | getIMEXVector (const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &full) const |
Extract IMEX vector for reading. More... | |
virtual Teuchos::RCP < Thyra::VectorBase< Scalar > > | getExplicitOnlyVector (const Teuchos::RCP< Thyra::VectorBase< Scalar > > &full) const |
Extract explicit-only vector from a full solution vector. More... | |
virtual Teuchos::RCP< const Thyra::VectorBase< Scalar > > | getExplicitOnlyVector (const Teuchos::RCP< const Thyra::VectorBase< Scalar > > &full) const |
Extract explicit-only vector for reading. More... | |
Overridden from Tempus::SensitivityModelEvaluatorBase | |
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | getForwardModel () const |
Get the underlying forward model. More... | |
Overridden from Thyra::StateFuncModelEvaluatorBase | |
virtual Thyra::ModelEvaluatorBase::InArgs < Scalar > | createInArgs () const |
virtual void | evalModelImpl (const Thyra::ModelEvaluatorBase::InArgs< Scalar > &inArgs, const Thyra::ModelEvaluatorBase::OutArgs< Scalar > &outArgs) const |
Additional Inherited Members | |
Public Types inherited from Thyra::ModelEvaluator< class > | |
enum | EInArgsMembers |
enum | EInArgs_p_mp |
enum | EEvalType |
enum | EDerivativeMultiVectorOrientation |
enum | EDerivativeLinearOp |
enum | EDerivativeLinearity |
enum | ERankStatus |
enum | EOutArgsMembers |
enum | EOutArgsDfDp |
enum | EOutArgsDgDx_dot |
enum | EOutArgsDgDx |
enum | EOutArgsDgDp |
enum | EOutArgs_hess_vec_prod_f_xx |
enum | EOutArgs_hess_vec_prod_f_xp |
enum | EOutArgs_hess_vec_prod_f_px |
enum | EOutArgs_hess_vec_prod_f_pp |
enum | EOutArgs_hess_vec_prod_g_xx |
enum | EOutArgs_hess_vec_prod_g_xp |
enum | EOutArgs_hess_vec_prod_g_px |
enum | EOutArgs_hess_vec_prod_g_pp |
enum | EOutArgs_hess_f_xx |
enum | EOutArgs_hess_f_xp |
enum | EOutArgs_hess_f_pp |
enum | EOutArgs_hess_g_xx |
enum | EOutArgs_hess_g_xp |
enum | EOutArgs_hess_g_pp |
enum | EOutArgs_H_xx |
enum | EOutArgs_H_xp |
enum | EOutArgs_H_pp |
enum | EOutArgsDfDp_mp |
enum | EOutArgs_g_mp |
enum | EOutArgsDgDx_dot_mp |
enum | EOutArgsDgDx_mp |
enum | EOutArgsDgDp_mp |
typedef Teuchos::ScalarTraits < Scalar >::magnitudeType | ScalarMag |
Static Public Attributes inherited from Thyra::ModelEvaluator< class > | |
static const int | NUM_E_IN_ARGS_MEMBERS |
static const int | NUM_E_OUT_ARGS_MEMBERS |
Static Public Attributes inherited from Teuchos::Describable | |
static const EVerbosityLevel | verbLevel_default |
Protected Member Functions inherited from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar > | |
void | setup (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &explicitModel, const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &implicitModel, int numExplicitOnlyBlocks=0, int parameterIndex=-1) |
Setup ME when using default constructor – for derived classes. More... | |
Specialization of IMEX-Part ME for "combined" FSA method.
This specializes the implementation of several parts of WrapperModelEvaluatorPairPartIMEX_Basic for forward-sensitivity analysis with CombinedForwardSensitivityModelEvaluator. It deals with the product structure of the sensitivity solution vectors and incorporates the sensitivity of the implicit term with respect to the explicit-only vector.
Definition at line 32 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 107 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 108 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 109 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 110 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 111 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
Tempus::WrapperModelEvaluatorPairPartIMEX_CombinedFSA< Scalar >::WrapperModelEvaluatorPairPartIMEX_CombinedFSA | ( | const Teuchos::RCP< const WrapperModelEvaluatorPairPartIMEX_Basic< Scalar > > & | forwardModel, |
const Teuchos::RCP< const Teuchos::ParameterList > & | pList = Teuchos::null |
||
) |
Constructor.
Definition at line 19 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
inlinevirtual |
Destructor.
Definition at line 44 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
virtual |
Initialize after setting member data.
Reimplemented from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar >.
Definition at line 66 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
virtual |
Get the p space.
Reimplemented from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar >.
Definition at line 113 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
virtual |
Extract IMEX vector from a full solution vector.
Reimplemented from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar >.
Definition at line 128 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
virtual |
Extract IMEX vector for reading.
Reimplemented from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar >.
Definition at line 169 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
virtual |
Extract explicit-only vector from a full solution vector.
Reimplemented from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar >.
Definition at line 211 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
virtual |
Extract explicit-only vector for reading.
Reimplemented from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar >.
Definition at line 253 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
virtual |
Get the underlying forward model.
Reimplemented from Tempus::SensitivityModelEvaluatorBase< Scalar >.
Definition at line 296 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
virtual |
Reimplemented from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar >.
Definition at line 304 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
virtual |
Reimplemented from Tempus::WrapperModelEvaluatorPairPartIMEX_Basic< Scalar >.
Definition at line 330 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
Teuchos::RCP< const Teuchos::ParameterList > Tempus::WrapperModelEvaluatorPairPartIMEX_CombinedFSA< Scalar >::getValidParameters | ( | ) | const |
Definition at line 455 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_impl.hpp.
|
protected |
Definition at line 113 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 114 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 115 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 116 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 117 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 119 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 120 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 122 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 123 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
protected |
Definition at line 124 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
mutableprotected |
Definition at line 126 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.
|
mutableprotected |
Definition at line 127 of file Tempus_WrapperModelEvaluatorPairPartIMEX_CombinedFSA_decl.hpp.