|
Tempus
Version of the Day
Time Integration
|
Go to the documentation of this file.
9 #ifndef Tempus_StepperTrapezoidal_decl_hpp
10 #define Tempus_StepperTrapezoidal_decl_hpp
12 #include "Tempus_StepperImplicit.hpp"
31 template<
class Scalar>
38 const Teuchos::RCP<
const Thyra::ModelEvaluator<Scalar> >& appModel,
39 Teuchos::RCP<Teuchos::ParameterList> pList = Teuchos::null);
68 virtual void setInitialGuess(Teuchos::RCP<
const Thyra::VectorBase<Scalar> > initial_guess)
72 virtual Teuchos::RCP<Thyra::VectorBase<Scalar> >
getXDotTemp(
73 Teuchos::RCP<Thyra::VectorBase<Scalar> > x);
87 virtual void describe(Teuchos::FancyOStream & out,
88 const Teuchos::EVerbosityLevel verbLevel)
const;
114 template <
typename Scalar>
122 Teuchos::RCP<
const Thyra::VectorBase<Scalar> > xOld,
123 Teuchos::RCP<
const Thyra::VectorBase<Scalar> > xDotOld)
131 Teuchos::RCP<
const Thyra::VectorBase<Scalar> > x,
132 Teuchos::RCP< Thyra::VectorBase<Scalar> > xDot,
133 Teuchos::RCP< Thyra::VectorBase<Scalar> > xDotDot = Teuchos::null)
135 xDotDot = Teuchos::null;
137 Thyra::V_StVpStV(xDot.ptr(),
s_,*x,-
s_,*
xOld_);
138 Thyra::V_VpStV (xDot.ptr(),*xDot,-1.0,*
xDotOld_);
142 Teuchos::RCP<
const Thyra::VectorBase<Scalar> > xOld,
143 Teuchos::RCP<
const Thyra::VectorBase<Scalar> > xDotOld)
149 Teuchos::RCP<const Thyra::VectorBase<Scalar> >
xOld_;
150 Teuchos::RCP<const Thyra::VectorBase<Scalar> >
xDotOld_;
156 #endif // Tempus_StepperTrapezoidal_decl_hpp
virtual bool isMultiStepMethod() const
StepperTrapezoidalTimeDerivative(Scalar s, Teuchos::RCP< const Thyra::VectorBase< Scalar > > xOld, Teuchos::RCP< const Thyra::VectorBase< Scalar > > xDotOld)
Constructor.
Teuchos::RCP< Stepper< Scalar > > predictorStepper_
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const
Teuchos::RCP< SolutionHistory< Scalar > > solutionHistory(Teuchos::RCP< Teuchos::ParameterList > pList=Teuchos::null)
Nonmember constructor.
virtual Teuchos::RCP< Tempus::StepperState< Scalar > > getDefaultStepperState()
Get a default (initial) StepperState.
Teuchos::RCP< StepperTrapezoidalObserver< Scalar > > stepperTrapObserver_
Teuchos::RCP< Teuchos::ParameterList > getDefaultParameters() const
StepperTrapezoidal()
Default Constructor – not allowed.
virtual ~StepperTrapezoidalTimeDerivative()
Destructor.
virtual Scalar getOrder() const
Teuchos::RCP< StepperObserver< Scalar > > stepperObserver_
virtual void initialize()
Initialize during construction and after changing input parameters.
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
virtual void compute(Teuchos::RCP< const Thyra::VectorBase< Scalar > > x, Teuchos::RCP< Thyra::VectorBase< Scalar > > xDot, Teuchos::RCP< Thyra::VectorBase< Scalar > > xDotDot=Teuchos::null)
Compute the time derivative.
Teuchos::RCP< Teuchos::ParameterList > unsetParameterList()
Teuchos::RCP< const Thyra::VectorBase< Scalar > > initial_guess_
StepperObserver class for Stepper class.
Teuchos::RCP< const Thyra::VectorBase< Scalar > > xDotOld_
virtual std::string description() const
virtual void setObserver(Teuchos::RCP< StepperObserver< Scalar > > obs=Teuchos::null)
Set Observer.
virtual void initialize(Scalar s, Teuchos::RCP< const Thyra::VectorBase< Scalar > > xOld, Teuchos::RCP< const Thyra::VectorBase< Scalar > > xDotOld)
Thyra Base interface for implicit time steppers.
virtual bool isExplicit() const
void setParameterList(const Teuchos::RCP< Teuchos::ParameterList > &pl)
virtual bool isImplicit() const
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
virtual void takeStep(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)
Take the specified timestep, dt, and return true if successful.
This interface defines the time derivative connection between an implicit Stepper and WrapperModelEva...
Time-derivative interface for Trapezoidal method.
virtual bool isOneStepMethod() const
virtual Teuchos::RCP< Thyra::VectorBase< Scalar > > getXDotTemp(Teuchos::RCP< Thyra::VectorBase< Scalar > > x)
Provide temporary xDot memory for Stepper if SolutionState doesn't.
Teuchos::RCP< Thyra::VectorBase< Scalar > > xDotTemp_
virtual bool isExplicitImplicit() const
virtual void setInitialGuess(Teuchos::RCP< const Thyra::VectorBase< Scalar > > initial_guess)
Pass initial guess to Newton solver (only relevant for explicit schemes)
Teuchos::RCP< Teuchos::ParameterList > getNonconstParameterList()
Trapezoidal method time stepper.
virtual Scalar getOrderMax() const
Teuchos::RCP< const Thyra::VectorBase< Scalar > > xOld_
virtual Scalar getOrderMin() const