|
Tempus Version of the Day
Time Integration
|
A stepper implementing staggered forward sensitivity analysis. More...
#include <Tempus_StepperStaggeredForwardSensitivity_decl.hpp>
Public Member Functions | |
| StepperStaggeredForwardSensitivity () | |
| Default constructor. | |
| StepperStaggeredForwardSensitivity (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &appModel, const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &sens_residual_model, const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &sens_solve_model, const Teuchos::RCP< Teuchos::ParameterList > &pList=Teuchos::null, const Teuchos::RCP< Teuchos::ParameterList > &sens_pList=Teuchos::null) | |
| Constructor. | |
| void | setStepperValues (const Teuchos::RCP< Teuchos::ParameterList > pl) |
| Set Stepper member data from ParameterList. | |
| Teuchos::RCP< Teuchos::ParameterList > | getValidParametersBasic () const |
| Add basic parameters to Steppers ParameterList. | |
| virtual void | initialize () |
| Initialize after construction and changing input parameters. | |
| virtual bool | isInitialized () |
| True if stepper's member data is initialized. | |
| virtual void | checkInitialized () |
| Check initialization, and error out on failure. | |
| void | setStepperName (std::string s) |
| Set the stepper name. | |
| std::string | getStepperName () const |
| Get the stepper name. | |
| std::string | getStepperType () const |
| Get the stepper type. The stepper type is used as an identifier for the stepper, and can only be set by the derived Stepper class. | |
| void | setUseFSALTrueOnly (bool a) |
| void | setUseFSALFalseOnly (bool a) |
| bool | getUseFSAL () const |
| void | setICConsistency (std::string s) |
| std::string | getICConsistency () const |
| void | setICConsistencyCheck (bool c) |
| bool | getICConsistencyCheck () const |
| virtual Teuchos::RCP< Thyra::VectorBase< Scalar > > | getStepperX () |
| Get Stepper x. | |
| virtual Teuchos::RCP< Thyra::VectorBase< Scalar > > | getStepperXDot () |
| Get Stepper xDot. | |
| virtual Teuchos::RCP< Thyra::VectorBase< Scalar > > | getStepperXDotDot () |
| Get Stepper xDotDot. | |
| virtual Teuchos::RCP< Thyra::VectorBase< Scalar > > | getStepperXDotDot (Teuchos::RCP< SolutionState< Scalar > > state) |
| Get xDotDot from SolutionState or Stepper storage. | |
Overridden from Teuchos::Describable | |
| Teuchos::RCP< Teuchos::ParameterList > | stepperPL_ |
| Teuchos::RCP< Teuchos::ParameterList > | sensPL_ |
| Teuchos::RCP< Stepper< Scalar > > | stateStepper_ |
| Teuchos::RCP< Stepper< Scalar > > | sensitivityStepper_ |
| Teuchos::RCP< SensitivityModelEvaluatorBase< Scalar > > | combined_fsa_model_ |
| Teuchos::RCP< SensitivityModelEvaluatorBase< Scalar > > | fsa_model_ |
| Teuchos::RCP< SolutionHistory< Scalar > > | stateSolutionHistory_ |
| Teuchos::RCP< SolutionHistory< Scalar > > | sensSolutionHistory_ |
| bool | reuse_solver_ |
| bool | force_W_update_ |
| SensitivityStepMode | stepMode_ |
| virtual std::string | description () const |
| virtual void | describe (Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const |
| virtual bool | isValidSetup (Teuchos::FancyOStream &out) const |
| Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > | get_x_space () const |
| virtual Teuchos::RCP< const Teuchos::ParameterList > | getParameterList () const |
| SensitivityStepMode | getStepMode () const |
| What mode the current time integration step is in. | |
| void | setParams (const Teuchos::RCP< Teuchos::ParameterList > &pl, const Teuchos::RCP< Teuchos::ParameterList > &spl) |
Basic stepper methods | |
| virtual void | setModel (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &appModel) |
| virtual void | setModel (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &appModel, const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &sens_residual_model, const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &sens_solve_model) |
| virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | getModel () const |
| virtual void | setSolver (Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > solver=Teuchos::null) |
| Set solver. | |
| virtual Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > | getSolver () const |
| Get solver. | |
| virtual void | setInitialConditions (const Teuchos::RCP< SolutionHistory< Scalar > > &) |
| Set the initial conditions and make them consistent. | |
| virtual void | takeStep (const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory) |
| Take the specified timestep, dt, and return true if successful. | |
| virtual Teuchos::RCP< Tempus::StepperState< Scalar > > | getDefaultStepperState () |
| Get a default (initial) StepperState. | |
| virtual Scalar | getOrder () const |
| virtual Scalar | getOrderMin () const |
| virtual Scalar | getOrderMax () const |
| virtual Scalar | getInitTimeStep (const Teuchos::RCP< SolutionHistory< Scalar > > &) const |
| virtual bool | isExplicit () const |
| virtual bool | isImplicit () const |
| virtual bool | isExplicitImplicit () const |
| virtual bool | isOneStepMethod () const |
| virtual bool | isMultiStepMethod () const |
| virtual OrderODE | getOrderODE () const |
| virtual void | setUseFSAL (bool a) |
| virtual bool | getUseFSAL () const |
| virtual void | setICConsistency (std::string s) |
| virtual std::string | getICConsistency () const |
| virtual void | setICConsistencyCheck (bool c) |
| virtual bool | getICConsistencyCheck () const |
| virtual void | setInitialGuess (Teuchos::RCP< const Thyra::VectorBase< Scalar > >) |
| Pass initial guess to Newton solver. | |
ParameterList methods | |
| void | setParameterList (const Teuchos::RCP< Teuchos::ParameterList > &pl) |
| Teuchos::RCP< Teuchos::ParameterList > | getNonconstParameterList () |
| Teuchos::RCP< Teuchos::ParameterList > | unsetParameterList () |
| Teuchos::RCP< const Teuchos::ParameterList > | getValidParameters () const |
| Teuchos::RCP< Teuchos::ParameterList > | getDefaultParameters () const |
Additional Inherited Members | |
| virtual void | setStepperX (Teuchos::RCP< Thyra::VectorBase< Scalar > > x) |
| Set x for Stepper storage. | |
| virtual void | setStepperXDot (Teuchos::RCP< Thyra::VectorBase< Scalar > > xDot) |
| Set xDot for Stepper storage. | |
| virtual void | setStepperXDotDot (Teuchos::RCP< Thyra::VectorBase< Scalar > > xDotDot) |
| Set x for Stepper storage. | |
| void | setStepperType (std::string s) |
| Set the stepper type. | |
| bool | useFSAL_ = false |
| Use First-Same-As-Last (FSAL) principle. | |
| bool | isInitialized_ = false |
| True if stepper's member data is initialized. | |
A stepper implementing staggered forward sensitivity analysis.
It constructs two internal steppers, one for the state equations as usual and one for the sensitivity equations using Tempus::StaggeredForwardSensitivityModelEvaluator. It's implementation of takeStep() first takes a step using the state stepper, updates the sensitivity model evaluator with the compute state solution and time derivatives, and then takes a step using the sensitivity stepper. It optionally can reuse the state solver for the sensitivity equations as well.
Definition at line 38 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
| Tempus::StepperStaggeredForwardSensitivity< Scalar >::StepperStaggeredForwardSensitivity | ( | ) |
Default constructor.
Definition at line 26 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
| Tempus::StepperStaggeredForwardSensitivity< Scalar >::StepperStaggeredForwardSensitivity | ( | const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > & | appModel, |
| const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > & | sens_residual_model, | ||
| const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > & | sens_solve_model, | ||
| const Teuchos::RCP< Teuchos::ParameterList > & | pList = Teuchos::null, | ||
| const Teuchos::RCP< Teuchos::ParameterList > & | sens_pList = Teuchos::null ) |
Constructor.
The first parameter list argument supplies supplies regular stepper options, while the second provides sensitivity specific options:
Definition at line 37 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
inlinevirtual |
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 92 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
virtual |
Definition at line 56 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
virtual |
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 99 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
virtual |
Set solver.
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 107 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
inlinevirtual |
Get solver.
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 103 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Set the initial conditions and make them consistent.
Implements Tempus::Stepper< Scalar >.
Definition at line 107 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
virtual |
Take the specified timestep, dt, and return true if successful.
Implements Tempus::Stepper< Scalar >.
Definition at line 119 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
virtual |
Get a default (initial) StepperState.
Implements Tempus::Stepper< Scalar >.
Definition at line 271 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 117 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 118 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 119 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 120 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 124 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 126 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 128 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 131 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 134 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 136 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 138 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Definition at line 139 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Definition at line 142 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Definition at line 144 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Definition at line 148 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Definition at line 150 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inlinevirtual |
Pass initial guess to Newton solver.
Implements Tempus::Stepper< Scalar >.
Definition at line 156 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
| void Tempus::StepperStaggeredForwardSensitivity< Scalar >::setParameterList | ( | const Teuchos::RCP< Teuchos::ParameterList > & | pl | ) |
Definition at line 341 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
| Teuchos::RCP< Teuchos::ParameterList > Tempus::StepperStaggeredForwardSensitivity< Scalar >::getNonconstParameterList | ( | ) |
Definition at line 368 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
| Teuchos::RCP< Teuchos::ParameterList > Tempus::StepperStaggeredForwardSensitivity< Scalar >::unsetParameterList | ( | ) |
Definition at line 377 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
virtual |
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 359 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
| Teuchos::RCP< Teuchos::ParameterList > Tempus::StepperStaggeredForwardSensitivity< Scalar >::getDefaultParameters | ( | ) | const |
|
inlinevirtual |
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 170 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
virtual |
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 283 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
virtual |
Reimplemented from Tempus::Stepper< Scalar >.
Definition at line 309 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
| Teuchos::RCP< const Thyra::VectorSpaceBase< Scalar > > Tempus::StepperStaggeredForwardSensitivity< Scalar >::get_x_space | ( | ) | const |
Definition at line 412 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
inlinevirtual |
Definition at line 180 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
inline |
What mode the current time integration step is in.
Definition at line 184 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
private |
Definition at line 387 of file Tempus_StepperStaggeredForwardSensitivity_impl.hpp.
|
protected |
Definition at line 193 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 194 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 195 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 196 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 197 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 198 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 199 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 200 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 201 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 202 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.
|
protected |
Definition at line 203 of file Tempus_StepperStaggeredForwardSensitivity_decl.hpp.