Definition

Difference-equation methods that involve only information from one previous mesh point, \(t_i\) in the calculation for the mesh point, \(t_{i+1}\) are called one-step methods. Since the approximate solution is available at each of the mesh points \(t_0 \dots t_i\) before the approximation at \(t_{i+1}\) is calculated, and because the error \(|\omega_i - y(t_i)|\) tends to increase with \(j\), it seems reasonable to develop methods that use these more accurate previous data when approximating the solution at \(t_{i+1}\). Methods using the approximation at more than one previous mesh point to determine the approximation at the next point are called multistep methods.

An \(m\)-step multistep method for approximating the solution to the initial value problem:

$$ \frac{dy}{dt} = f(t,y), \quad a \leq t \leq b, \quad y(a) = \alpha \\ \label{eq:mst1} $$

has a difference-equation for finding the approximation \(\omega_{i+1}\) at the mesh point \(t_{i+1}\) represented by the following equation, where \(m\) is an integer greater than 1:

$$ \omega_{i+1} = a_{m-1} \omega_i + a_{m-2} \omega_{i-1} + \dots + a_0 \omega_{i+1-m} + h[b_mf(t_{i+1}, \omega_{i+1}) + b_{m-1}f(t_i, \omega_i) + \dots + b_0f(t_{i+1-m}, \omega_{i+1-m})] \\ \label{eq:mst2} $$

for \(i=m-1 \dots N-1\). The values \(a_{m-1} \dots a_0\) and \(b_m \dots b_0\) are constants and the starting values \(\omega_0 = \alpha_0 \dots \omega_{m-1} = \alpha_{m-1}\) are specified. The starting values must be specified, generally by assuming \(\omega_0 = \alpha\) and generating the remaining values by either a Runge-Kutta method or some other one-step technique. If \(b_m = 0\) the method is called explicit, or open, since the multistep difference-equation then gives \(\omega_{i+1}\) explicitly in terms of previously determined values. If \(b_m \ne 0\) the method is called implicit, or closed, since \(\omega_{i+1}\) occurs on both sides of the multistep difference-equation and is specified only implicitly. To apply an implicit method directly, the implicit equation must be solved for \(\omega_{i+1}\).

The local truncation error for multistep methods is defined analogously to that of one-step methods. As in the case of one-step methods, the local truncation error provides a measure of how the solution to the differential equation fails to solve the difference equation. If \(\omega_{i+1}\) is the \((i+1)^{st}\) step in a multistep method, the local truncation error at this step is:

$$ \tau_{i+1}(h) = \frac{y(t_{i+1}) - a_{m-1}y(t_i) - a_0y(t_{i+1-m})}{h} - [b_mf(t_{i+1}, y(t_{i+1})) + \dots + b_0f(t_{i+1-m}, y(t_{i+1-m}))] \\ \label{eq:mst3} $$

for \(i=m-1 \dots N-1\). In general, for an \(m\)-step explicit multistep method, the local truncation error is \(O(h^m)\) and for an \(m\)-step implicit multistep method, the local truncation error is \(O(h^{m+1})\).

Common Multistep Methods

Adams-Bashforth Two-Step Explicit Method

