47 bool operator()(
const std::pair<Real, TimeStepper *> & a,
48 const std::pair<Real, TimeStepper *> & b)
const 50 return a.first < b.first;
60 std::set<std::pair<Real, TimeStepper *>, CompareFirst> & bound_dts);
69 virtual void init() override final;
71 virtual
void preSolve() override final;
74 virtual
void preStep() override final;
75 virtual
void postStep() override final;
85 virtual
void step() override final;
100 virtual
bool converged() const override final;
107 template <typename Lambda>
TimeStepper * _largest_bound_time_stepper
static InputParameters compositionDTParams()
virtual void preStep() override final
virtual void rejectStep() override final
This gets called when time step is rejected for all input time steppers.
TimeStepper * _current_time_stepper
const bool _has_initial_dt
bool operator()(const std::pair< Real, TimeStepper *> &a, const std::pair< Real, TimeStepper *> &b) const
TimeSequenceStepperBase * _closest_time_sequence_stepper
virtual void postStep() override final
virtual void preSolve() override final
void actOnTimeSteppers(Lambda &&act)
Base class for time stepping.
virtual void step() override final
Functions called after the current DT is computed.
static InputParameters validParams()
Comparator for sorting by the value of dt for the TimeStepper sets which stored the pairs of the dt a...
A TimeStepper that takes time steppers as inputs and computes the minimum time step size among all ti...
virtual bool converged() const override final
The _current_time_stepper is used to check whether convergence was reached on the time step...
Real produceCompositionDT(std::set< std::pair< Real, TimeStepper *>, CompareFirst > &dts, std::set< std::pair< Real, TimeStepper *>, CompareFirst > &bound_dts)
Find the composed time step size by selecting the minimum value and compare it with the lower bound i...
virtual void preExecute() override final
virtual void acceptStep() override final
This gets called when time step is accepted for all input time steppers.
const std::set< std::string > _lower_bound
std::vector< TimeStepper * > getTimeSteppers()
Internal method for querying TheWarehouse for the currently active timesteppers.
CompositionDT(const InputParameters ¶meters)
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Solves the PDEs at a sequence of given time points.
Real getSequenceSteppersNextTime()
virtual Real computeDT() override final
Computes time step size after the initial time step.
const InputParameters & parameters() const
Get the parameters of the object.
virtual void postExecute() override final
virtual void init() override final
Initialize all the input time stepper(s).
virtual Real computeInitialDT() override final
Computes time step size for the initial time step.
virtual bool constrainStep(Real &dt) override final
Called after computeStep() is called.
virtual void postSolve() override final