9.6 Stability

A method is useful only if small errors (round-off, or the local truncation errors themselves) are not amplified from step to step. The standard check applies the method to the test equation \[y' = \lambda y,\qquad y(0) = \alpha ,\qquad \lambda <0,\] whose exact solution \(\alpha e^{\lambda t}\) decays. Euler’s method gives \(w_{i+1} = (1+h\lambda )w_i\), so \(w_i = (1+h\lambda )^i\alpha \), which decays only if \(|1+h\lambda |<1\), that is \[h<\frac {2}{|\lambda |} .\] For RK4 one finds \(w_{i+1} = Q(h\lambda )w_i\) with \(Q(z) = 1+z+\frac {z^2}2+\frac {z^3}6+\frac {z^4}{24}\), and \(|Q(z)|<1\) for real \(z\) only when \(-2.785<z<0\). Each explicit method has such a region of absolute stability, and the step size must keep \(h\lambda \) inside it.

Example 9.6.1. Apply Euler’s method and RK4 with \(h = 0.1\) to \(y' = -30y\), \(y(0) = \frac 13\), on \([0,1]\).

Solution. The exact solution \(\frac 13e^{-30t}\) is \(3.1\times 10^{-14}\) at \(t = 1\). Here \(h\lambda = -3\). For Euler, \(1+h\lambda = -2\): the approximations are \(-0.667, 1.333, -2.667, 5.333,\dots \), and \(w_{10} = 341.3\). For RK4, \(Q(-3) = 1.375\), and \(w_{10} = \frac 13(1.375)^{10} = 8.05\). Both methods produce growing oscillations from a solution that decays to zero. The cure is a smaller step: Euler is stable for \(h<\frac {2}{30} = 0.0667\), RK4 for \(h<0.0928\).

Equations whose solutions contain rapidly decaying components, like this one, are called stiff. They force explicit methods to use tiny steps long after the rapid component has died away, and are solved in practice by implicit methods, which have much larger stability regions; these are treated in more advanced courses.

Questions on this section

Stuck on something here? Ask below and it stays attached to this topic.