\begin{equation} \begin{aligned} \omega_0 & = \alpha_0 \quad \omega_1 = \alpha_1 \\ \omega_{i+1} & = \omega_i + \frac{h}{2}[(3f(t_i, \omega_i) - f(t_{i-1}, \omega_{i-1})], \quad i=1,\dots,N-1 \\ \end{aligned} \label{eq:mst4} \end{equation}

The local truncation error is:

$$ \tau_{i+1}(h) = h^2 \frac{5}{12} \left.\frac{d^3y}{dt^3}\right|_{t = \mu_i} \\ \label{eq:mst5} $$

For some \(\mu_i \in (t_{i-1}, t_{i+1})\).

Adams-Bashforth Three-Step Explicit Method

\begin{equation} \begin{aligned} \omega_0 & = \alpha_0 \quad \omega_1 = \alpha_1 \quad \omega_2 = \alpha_2 \\ \omega_{i+1} & = \omega_i + \frac{h}{12}[(23f(t_i, \omega_i) - 16f(t_{i-1}, \omega_{i-1}) + 5f(t_{i-2}, \omega_{i-2})], \quad i=2,\dots,N-1 \\ \end{aligned} \label{eq:mst6} \end{equation}

The local truncation error is:

$$ \tau_{i+1}(h) = h^3 \frac{3}{8} \left.\frac{d^4y}{dt^4}\right|_{t = \mu_i} \\ \label{eq:mst7} $$

For some \(\mu_i \in (t_{i-2}, t_{i+1})\).

Adams-Bashforth Four-Step Explicit Method

\begin{equation} \begin{aligned} \omega_0 & = \alpha_0 \quad \omega_1 = \alpha_1 \quad \omega_2 = \alpha_2 \quad \omega_3 = \alpha_3 \\ \omega_{i+1} & = \omega_i + \frac{h}{24}[(55f(t_i, \omega_i) - 59f(t_{i-1}, \omega_{i-1}) + 37f(t_{i-2}, \omega_{i-2}) - 9f(t_{i-3}, \omega_{i-3}) ], \quad i=3,\dots,N-1 \\ \end{aligned} \label{eq:mst8} \end{equation}

The local truncation error is:

$$ \tau_{i+1}(h) = h^4 \frac{251}{720} \left.\frac{d^5y}{dt^5}\right|_{t = \mu_i} \\ \label{eq:mst9} $$

For some \(\mu_i \in (t_{i-3}, t_{i+1})\).

Adams-Bashforth Five-Step Explicit Method

\begin{equation} \begin{aligned} \omega_0 & = \alpha_0 \quad \omega_1 = \alpha_1 \quad \omega_2 = \alpha_2 \quad \omega_3 = \alpha_3 \quad \omega_4 = \alpha_4 \\ \omega_{i+1} & = \omega_i + \frac{h}{720}[(1901f(t_i, \omega_i) - 2774f(t_{i-1}, \omega_{i-1}) + 2616f(t_{i-2}, \omega_{i-2}) - 1274f(t_{i-3}, \omega_{i-3}) + 251f(t_{i-4}, \omega_{i-4})], \quad i=4,\dots,N-1 \\ \end{aligned} \label{eq:mst10} \end{equation}

The local truncation error is:

$$ \tau_{i+1}(h) = h^5 \frac{95}{288} \left.\frac{d^6y}{dt^6}\right|_{t = \mu_i} \\ \label{eq:mst11} $$

For some \(\mu_i \in (t_{i-4}, t_{i+1})\).

Adams-Moulton Two-Step Implicit Method

\begin{equation} \begin{aligned} \omega_0 & = \alpha_0 \quad \omega_1 = \alpha_1 \\ \omega_{i+1} & = \omega_i + \frac{h}{12}[(5f(t_{i+1}, \omega_{i+1}) + 8f(t_{i}, \omega_{i}) - f(t_{i-1}, \omega_{i-1})], \quad i=1,\dots,N-1 \\ \end{aligned} \label{eq:mst12} \end{equation}

The local truncation error is:

$$ \tau_{i+1}(h) = -h^3 \frac{1}{24} \left.\frac{d^4y}{dt^4}\right|_{t = \mu_i} \\ \label{eq:mst13} $$

For some \(\mu_i \in (t_{i-1}, t_{i+1})\).

Adams-Moulton Three-Step Implicit Method

\begin{equation} \begin{aligned} \omega_0 & = \alpha_0 \quad \omega_1 = \alpha_1 \quad \omega_2 = \alpha_2 \\ \omega_{i+1} & = \omega_i + \frac{h}{24}[(9f(t_{i+1}, \omega_{i+1}) + 19f(t_{i}, \omega_{i}) - 5f(t_{i-1}, \omega_{i-1}) + f(t_{i-2}, \omega_{i-2})], \quad i=2,\dots,N-1 \\ \end{aligned} \label{eq:mst14} \end{equation}

The local truncation error is:

$$ \tau_{i+1}(h) = -h^4 \frac{19}{720} \left.\frac{d^5y}{dt^5}\right|_{t = \mu_i} \\ \label{eq:mst15} $$

For some \(\mu_i \in (t_{i-2}, t_{i+1})\).

Adams-Moulton Four-Step Implicit Method

\begin{equation} \begin{aligned} \omega_0 & = \alpha_0 \quad \omega_1 = \alpha_1 \quad \omega_2 = \alpha_2 \quad \omega_3= \alpha_3 \\ \omega_{i+1} & = \omega_i + \frac{h}{720}[(251f(t_{i+1}, \omega_{i+1}) + 646f(t_{i}, \omega_{i}) - 264f(t_{i-1}, \omega_{i-1}) + 106f(t_{i-2}, \omega_{i-2}) - 19f(t_{i-3}, \omega_{i-3})], \quad i=3,\dots,N-1 \\ \end{aligned} \label{eq:mst16} \end{equation}

The local truncation error is:

$$ \tau_{i+1}(h) = -h^5 \frac{3}{160} \left.\frac{d^6y}{dt^6}\right|_{t = \mu_i} \\ \label{eq:mst17} $$

For some \(\mu_i \in (t_{i-3}, t_{i+1})\).

Summary

It is interesting to compare an m-step Adams-Bashforth explicit method to a \((m-1)\) step Adams-Moulton implicit method. Both involve \(m\) evaluations of \(f(t,y)\) per step, and both have the terms \(O(h^m)\) in their local truncation errors. In general, the coefficients of the terms involving \(f(t,y)\) in the local truncation error are smaller for the implicit methods than for the explicit methods. This leads to greater stability and smaller round off errors for the implicit methods.