9 #ifndef Tempus_StepperOperatorSplit_decl_hpp
10 #define Tempus_StepperOperatorSplit_decl_hpp
12 #include "Tempus_config.hpp"
13 #include "Tempus_Stepper.hpp"
64 template<
class Scalar>
81 std::string ICConsistency,
82 bool ICConsistencyCheck,
99 {
return Teuchos::null; }
132 {
return Scalar(1.0e+99);}
140 typename std::vector<Teuchos::RCP<Stepper<Scalar> > >::const_iterator
143 if ( (*subStepperIter)->isExplicit() ) isExplicit =
true;
150 typename std::vector<Teuchos::RCP<Stepper<Scalar> > >::const_iterator
153 if ( (*subStepperIter)->isImplicit() ) isImplicit =
true;
162 typename std::vector<Teuchos::RCP<Stepper<Scalar> > >::const_iterator
165 if ( !(*subStepperIter)->isOneStepMethod() ) isOneStepMethod =
false;
199 bool useFSAL =
false);
225 template<
class Scalar>
234 #endif // Tempus_StepperOperatorSplit_decl_hpp
virtual Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > getSolver() const
Get solver.
virtual void setInitialGuess(Teuchos::RCP< const Thyra::VectorBase< Scalar > >)
Pass initial guess to Newton solver.
virtual void setOrderMin(Scalar o)
virtual Teuchos::RCP< StepperOperatorSplitAppAction< Scalar > > getAppAction() const
Teuchos::RCP< StepperOperatorSplit< Scalar > > createStepperOperatorSplit(std::vector< Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > > appModels, Teuchos::RCP< Teuchos::ParameterList > pl)
Nonmember constructor - ModelEvaluator and ParameterList.
virtual void addStepper(Teuchos::RCP< Stepper< Scalar > > stepper, bool useFSAL=false)
Add Stepper to subStepper list. In most cases, subSteppers cannot use xDotOld (thus the default)...
virtual Scalar getInitTimeStep(const Teuchos::RCP< SolutionHistory< Scalar > > &) const
std::vector< Teuchos::RCP< Stepper< Scalar > > > subStepperList_
virtual bool isOneStepMethod() const
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
virtual void setModel(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &appModel)
virtual void setSolver(Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > solver)
Set solver.
virtual Scalar getOrder() const
virtual Teuchos::RCP< Tempus::StepperState< Scalar > > getDefaultStepperState()
Get a default (initial) StepperState.
virtual void setModels(std::vector< Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > > appModels)
virtual bool isExplicit() const
virtual void setOrder(Scalar o)
virtual Scalar getOrderMax() const
bool isInitialized_
True if stepper's member data is initialized.
virtual void setUseFSAL(bool a)
OperatorSplit stepper loops through the Stepper list.
Thyra Base interface for time steppers.
virtual void clearSubStepperList()
virtual bool isMultiStepMethod() const
StepperOperatorSplit()
Default constructor.
Teuchos::RCP< SolutionState< Scalar > > tempState_
virtual bool isImplicit() const
virtual void setAppAction(Teuchos::RCP< StepperOperatorSplitAppAction< Scalar > > appAction)
virtual void setTempState(Teuchos::RCP< Tempus::SolutionState< Scalar >> state)
void createSubSteppers(std::vector< Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > > appModels, Teuchos::RCP< Teuchos::ParameterList > pl)
bool useFSAL_
Use First-Same-As-Last (FSAL) principle.
virtual bool isExplicitImplicit() const
Teuchos::RCP< StepperOperatorSplitAppAction< Scalar > > stepperOSAppAction_
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > getModel() const
virtual void setStepperList(std::vector< Teuchos::RCP< Stepper< Scalar > > > sl)
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
virtual void setInitialConditions(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)
Set the initial conditions and make them consistent.
Teuchos::RCP< SolutionHistory< Scalar > > OpSpSolnHistory_
Stepper integrates first-order ODEs.
virtual void setOrderMax(Scalar o)
StepperOperatorSplitAppAction class for StepperOperatorSplit.
virtual bool isValidSetup(Teuchos::FancyOStream &out) const
virtual Scalar getOrderMin() const
virtual OrderODE getOrderODE() const
virtual void takeStep(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)
Take the specified timestep, dt, and return true if successful.
virtual void initialize()
Initialize during construction and after changing input parameters.
Solution state for integrators and steppers.
virtual std::vector< Teuchos::RCP< Stepper< Scalar > > > getStepperList() const
virtual void setSubStepperList(std::vector< Teuchos::RCP< Stepper< Scalar > > > subStepperList)