30 #ifndef RYTHMOS_RAMPING_INTEGRATION_CONTROL_STRATEGY_DECL_HPP
31 #define RYTHMOS_RAMPING_INTEGRATION_CONTROL_STRATEGY_DECL_HPP
34 #include "Rythmos_IntegrationControlStrategyBase.hpp"
35 #include "Rythmos_StepperBase.hpp"
36 #include "Rythmos_StepControlInfo.hpp"
37 #include "Teuchos_ParameterListAcceptorDefaultBase.hpp"
47 template<
class Scalar>
50 virtual public Teuchos::ParameterListAcceptorDefaultBase
80 RCP<IntegrationControlStrategyBase<Scalar> >
93 const int timeStepIter
100 const int timeStepIter,
108 bool take_variable_steps_;
109 int num_constant_steps_;
110 int num_ramping_steps_;
114 Scalar ramping_factor_;
115 int num_step_failures_;
116 int max_step_failures_;
122 static const std::string take_variable_steps_name_;
123 static const bool take_variable_steps_default_;
125 static const std::string num_constant_steps_name_;
126 static const int num_constant_steps_default_;
128 static const std::string num_ramping_steps_name_;
129 static const int num_ramping_steps_default_;
131 static const std::string initial_dt_name_;
132 static const double initial_dt_default_;
134 static const std::string min_dt_name_;
135 static const double min_dt_default_;
137 static const std::string max_dt_name_;
138 static const double max_dt_default_;
140 static const std::string ramping_factor_name_;
141 static const double ramping_factor_default_;
143 static const std::string max_step_failures_name_;
144 static const int max_step_failures_default_;
153 template<
class Scalar>
154 RCP<RampingIntegrationControlStrategy<Scalar> >
155 rampingIntegrationControlStrategy();
162 template<
class Scalar>
163 RCP<RampingIntegrationControlStrategy<Scalar> >
164 rampingIntegrationControlStrategy(
const RCP<ParameterList> ¶mList );
171 #endif // RYTHMOS_RAMPING_INTEGRATION_CONTROL_STRATEGY_DECL_HPP
void resetIntegrationControlStrategy(const TimeRange< Scalar > &integrationTimeDomain)
RampingIntegrationControlStrategy()
Constructors/Initializers.
Base class for defining stepper functionality.
Simple struct to aggregate integration/stepper control information.
Base class for strategy objects that control integration by selecting step sizes for a stepper...
bool handlesFailedTimeSteps() const
Overridden from IntegrationControlStrategyBase.
bool resetForFailedTimeStep(const StepperBase< Scalar > &stepper, const StepControlInfo< Scalar > &stepCtrlInfoLast, const int timeStepIter, const StepControlInfo< Scalar > &stepCtrlInfo)
Controls inital ramping at a fixed or incrementing time step size.
void setParameterList(RCP< ParameterList > const ¶mList)
RCP< const ParameterList > getValidParameters() const
RCP< IntegrationControlStrategyBase< Scalar > > cloneIntegrationControlStrategy() const
StepControlInfo< Scalar > getNextStepControlInfo(const StepperBase< Scalar > &stepper, const StepControlInfo< Scalar > &stepCtrlInfoLast, const int timeStepIter)