Tempus
Version of the Day
Time Integration
|
Thyra Base interface for implicit time steppers. More...
#include <Tempus_StepperExplicit_decl.hpp>
Public Member Functions | |
Basic explicit stepper methods | |
virtual void | setModel (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &appModel) |
virtual void | setNonConstModel (const Teuchos::RCP< Thyra::ModelEvaluator< Scalar > > &appModel) |
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | getModel () |
virtual Scalar | getInitTimeStep (const Teuchos::RCP< SolutionHistory< Scalar > > &) const |
virtual void | setInitialConditions (const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory) |
Set the initial conditions, make them consistent, and set needed memory. More... | |
virtual void | setSolver (std::string solverName) |
Set solver via ParameterList solver name. More... | |
virtual void | setSolver (Teuchos::RCP< Teuchos::ParameterList > solverPL=Teuchos::null) |
Set solver via solver ParameterList. More... | |
virtual void | setSolver (Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > solver) |
Set solver. More... | |
virtual Teuchos::RCP < Thyra::NonlinearSolverBase < Scalar > > | getSolver () const |
Get solver. More... | |
virtual std::string | getStepperType () const |
virtual void | setInitialGuess (Teuchos::RCP< const Thyra::VectorBase< Scalar > >) |
Pass initial guess to Newton solver (only relevant for implicit solvers) More... | |
virtual bool | isExplicit () const |
virtual bool | isImplicit () const |
virtual bool | isExplicitImplicit () const |
virtual bool | isOneStepMethod () const |
virtual bool | isMultiStepMethod () const |
virtual bool | getEmbedded () 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 | setStepperX (Teuchos::RCP< Thyra::VectorBase< Scalar > > x) |
Set x for Stepper storage. More... | |
virtual void | setStepperXDot (Teuchos::RCP< Thyra::VectorBase< Scalar > > xDot) |
Set xDot for Stepper storage. More... | |
virtual void | setStepperXDotDot (Teuchos::RCP< Thyra::VectorBase< Scalar > > xDotDot) |
Set x for Stepper storage. More... | |
virtual Teuchos::RCP < Thyra::VectorBase< Scalar > > | getStepperX (Teuchos::RCP< SolutionState< Scalar > > state) |
Get x from SolutionState or Stepper storage. More... | |
virtual Teuchos::RCP < Thyra::VectorBase< Scalar > > | getStepperXDot (Teuchos::RCP< SolutionState< Scalar > > state) |
Get xDot from SolutionState or Stepper storage. More... | |
virtual Teuchos::RCP < Thyra::VectorBase< Scalar > > | getStepperXDotDot (Teuchos::RCP< SolutionState< Scalar > > state) |
Get xDotDot from SolutionState or Stepper storage. More... | |
virtual void | evaluateExplicitODE (Teuchos::RCP< Thyra::VectorBase< Scalar > > xDot, Teuchos::RCP< const Thyra::VectorBase< Scalar > > x, const Scalar time) |
Evaluate xDot = f(x,t). More... | |
virtual void | evaluateExplicitODE (Teuchos::RCP< Thyra::VectorBase< Scalar > > xDotDot, Teuchos::RCP< const Thyra::VectorBase< Scalar > > x, Teuchos::RCP< const Thyra::VectorBase< Scalar > > xDot, const Scalar time) |
Evaluate xDotDot = f(x, xDot, t). More... | |
Public Member Functions inherited from Tempus::Stepper< Scalar > | |
virtual void | modelWarning () const |
virtual void | setObserver (Teuchos::RCP< StepperObserver< Scalar > > obs=Teuchos::null)=0 |
Set Observer. More... | |
virtual void | initialize ()=0 |
Initialize during construction and after changing input parameters. More... | |
virtual void | takeStep (const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)=0 |
Take the specified timestep, dt, and return true if successful. More... | |
virtual Teuchos::RCP < Tempus::StepperState< Scalar > > | getDefaultStepperState ()=0 |
virtual Scalar | getOrder () const =0 |
virtual Scalar | getOrderMin () const =0 |
virtual Scalar | getOrderMax () const =0 |
virtual Teuchos::RCP < Teuchos::ParameterList > | getDefaultParameters () const =0 |
virtual OrderODE | getOrderODE () const =0 |
void | getValidParametersBasic (Teuchos::RCP< Teuchos::ParameterList > pl) const |
virtual void | createSubSteppers (std::vector< Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > >) |
void | validExplicitODE (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model) const |
Validate that the model supports explicit ODE evaluation, f(x,t) [=xdot]. More... | |
void | validSecondOrderExplicitODE (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model) const |
Validate that the model supports explicit second order ODE evaluation, f(x,xdot,t) [=xdotdot]. More... | |
void | validImplicitODE_DAE (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model) const |
Validate ME supports implicit ODE/DAE evaluation, f(xdot,x,t) [= 0]. More... | |
void | validSecondOrderODE_DAE (const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &model) const |
Validate ME supports 2nd order implicit ODE/DAE evaluation, f(xdotdot,xdot,x,t) [= 0]. More... | |
Teuchos::RCP < Teuchos::ParameterList > | defaultSolverParameters () const |
Protected Attributes | |
Teuchos::RCP < Teuchos::ParameterList > | stepperPL_ |
Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > | appModel_ |
Explicit ODE ModelEvaluator. More... | |
Thyra::ModelEvaluatorBase::InArgs < Scalar > | inArgs_ |
Thyra::ModelEvaluatorBase::OutArgs < Scalar > | outArgs_ |
Teuchos::RCP< StepperObserver < Scalar > > | stepperObserver_ |
Teuchos::RCP < Thyra::VectorBase< Scalar > > | stepperX_ |
Teuchos::RCP < Thyra::VectorBase< Scalar > > | stepperXDot_ |
Teuchos::RCP < Thyra::VectorBase< Scalar > > | stepperXDotDot_ |
Thyra Base interface for implicit time steppers.
Definition at line 23 of file Tempus_StepperExplicit_decl.hpp.
|
virtual |
Evaluate xDot = f(x,t).
Definition at line 312 of file Tempus_StepperExplicit_impl.hpp.
|
virtual |
Evaluate xDotDot = f(x, xDot, t).
Definition at line 336 of file Tempus_StepperExplicit_impl.hpp.
|
inlinevirtual |
Definition at line 70 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 83 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 93 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Reimplemented in Tempus::StepperExplicitRK< Scalar >, Tempus::StepperLeapfrog< Scalar >, and Tempus::StepperNewmarkExplicitAForm< Scalar >.
Definition at line 36 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 34 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Get solver.
Implements Tempus::Stepper< Scalar >.
Definition at line 52 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Reimplemented in Tempus::StepperExplicitRK< Scalar >, Tempus::StepperLeapfrog< Scalar >, and Tempus::StepperNewmarkExplicitAForm< Scalar >.
Definition at line 55 of file Tempus_StepperExplicit_decl.hpp.
|
virtual |
Get x from SolutionState or Stepper storage.
Definition at line 264 of file Tempus_StepperExplicit_impl.hpp.
|
virtual |
Get xDot from SolutionState or Stepper storage.
Definition at line 280 of file Tempus_StepperExplicit_impl.hpp.
|
virtual |
Get xDotDot from SolutionState or Stepper storage.
Definition at line 296 of file Tempus_StepperExplicit_impl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 74 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Reimplemented in Tempus::StepperExplicitRK< Scalar >, Tempus::StepperLeapfrog< Scalar >, and Tempus::StepperNewmarkExplicitAForm< Scalar >.
Definition at line 63 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Reimplemented in Tempus::StepperExplicitRK< Scalar >, Tempus::StepperLeapfrog< Scalar >, and Tempus::StepperNewmarkExplicitAForm< Scalar >.
Definition at line 65 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Reimplemented in Tempus::StepperExplicitRK< Scalar >, Tempus::StepperLeapfrog< Scalar >, and Tempus::StepperNewmarkExplicitAForm< Scalar >.
Definition at line 64 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Reimplemented in Tempus::StepperExplicitRK< Scalar >, Tempus::StepperLeapfrog< Scalar >, and Tempus::StepperNewmarkExplicitAForm< Scalar >.
Definition at line 68 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Reimplemented in Tempus::StepperExplicitRK< Scalar >, Tempus::StepperLeapfrog< Scalar >, and Tempus::StepperNewmarkExplicitAForm< Scalar >.
Definition at line 67 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 81 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 91 of file Tempus_StepperExplicit_decl.hpp.
|
virtual |
Set the initial conditions, make them consistent, and set needed memory.
Implements Tempus::Stepper< Scalar >.
Reimplemented in Tempus::StepperExplicitRK< Scalar >, Tempus::StepperLeapfrog< Scalar >, Tempus::StepperNewmarkExplicitAForm< Scalar >, and Tempus::StepperForwardEuler< Scalar >.
Definition at line 36 of file Tempus_StepperExplicit_impl.hpp.
|
inlinevirtual |
Pass initial guess to Newton solver (only relevant for implicit solvers)
Implements Tempus::Stepper< Scalar >.
Definition at line 60 of file Tempus_StepperExplicit_decl.hpp.
|
virtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 17 of file Tempus_StepperExplicit_impl.hpp.
|
virtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 29 of file Tempus_StepperExplicit_impl.hpp.
|
virtual |
Set solver via ParameterList solver name.
Implements Tempus::Stepper< Scalar >.
Definition at line 230 of file Tempus_StepperExplicit_impl.hpp.
|
virtual |
Set solver via solver ParameterList.
Implements Tempus::Stepper< Scalar >.
Definition at line 240 of file Tempus_StepperExplicit_impl.hpp.
|
virtual |
Set solver.
Implements Tempus::Stepper< Scalar >.
Definition at line 251 of file Tempus_StepperExplicit_impl.hpp.
|
inlinevirtual |
Set x for Stepper storage.
Definition at line 102 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Set xDot for Stepper storage.
Definition at line 105 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Set x for Stepper storage.
Definition at line 108 of file Tempus_StepperExplicit_decl.hpp.
|
inlinevirtual |
Implements Tempus::Stepper< Scalar >.
Definition at line 73 of file Tempus_StepperExplicit_decl.hpp.
|
protected |
Explicit ODE ModelEvaluator.
Definition at line 141 of file Tempus_StepperExplicit_decl.hpp.
|
protected |
Definition at line 143 of file Tempus_StepperExplicit_decl.hpp.
|
protected |
Definition at line 144 of file Tempus_StepperExplicit_decl.hpp.
|
protected |
Definition at line 146 of file Tempus_StepperExplicit_decl.hpp.
|
protected |
Definition at line 138 of file Tempus_StepperExplicit_decl.hpp.
|
protected |
Definition at line 149 of file Tempus_StepperExplicit_decl.hpp.
|
protected |
Definition at line 150 of file Tempus_StepperExplicit_decl.hpp.
|
protected |
Definition at line 151 of file Tempus_StepperExplicit_decl.hpp.