As soon as one deals with more than one first-order differential equation, the possibility of a stiff set of equations arises. Stiffness occurs in a problem where there are two or more very different scales of the independent variable on which the dependent quantities are varying. For example, consider the following set of equations:
| \begin{equation*} \label{StiffEqua1} \begin{split} u'&=998u+1998v\\ v'&=-999u-1999v \end{split} \end{equation*} | (7.9) |
| \begin{equation*} u(0)=1, \quad v(0)=0. \end{equation*} | (7.10) |
By means of the transformation
| \begin{equation*} u=2y-z, \quad v=-y+z, \end{equation*} | (7.11) |
one finds the solution
| \begin{equation*} \begin{split} u&=2e^{-x}-e^{-1000x},\\ v&=-e^{-x}+e^{-1000x}. \end{split} \end{equation*} | (7.12) |
To see how this problem might be cured, consider the single equation
| \begin{equation*} y'=-cy \end{equation*} | (7.13) |
where \(c\gt 0\) is a constant. The usual (or forward) Euler scheme for integrating this equation with step size \(h\) is
| \begin{equation*} y_{n+1}=y_n+hy'_n=y_n+h(-cy_n)=(1-ch)y_n. \end{equation*} | (7.14) |
The method is also called explicit because the new value \(y_{n+1}\) is given explicitly in terms of the old value \(y_n\). Clearly the method is unstable if \(h\gt 2/c\), for then \(\left|y_n\right|\rightarrow\infty\) as \(n\rightarrow\infty\).
The simplest cure is to resort to implicit differencing, where the right-hand side is evaluated at the new \(y\) location. In this case, one obtains the stable backward Euler scheme:
| \begin{equation*} y_{n+1}=y_n+hy'_{n+1} \end{equation*} | (7.15) |
or
| \begin{equation*} y_{n+1}=\frac{y_n}{1+ch}. \end{equation*} | (7.16) |
![]() |
![]() |
![]() |
![]() |
© J. Carstensen (Comp. Math.)