next up previous contents
Next: Functions provided by MoL Up: MoL Previous: Example   Contents


Time evolution methods provided by MoL

The default method is Iterative Crank-Nicholson. There are many ways of implementing this. The standard "ICN" and "Generic"/"ICN" methods both implement the following, assuming an $N$ iteration method:

$\displaystyle {\bf q}^{(0)}$ $\textstyle =$ $\displaystyle {\bf q}^{n},$ (part107)
$\displaystyle {\bf q}^{(i)}$ $\textstyle =$ $\displaystyle {\bf q}^{(0)} + \frac{\Delta t}{2} {\bf L}({\bf
q}^{(i-1)}), \quad i = 1,\dots,N-1,$ (part108)
$\displaystyle {\bf q}^{(N)}$ $\textstyle =$ $\displaystyle {\bf q}^{(N-1)} + \Delta t {\bf L}({\bf
q}^{(N-1)}),$ (part109)
$\displaystyle {\bf q}^{n+1}$ $\textstyle =$ $\displaystyle {\bf q}^{(N)}$ (part1010)

The ``averaging'' ICN method "ICN-avg" instead calculates intermediate steps before averaging:

$\displaystyle {\bf q}^{(0)}$ $\textstyle =$ $\displaystyle {\bf q}^{n},$ (part1011)
$\displaystyle \tilde{{\bf q}}^{(i)}$ $\textstyle =$ $\displaystyle \frac{1}{2}\left( {\bf q}^{(i)} + {\bf
q}^{n} \right), \quad i = 0,\dots,N-1$ (part1012)
$\displaystyle {\bf q}^{(i)}$ $\textstyle =$ $\displaystyle {\bf q}^{(0)} + \Delta t {\bf L}(\tilde{{\bf
q}}^{(N-1)}),$ (part1013)
$\displaystyle {\bf q}^{n+1}$ $\textstyle =$ $\displaystyle {\bf q}^{(N)}$ (part1014)

The Runge-Kutta methods are those typically used in hydrodynamics by, e.g., Shu and others -- see [5] for example. Explicitly the first order method is the Euler method:

$\displaystyle {\bf q}^{(0)}$ $\textstyle =$ $\displaystyle {\bf q}^{n},$ (part1015)
$\displaystyle {\bf q}^{(1)}$ $\textstyle =$ $\displaystyle {\bf q}^{(0)} + \Delta t {\bf L}(\tilde{{\bf
q}}^{(0)}),$ (part1016)
$\displaystyle {\bf q}^{n+1}$ $\textstyle =$ $\displaystyle {\bf q}^{(1)}.$ (part1017)

The second order method is:
$\displaystyle {\bf q}^{(0)}$ $\textstyle =$ $\displaystyle {\bf q}^{n},$ (part1018)
$\displaystyle {\bf q}^{(1)}$ $\textstyle =$ $\displaystyle {\bf q}^{(0)} + \Delta t {\bf L} ({\bf q}^{(0)}),$ (part1019)
$\displaystyle {\bf q}^{(2)}$ $\textstyle =$ $\displaystyle \frac{1}{2} \left( {\bf q}^{(0)} + {\bf q}^{(1)}
+ \Delta t {\bf L} ({\bf q}^{(1)}) \right),$ (part1020)
$\displaystyle {\bf q}^{n+1}$ $\textstyle =$ $\displaystyle {\bf q}^{(2)}.$ (part1021)

The third order method is:
$\displaystyle {\bf q}^{(0)}$ $\textstyle =$ $\displaystyle {\bf q}^{n},$ (part1022)
$\displaystyle {\bf q}^{(1)}$ $\textstyle =$ $\displaystyle {\bf q}^{(0)} + \Delta t {\bf L} ({\bf q}^{(0)}),$ (part1023)
$\displaystyle {\bf q}^{(2)}$ $\textstyle =$ $\displaystyle \frac{1}{4} \left( 3 {\bf q}^{(0)} + {\bf q}^{(1)} +
\Delta t {\bf L} ({\bf q}^{(1)}) \right),$ (part1024)
$\displaystyle {\bf q}^{(3)}$ $\textstyle =$ $\displaystyle \frac{1}{3} \left( {\bf q}^{(0)} + 2 {\bf
q}^{(2)} + 2 \Delta t {\bf L} ({\bf q}^{(2)}) \right),$ (part1025)
$\displaystyle {\bf q}^{n+1}$ $\textstyle =$ $\displaystyle {\bf q}^{(3)}.$ (part1026)

The fourth order method, which is not strictly TVD, is:
$\displaystyle {\bf q}^{(0)}$ $\textstyle =$ $\displaystyle {\bf q}^{n},$ (part1027)
$\displaystyle {\bf q}^{(1)}$ $\textstyle =$ $\displaystyle {\bf q}^{(0)} + \frac{1}{2} \Delta t {\bf L}
({\bf q}^{(0)}),$ (part1028)
$\displaystyle {\bf q}^{(2)}$ $\textstyle =$ $\displaystyle {\bf q}^{(0)} + \frac{1}{2} \Delta t {\bf L}
({\bf q}^{(1)}),$ (part1029)
$\displaystyle {\bf q}^{(3)}$ $\textstyle =$ $\displaystyle {\bf q}^{(0)} + \Delta t {\bf L} ({\bf
q}^{(2)}),$ (part1030)
$\displaystyle {\bf q}^{(4)}$ $\textstyle =$ $\displaystyle \frac{1}{6} \left( - 2 {\bf q}^{(0)} + 2 {\bf
q}^{(1)} + 4 {\bf q}^{(2)} + 2 {\bf q}^{(3)} + \Delta t{\bf L}
({\bf q}^{(3)}) \right),$ (part1031)
$\displaystyle {\bf q}^{n+1}$ $\textstyle =$ $\displaystyle {\bf q}^{(4)}.$ (part1032)


next up previous contents
Next: Functions provided by MoL Up: MoL Previous: Example   Contents