LStableDirk4

Fourth-order diagonally implicit Runge Kutta method (Dirk) with five stages.

This method can be expressed as a Runge-Kutta method with the following Butcher Tableau:

αα1/41/401/41/41/21/81/81/413/23/43/21/4101/62/31/121/401/62/31/121/4\begin{array}{c|ccccc} \alpha & \alpha\\ 1/4 & 1/4 \\ 0 & -1/4 & 1/4 \\ 1/2 & 1/8 & 1/8 & 1/4 \\ 1 & -3/2 & 3/4 & 3/2 & 1/4 \\ 1 & 0 & 1/6 & 2/3 & -1/12 & 1/4 \\ \hline & 0 & 1/6 & 2/3 & -1/12 & 1/4 \\ \end{array}

The stability function for this method is:

R(z)=28z4+32z3384z2768z+30723z560z4+480z31920z2+3840z3072R(z) = -\dfrac{28 z^4 + 32 z^3 - 384 z^2 - 768 z + 3072}{ 3 z^5 - 60 z^4 + 480 z^3 - 1920 z^2 + 3840 z - 3072}

The method is L-stable:

limz>R(z)=0\lim_{z->\infty} R(z) = 0

Notes

The method was found in Skvortsov (2006) but it may not be the original source. There is also a 4th-order rule with 5 stages on page 107 of Hairer and Wanner (1999) but its coefficients have less favorable "amplification factors" than the present rule.

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

References

  1. E. Hairer and G. Wanner. Vol. 2: Stiff and Differential-Algebraic Problems : Solving Ordinary Differential Equations. Volume 2. Springer, Berlin, 1999.[BibTeX]
  2. L. M. Skvortsov. Diagonally implicit runge-kutta methods for stiff problems. Computational Mathematics and Mathematical Physics, 46(12):2110–2123, 2006.[BibTeX]