option | definition |
---|---|
l_tol |
Linear Tolerance |
l_max_its |
Max Linear Iterations |
nl_rel_tol |
Nonlinear Relative Tolerance |
nl_abs_tol |
Nonlinear Absolute Tolerance |
nl_max_its |
Max Nonlinear Iterations |
option | definition |
---|---|
dt |
Starting time step size |
num_steps |
Number of time steps |
start_time |
The start time of the simulation |
end_time |
The end time of the simulation |
scheme |
Time integration scheme (discussed next) |
option | definition |
---|---|
trans_ss_check |
Whether to try and detect achievement of steady-state (Default = false ) |
ss_check_tol |
Used for determining a steady-state; Compared against the difference in solution vectors between current and old time steps (Default = 1e-8 ) |
Note that if you have things like piecewise-constant transient forcing functions, you may achieve temporary steady-states and may not want to terminate the simulation at those points. In this case a better solution may be to set an nl_abs_tol
which will allow your simulation to converge in 0 non-linear iterations during periodic steady-states, but will also allow your simulation to solve as usual when your forcing functions are perturbed.
MOOSE provides the following implicit TimeIntegrators
:
And these explicit TimeIntegrators
:
Each one of these supports adaptive time stepping.
TimeDerivative
Kernel object.TimeDerivative
Kernel in MOOSE.computeQpResidual/Jacobian()
return the product of your coefficient and TimeDerivative::computeQpResidual/Jacobian()
.TimeDerivative
Kernels.Real time
: The start time for the simulation.Real dt
: The initial time step size.string scheme
: Time integrator scheme'crank-nicolson'
'backward-euler'
-- default if you do not specify the scheme'bdf2'
Consider the test problem: $$$$\begin{array}{rl} \frac{\partial u}{\partial t} - \nabla^2 u &= f \\ u(t=0)&= u_0 \\ \left. u \right|_{\partial \Omega} &= u_D \end{array}$$$$ for $$$t=(0,T]$$$, and $$$\Omega=(-1,1)^2$$$
$$$f$$$ is chosen so the exact solution is given by $$$u = t^3 (x^2 + y^2)$$$
Look at Example 6