ImplicitEuler

This is the default time integrator in MOOSE. It is first-order in time, and L-stable, making it suitable to integrate stiff equation systems. It is also known as the backwards Euler method.

Description

With UU, the vector of nonlinear variables, and AA, a nonlinear operator, we write the PDE of interest as:

Ut=A(t,U(t))\dfrac{\partial U}{\partial t} = A(t, U(t))

Using t+Δtt+\Delta t for the current time step, and tt for the previous step, the implicit Euler time integration scheme can be written:

U(t+Δt)=U(t)+ΔtA(t+Δt,U(t+Δt))U(t+\Delta t) = U(t) + \Delta t A(t+\Delta t, U(t+\Delta t))

This is an implicit system with U(t+Δt)U(t+\Delta t), the variable to solve for, appearing on both sides of the equation. We solve this system iteratively, usually with a Newton or Newton-Krylov method as described in the non linear system solve documentation.

Input Parameters

  • variablesA subset of the variables that this time integrator should be applied to

    C++ Type:std::vector<VariableName>

    Unit:(no unit assumed)

    Controllable:No

    Description:A subset of the variables that this time integrator should be applied to

Optional Parameters

  • control_tagsAdds user-defined labels for accessing object parameters via control logic.

    C++ Type:std::vector<std::string>

    Unit:(no unit assumed)

    Controllable:No

    Description:Adds user-defined labels for accessing object parameters via control logic.

  • enableTrueSet the enabled status of the MooseObject.

    Default:True

    C++ Type:bool

    Unit:(no unit assumed)

    Controllable:No

    Description:Set the enabled status of the MooseObject.

Advanced Parameters