35 virtual void init()
override;
37 virtual void execute()
override;
301 std::ostringstream & diag,
void setTimeStepper(TimeStepper &ts)
Set the timestepper to use.
virtual void preExecute() override
Override this for actions that should take place before execution.
Real & dtMax()
Get the maximum dt.
virtual void postExecute() override
Override this for actions that should take place after execution.
const Real _steady_state_start_time
virtual SolveObject * timeStepSolveObject()
Return the solve object wrapped by time stepper.
virtual void estimateTimeError()
Real _time_interval_output_interval
virtual std::string getTimeStepperName() const override
Get the name of the timestepper.
bool atSyncPoint()
Is the current step at a sync point (sync times, time interval, target time, etc)?
static InputParameters validParams()
virtual void endStep(Real input_time=-1.0)
Real computeSolutionChangeNorm(bool check_aux, bool normalize_by_dt) const
Compute the relative L2 norm of the change in the solution.
virtual void setTargetTime(Real target_time)
Can be used to set the next "target time" which is a time to nail perfectly.
std::optional< Real > _test_restep_time
If the time is greater than this then we fail and repeat if –test-restep is enabled.
bool & _last_solve_converged
Whether or not the last solve converged.
std::set< Real > & _sync_times
virtual void setTimeOld(Real t)
Set the old time.
const TimeStepper * getTimeStepper() const
void setupTimeIntegrator()
std::optional< int > _test_restep_step
The timestep we fail and repeat if –test-restep is enabled.
virtual void setTime(Real t)
Set the current time.
const bool _error_on_dtmin
This parameter controls how the system will deal with _dt <= _dtmin If true, the time stepper is expe...
Base class for time stepping.
Real getStartTime() const
Return the start time.
Real & _time
Current time.
virtual void execute() override
Pure virtual execute function MUST be overridden by children classes.
virtual std::set< TimeIntegrator * > getTimeIntegrators() const =0
Get the time integrators (time integration scheme) used Note that because some systems might be stead...
bool convergedToSteadyState() const
Determines whether the problem has converged to steady state.
std::set< Real > & syncTimes()
Get the set of sync times.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
AuxiliarySystem & _aux
Reference to auxiliary system base for faster access.
TimeStepper * _time_stepper
virtual Real computeConstrainedDT()
FEProblemBase & _problem
Here for backward compatibility.
virtual void setTimestepTolerance(const Real &tolerance)
Set the timestep tolerance.
virtual std::vector< std::string > getTimeIntegratorNames() const override
Get the name of the time integrator (time integration scheme) used.
TransientBase(const InputParameters ¶meters)
virtual bool keepGoing()
Transient loop will continue as long as this keeps returning true.
TimeStepper * getTimeStepper()
Pointer to the TimeStepper.
const bool _steady_state_detection
Steady state detection variables:
bool & _time_interval
if to use time interval output
virtual void takeStep(Real input_dt=-1.0)
Do whatever is necessary to advance one step.
virtual void forceNumSteps(const unsigned int num_steps)
Set the number of time steps.
Real & _time_old
Previous time.
Real unconstrainedDT()
Get the unconstrained dt.
virtual Real getTime() const
Get the current time.
Real & _dt
Current delta t... or timestep size.
Executioners are objects that do the actual work of solving your problem.
Base class for transient executioners that use a FixedPointSolve solve object for multiapp-main app i...
bool _xfem_repeat_step
Whether step should be repeated due to xfem modifying the mesh.
bool _testing_restep
Whether or not the last timestep we solved is being repeated with –test-restep.
virtual Real relativeSolutionDifferenceNorm(bool check_aux) const =0
The relative L2 norm of the difference between solution and old solution vector.
virtual void init() override
Initialize the executioner.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
Real & endTime()
Get a modifiable reference to the end time.
Class for containing MooseEnum item information.
Real & timestepTol()
Get the timestep tolerance.
Moose::TimeIntegratorType _time_scheme
virtual Real getTargetTime()
Get the current target time.
static InputParameters defaultSteadyStateConvergenceParams()
virtual void incrementStepOrReject()
This is where the solve step is actually incremented.
TimeIntegratorType
Time integrators.
Real & dtMin()
Get the minimal dt.
const InputParameters & parameters() const
Get the parameters of the object.
Moose::TimeIntegratorType getTimeScheme() const
Get the time scheme used.
virtual bool lastSolveConverged() const override
Whether or not the last solve converged.
Real getEndTime() const
Get the end time.
void constrainDTFromMultiApp(Real &dt_cur, std::ostringstream &diag, const ExecFlagType &execute_on) const
Constrain the timestep dt_cur by looking at the timesteps for the MultiApps on execute_on.
A system that holds auxiliary variables.
std::unique_ptr< FixedPointSolve > _fixed_point_solve
int & _t_step
Current timestep.
Real _next_interval_output_time
void parentOutputPositionChanged() override
Can be used by subclasses to call parentOutputPositionChanged() on the underlying FEProblemBase...