|
Tempus
Version of the Day
Time Integration
|
Go to the documentation of this file.
9 #ifndef Tempus_StepperOperatorSplit_decl_hpp
10 #define Tempus_StepperOperatorSplit_decl_hpp
12 #include "Tempus_config.hpp"
34 template<
class Scalar>
41 std::vector<Teuchos::RCP<
const Thyra::ModelEvaluator<Scalar> > > appModels,
42 Teuchos::RCP<Teuchos::ParameterList> pList);
50 const Teuchos::RCP<
const Thyra::ModelEvaluator<Scalar> >& appModel);
52 const Teuchos::RCP<Thyra::ModelEvaluator<Scalar> >& appModel);
53 virtual Teuchos::RCP<const Thyra::ModelEvaluator<Scalar> >
56 virtual void setSolver(std::string solverName);
58 Teuchos::RCP<Teuchos::ParameterList> solverPL=Teuchos::null);
60 Teuchos::RCP<Thyra::NonlinearSolverBase<Scalar> > solver);
61 virtual Teuchos::RCP<Thyra::NonlinearSolverBase<Scalar> >
getSolver()
const
62 {
return Teuchos::null; }
77 Teuchos::RCP<
const Thyra::VectorBase<Scalar> > initial_guess)
81 {
return stepperPL_->get<std::string>(
"Stepper Type"); }
88 {
return stepperPL_->get<
int>(
"Minimum Order");}
90 {
return stepperPL_->get<
int>(
"Maximum Order");}
93 {
return std::numeric_limits<Scalar>::max();}
104 typename std::vector<Teuchos::RCP<Stepper<Scalar> > >::const_iterator
107 if ( (*subStepperIter)->isExplicit() )
isExplicit =
true;
114 typename std::vector<Teuchos::RCP<Stepper<Scalar> > >::const_iterator
117 if ( (*subStepperIter)->isImplicit() )
isImplicit =
true;
126 typename std::vector<Teuchos::RCP<Stepper<Scalar> > >::const_iterator
148 virtual void describe(Teuchos::FancyOStream & out,
149 const Teuchos::EVerbosityLevel verbLevel)
const;
161 std::vector<Teuchos::RCP<
const Thyra::ModelEvaluator<Scalar> > > appModels);
176 #endif // Tempus_StepperOperatorSplit_decl_hpp
virtual Teuchos::RCP< Thyra::NonlinearSolverBase< Scalar > > getSolver() const
Get solver.
Teuchos::RCP< Teuchos::ParameterList > getDefaultParameters() const
Teuchos::RCP< SolutionHistory< Scalar > > solutionHistory(Teuchos::RCP< Teuchos::ParameterList > pList=Teuchos::null)
Nonmember constructor.
Teuchos::RCP< SolutionHistory< Scalar > > OpSpSolnHistory_
Teuchos::RCP< StepperOperatorSplitObserver< Scalar > > stepperOSObserver_
virtual void setOrder(Scalar ord)
virtual std::string getStepperType() const
virtual bool isImplicit() const
Teuchos::RCP< const Thyra::VectorBase< Scalar > > initial_guess_
virtual std::vector< Teuchos::RCP< Stepper< Scalar > > > getStepperList() const
Teuchos::RCP< SolutionState< Scalar > > tempState_
virtual void setSolver(std::string solverName)
Set solver via ParameterList solver name.
virtual Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > getModel()
virtual Scalar getOrder() const
virtual void describe(Teuchos::FancyOStream &out, const Teuchos::EVerbosityLevel verbLevel) const
std::vector< Teuchos::RCP< Stepper< Scalar > > > subStepperList_
virtual void setModel(const Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > &appModel)
virtual void initialize()
Initialize during construction and after changing input parameters.
virtual void setNonConstModel(const Teuchos::RCP< Thyra::ModelEvaluator< Scalar > > &appModel)
StepperObserver class for Stepper class.
virtual void createSubSteppers(std::vector< Teuchos::RCP< const Thyra::ModelEvaluator< Scalar > > > appModels)
Take models and ParameterList and create subSteppers.
Solution state for integrators and steppers. SolutionState contains the metadata for solutions and th...
Teuchos::RCP< Teuchos::ParameterList > getNonconstParameterList()
OperatorSplit stepper loops through the Stepper list.
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 > stepperPL_
virtual void setOrderMax(Scalar ord)
StepperOperatorSplit()
Constructor which is setup except for models and steppers (i.e., addStepper()), and an initialize() b...
virtual void setObserver(Teuchos::RCP< StepperObserver< Scalar > > obs=Teuchos::null)
Set Observer.
virtual bool isExplicit() const
Teuchos::RCP< const Teuchos::ParameterList > getValidParameters() const
Teuchos::RCP< Teuchos::ParameterList > unsetParameterList()
virtual void addStepper(Teuchos::RCP< Stepper< Scalar > > stepper)
SolutionHistory is basically a container of SolutionStates. SolutionHistory maintains a collection of...
Thyra Base interface for time steppers.
virtual Teuchos::RCP< Tempus::StepperState< Scalar > > getDefaultStepperState()
Get a default (initial) StepperState.
virtual bool isOneStepMethod() const
virtual void takeStep(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory)
Take the specified timestep, dt, and return true if successful.
virtual void setStepperList(std::vector< Teuchos::RCP< Stepper< Scalar > > > sl)
virtual Scalar getInitTimeStep(const Teuchos::RCP< SolutionHistory< Scalar > > &solutionHistory) const
virtual void clearStepperList()
void setParameterList(const Teuchos::RCP< Teuchos::ParameterList > &pl)
virtual Scalar getOrderMax() const
virtual bool isMultiStepMethod() const
virtual void setTempState(Teuchos::RCP< Tempus::SolutionState< Scalar >> state)
virtual void setOrderMin(Scalar ord)
virtual std::string description() const
virtual Scalar getOrderMin() const
virtual bool isExplicitImplicit() const