39 virtual void init()
override;
41 virtual void execute()
override;
309 std::ostringstream & diag,
Moose::TimeIntegratorType _time_scheme
bool atSyncPoint()
Is the current step at a sync point (sync times, time interval, target time, etc)?
Transient executioners usually loop through a number of timesteps...
virtual std::string getTimeIntegratorName() const override
Get the name of the time integrator (time integration scheme) used.
const bool _normalize_solution_diff_norm_by_dt
Whether to divide the solution difference norm by dt.
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.
Real & dtMin()
Get the minimal dt.
virtual void forceNumSteps(const unsigned int num_steps)
Set the number of time steps.
virtual void setTargetTime(Real target_time)
Can be used to set the next "target time" which is a time to nail perfectly.
const bool _check_aux
Whether to use the auxiliary system solution to determine steady-states.
virtual SolveObject * timeStepSolveObject()
Return the solve object wrapped by time stepper.
void parentOutputPositionChanged()
Calls parentOutputPositionChanged() on all sub apps.
FEProblemBase & _problem
Here for backward compatibility.
virtual void init() override
Initialize the executioner.
virtual void setTimeOld(Real t)
Set the old time.
Base class for time stepping.
virtual void execute() override
Pure virtual execute function MUST be overridden by children classes.
virtual void endStep(Real input_time=-1.0)
virtual void postExecute() override
Override this for actions that should take place after execution.
virtual void setTime(Real t)
Set the current time.
Specialization of SubProblem for solving nonlinear equations plus auxiliary equations.
bool _xfem_repeat_step
Whether step should be repeated due to xfem modifying the mesh.
bool _steady_state_detection
Steady state detection variables:
Real & _time_old
Previous time.
Nonlinear system to be solved.
virtual Real getTargetTime()
Get the current target time.
bool & _time_interval
if to use time interval output
Real unconstrainedDT()
Get the unconstrained dt.
virtual void takeStep(Real input_dt=-1.0)
Do whatever is necessary to advance one step.
Transient(const InputParameters ¶meters)
TimeStepper * _time_stepper
std::set< Real > & _sync_times
virtual Real computeConstrainedDT()
virtual bool lastSolveConverged() const override
Whether or not the last solve converged.
NonlinearSystemBase & _nl
Reference to nonlinear system base for faster access.
TimeStepper * getTimeStepper()
Pointer to the TimeStepper.
const TimeStepper * getTimeStepper() const
virtual std::string getTimeStepperName() const override
Get the name of the timestepper.
Executioners are objects that do the actual work of solving your problem.
Real _steady_state_tolerance
void setupTimeIntegrator()
virtual void setTimestepTolerance(const Real &tolerance)
Set the timestep tolerance.
virtual void incrementStepOrReject()
This is where the solve step is actually incremented.
virtual void estimateTimeError()
const bool _error_on_dtmin
This parameter controls how the system will deal with _dt <= _dtmin If true, the time stepper is expe...
Real & _dt
Current delta t... or timestep size.
void parentOutputPositionChanged() override
Can be used by subclasses to call parentOutputPositionChanged() on the underlying FEProblemBase...
virtual void preExecute() override
Override this for actions that should take place before execution.
Real _time_interval_output_interval
Real & _time
Current time.
Real & endTime()
Get a modifiable reference to the end time.
DIE A HORRIBLE DEATH HERE typedef LIBMESH_DEFAULT_SCALAR_TYPE Real
virtual Real getTime() const
Get the current time.
Real & timestepTol()
Get the timestep tolerance.
Class for containing MooseEnum item information.
Moose::TimeIntegratorType getTimeScheme() const
Get the time scheme used.
std::set< Real > & syncTimes()
Get the set of sync times.
Real _steady_state_start_time
void setTimeStepper(TimeStepper &ts)
Set the timestepper to use.
virtual Real relativeSolutionDifferenceNorm()
The relative L2 norm of the difference between solution and old solution vector.
TimeIntegratorType
Time integrators.
virtual bool keepGoing()
Transient loop will continue as long as this keeps returning true.
Real getEndTime() const
Get the end time.
const InputParameters & parameters() const
Get the parameters of the object.
static InputParameters validParams()
Constructor.
Real getStartTime() const
Return the start time.
Real & dtMax()
Get the maximum dt.
AuxiliarySystem & _aux
Reference to auxiliary system base for faster access.
Real & _solution_change_norm
Real _next_interval_output_time
int & _t_step
Current timestep.
A system that holds auxiliary variables.
std::unique_ptr< FixedPointSolve > _fixed_point_solve
bool convergedToSteadyState() const
Determines whether the problem has converged to steady state.
Real getSolutionChangeNorm()
Get the Relative L2 norm of the change in the solution.
FEProblemSolve _feproblem_solve
inner-most solve object to perform Newton solve with PETSc on every time step
bool & _last_solve_converged
Whether or not the last solve converged.
FEProblemBase & _fe_problem