Stiffness and stability

As we see in the previous example, due to the change of the system parameters, the problem may become difficult to solve, in the sense that significantly reduced step size and thereby much increased computing time will be needed for the numerical solution to remain bounded. Such problems are said to be stiff, which is hard to be strictly defined mathematically. One way to measure the stiffness of a given problem is the stiffness ratio defined as $Re(s_{max})/Re(s_{min})$, where $\lambda_{max}$ and $\lambda_{min}$ are respectively the eigenvalues of the coefficient matrix ${\bf A}$ with most negative and least negative real part, assuming all eigenvalues have negative real parts. In the example above, the stiffness ratios corresponding to the four sets of parameters are 1, 10, 100, and 1000, i.e., the problem becomes progressively more stiff measured by this particular paramter.

The stiffness of a differential equation is not strictly defined mathematically. Some descriptive and commonly accepted criteria for the stiffness are listed below. They are not necessarily independent of each other, instead, they may be considered as different aspects of the same phenomenon.

From the last example we also see that even if the given DE is stiff, requiring small step size and long computing time for the numerical methods used to remain stable, there are some methods, such as the backward Euler's method, that are stable, as the numerical solution they produce will not grow without bound, although the order of their error is not necessarily high, and the step size is not necessarily small. We therefore see that the accuracy in terms of the order of the truncation error and the stability are two different characteristics of a specific method. A stable method of low order of error such as the backward Euler method may be more stable than a method with higher order of error such as RK4. We need to have a way to measure the stability of a specific method. To do so, we consider a simple test equation:

$\displaystyle \frac{d}{dt} y(t)=f(t,y(t))=\lambda y(t),\;\;\;\;\;\;y(0)=y_0$ (318)

where the initial value $y_0$ is real and $\lambda$ is assumed to be complex in general. The closed form solution of this equation is $y(t)=y_0e^{\lambda t}$, which converges if $Re(\lambda)<0$:

$\displaystyle \lim\limits_{t \rightarrow \infty}\big\vert y(t)\big\vert=\left\{...
...(\lambda)<0 \\ y_0 & Re(\lambda)=0 \\ \infty & Re(\lambda)>0
\end{array}\right.$ (319)

The stability of a specific method can now be measured by applying it to this test equation, in terms of its region of absolute stability (RAS), defined as the region on the complex plane, any value $h\lambda$ in which corresponds to a bounded solution of the differential equation. If, in particular, the entire left-hand plan $Re(h\lambda)<0$ is inside the RAS of a method, then it is absolute stable or A-stable. An A-stable method is always stable, i.e., the numerical solution it generates is bounded, for any step size, so long as $Re(\lambda)<0$, i.e., the true solution of the DE is bounded.

Note that the RAS depends on the product $h\lambda$ (instead of either $h$ or $\lambda$ alone), because a smaller step size $h$ is needed for a larger $\vert Re(\lambda)\vert$ of a more rapidly decaying function $y(t)=y_0e^{\lambda t}$, but a greater step size $h$ can be used for a small $\vert Re(\lambda)\vert$ of a slowly decaying $y(t)$.

The RAS of a general method, such as the multi-step Adams-Moulton method (Eq. (225)), can be obtained by applying it to the test equation $y'=\lambda y$:

$\displaystyle y_{n+m}$ $\displaystyle =$ $\displaystyle y_{n+m-1}+h\;\sum_{i=n}^{n+m} b_i f_i
=y_{n+m-1}+h\;\sum_{i=n}^{n+m} b_i f(t_i,y(t_i))$  
  $\displaystyle =$ $\displaystyle y_{n+m-1}+h\lambda\;\sum_{i=n}^{n+m} b_i y_i$ (320)

This iteration can be viewed as a homogeneous difference equation:

$\displaystyle (1-h\lambda b_{n+m})y_{n+m}-(1+h\lambda b_{n+m})y_{n+m-1}+h\lambda\sum_{i=n}^{n+m-2}b_iy_i=0$ (321)

If we assume $y_n=cz^n$, this equation becomes:
    $\displaystyle (1-h\lambda b_{n+m})cz^{n+m}-(1+h\lambda b_{n+m-1})cz^{n+m-1}+h\lambda\sum_{i=n}^{n+m-2}b_icz^i$  
  $\displaystyle =$ $\displaystyle cz^n [ (1-h\lambda b_{n+m})z^m-(1+h\lambda b_{n+m-1})z^{m-1}+h\lambda\sum_{i=0}^{m-2}b_iz^i ]$  
  $\displaystyle =$ $\displaystyle cz^n\Phi(z,h\lambda)=0$ (322)

where

$\displaystyle \Phi(z,h\lambda)=(1-h\lambda b_{n+m})z^m-(1+h\lambda b_{n+m-1})z^{m-1}+h\lambda\sum_{i=0}^{m-2}b_iz^i$ (323)

is the characteristic polynomial with $m$ roots $z_1,\cdots,z_m$. The solution of the test equation Eq. (320) is the linear combination of $m$ terms of $c_i z_i^n$:

$\displaystyle y_n=\sum_{i=1}^m c_iz_i^n$ (324)

where the coefficients $c_0,\cdots,c_{m-1}$ can be determined based on $m$ given initial conditions $y_0,\cdots,y_{m-1}$. For this solution to be bounded we must have $\vert z_i\vert<1$ for all $i=0,\cdots,m-1$.

We see that although the RK methods have high order of errors (e.g., RK4 with $O(h^5)$), they are not A-stable, while the implicit backward Euler and trapezoidal methods are both A-stable, even though they have lower order error, as shown in the example of the the previous section.

The discussion above for single-variable linear constant coefficient DEs can be generalized to a multi-variable linear constant coefficient DE systems ${\bf y}'+{\bf Ay}={\bf x}$ with a general solution:

$\displaystyle {\bf y}(t)=\sum_{i=1}^N c_i {\bf v}_ie^{s_it}+{\bf y}_p$ (343)

which in turn can be further generalized to nonlinear DE systems which can be approximately linearized by dropping all higher order terms in its Taylor expansion except the linear term represented by its Jacobian matrix ${\bf J}$. Then the discussion above in terms of the constant coefficient matrix ${\bf A}$ in a linear system can be generalized to a non-linear system in terms of ${\bf J}$.