In Runge–Kutta methods we start at ui to find ui+1, taking multiple f-evaluations (stages) to achieve high accuracy. In contrast, multistep methods boost accuracy by employing more of the history of the solution, taking information from the recent past. For the discussion in this and following sections, we introduce the shorthand notation
The quantities u and f in (6.6.2) are shown as scalars, but in general they can be vectors.
In order to use (6.6.2) as a numerical method, we iterate through i=k−1,…,n−1. The value u0 is determined by the initial condition, but we also need some way of generating the starting values
In practice the starting values are often found using an RK formula.[1]
The difference formula (6.6.2) defines ui+1 in terms of known values of the solution and its derivative from the past. In the explicit case with bk=0, Equation (6.6.2) immediately gives a formula for the unknown quantity ui+1 in terms of values at time level ti and earlier. Thus only one new evaluation of f is needed to make a time step, provided that we store the recent history.
For an implicit method, however, bk=0 and (6.6.2) has the form
Now the unknown ui+1 that we seek appears inside the function f. In general this equation is a nonlinear rootfinding problem for ui+1 and is not solvable in a finite number of steps by a formula. The implementation of both explicit and implicit multistep formulas is discussed in detail in Implementation of multistep methods.
As with RK formulas, a multistep method is entirely specified by the values of a few constants. Table 6.6.1 and Table 6.6.2 present some of the most well-known and important formulas. The Adams–Bashforth (AB) methods are explicit, while Adams–Moulton (AM) and backward differentiation formulas (BD) are implicit. The tables also list the methods’ order of accuracy, to be defined shortly. We adopt the convention of referring to a multistep method by appending its order of accuracy to a two-letter name abbreviation, e.g., the AB3 method.
Table 6.6.1:Coefficients of Adams multistep formulas. All have ak−1=1 and ak−2=⋯=a0=0.
name/order
steps k
bk
bk−1
bk−2
bk−3
bk−4
AB1
1
0
1
(Euler)
AB2
2
0
23
−21
AB3
3
0
1223
−1216
125
AB4
4
0
2455
−2459
2437
−249
AM1
1
1
(Backward Euler)
AM2
1
21
21
(Trapezoid)
AM3
2
125
128
−121
AM4
3
249
2419
−245
241
AM5
4
720251
720646
−720264
720106
−72019
Table 6.6.2:Coefficients of backward differentiation formulas. All have bk=0 and bk−1=⋯=b0=0.
The connection between the generating polynomials and the numerical method requires a little abstraction. Let Z be a forward-shift operator, so that, for example, Zti=ti+1, Z3ui−1=ui+2, and so on. With this, the difference formula (6.6.2) can be written concisely as
Where do coefficients like those in Table 6.6.1 come from? There are different ways to answer that question, but Adams and BD methods have distinctive stories to tell. The derivation of Adams methods begins with the observation that
As a result, a k-step Adams method always has ρ(z)=zk−zk−1. While the integrand above is unknown over the interval of integration, we can approximate it by a polynomial interpolant of the historical values of f. That polynomial can be integrated analytically, leading to a derivation of the coefficients b0,…,bk.
In AB methods, the interpolating polynomial has degree k−1, which means that its interpolation error is O(hk). Upon integrating we get a local error of O(hk+1), which reduces to a global error of O(hk). The AM interpolating polynomial is one degree larger, so its order of accuracy is one higher for the same number of steps.
The idea behind backward differentiation formulas is complementary to that for Adams: Interpolate solution values ui+1,…,ui−k+1 by a polynomial q, and then, motivated by f(t,u^)=u^′(t), set
✍ For each method, write out the generating polynomials ρ(z) and σ(z).
(a) AM2,
(b) AB2,
(c) BD2,
(d) AM3,
(e) AB3.
✍ Write out by hand an equation that defines the first solution value u1 produced by AM1 (backward Euler) for each IVP. (Reminder: This is an implicit formula.)
(a)u′=−2tu,0≤t≤2,u0=2,h=0.2
(b)u′=u+t,0≤t≤1,u0=2,h=0.1
(c)(1+x3)uu′=x2,0≤x≤3,u0=1,,h=0.5
✍ Do the preceding exercise for AM2 (trapezoid) instead of backward Euler.
✍ For each method, find the leading term in the local truncation error using (6.6.8).
(a) AM2,
(b) AB2,
(c) BD2.
✍/ ⌨ For each method, find the leading term in the local truncation error using (6.6.8). (Computer algebra is recommended.)
(a) AM3,
(b) AB3,
(c) BD4.
✍ A formula for the quadratic polynomial interpolant through the points (s1,y1), (s2,y2), and (s3,y3) is
If we must use an RK method to start anyway, why bother with multistep formulas at all? The answer is that multistep methods can be more efficient in some problems, even at the same order of accuracy.