1 Multistep Methods (section 10.
6)
The methods we have been working with all use the approximate value yi solely to get the next
approximate value yi+1 . Here we want to describe some methods that incorporate some of the previous
{ }
approximate values yi−1 , yi−2 , ... too. These methods are called multistep methods. Some of them
are explicit methods and some are implicit methods.
2 Adams-Bashforth Methods (section 10.6.1)
The Adams-Bashforth Method is an explicit multistep method. The first of these methods we describe
is the called Third-Order Adams-Bashforth Method. We justify this method through the following
discussion:
Consider the differential equation
y′ (x) = f (x, y(x))
Take three nodes {xi−2 , xi−1 , xi } with step size h.
Step 1. We first find the coefficients A, B, and C such that the approximating formula
∫ h
φ (x)dx ≈ Aφ (−2h) + Bφ (−h) +Cφ (0)
0
is exact for all polynomials of degree at most 2.
∫
φ (x) = 1 ⇒ A + B + C = 0h (1)dx = h (1)
∫
φ (x) = x ⇒ A(−2h) + B(−h) = 0h xdx = 21 h2 (2)
φ (x) = x2 ⇒ A(−2h)2 + B(−h)2 = ∫ h x2 dx = 1 h3
0 3 (3)
Drop a factor of h from equation (2), and drop a factor of h from equation (3), to simplify to:
1
∫
φ (x) = 1 ⇒ A + B + C = 0h (1)dx = h (1)
f(x) = x ⇒ −2A − B = 12 h (2′ )
f(x) = x2 ⇒ 4A + B = 1 h
3 (3′ )
By adding equations (2′ ) and (3′ ) together, we get:
5
2A = h ⇒ A= 5
12 h
6
−16
Putting this into (3′ ) gives us B = 12 h
Then from (1) we get:
C = h−A−B ⇒ C= 23
12 h
So the approximating formula is:
∫ h
5 16 23 h[ ]
φ (x)dx ≈ h φ (−2h) − h φ (−h) + h φ (0) = 5 φ (−2h) − 16 φ (−h) + 23 φ (0)
0 12 12 12 12
Step 2. Now let y′ = f(x, y) be the differential equation under consideration. Then
∫ xi+1
y(xi+1 ) − y(xi ) = y′ (x)dx
xi
∫ h t = x − xi
= y′ (t + xi ) dt change of variable
0 dt = dx
h[ ′ ]
≈ 5 y (−2h + xi ) − 16 y′ (−h + xi ) + 23 y′ (0 + xi )
12
h[ ′ ]
= 5 y (xi−2 ) − 16 y′ (xi−1 ) + 23 y′ (xi )
12
h[ ]
= 5 f(xi−2 , y(xi−2 )) − 16 f(xi−1 , y(xi−1 )) + 23 f(xi , y(xi ))
12
2
substitute approximate values of y for real values of y as the real values are not accessible
h[ ]
≈ 5 f(xi−2 , yi−2 ) − 16 f(xi−1 , yi−1 ) + 23 f(xi , yi )
12
In this way we get the Third-Order Adams-Bashforth Method
[ ]
h
yi+1 = yi + 12 23 f(xi , yi ) − 16 f(xi−1 , yi−1 ) + 5 f(xi−2 , yi−2 )
Note. If we started by finding the coefficients A and B in the approximating formula
∫ h
φ (x)dx ≈ Aφ (−h) + Bφ (0)
0
such that the formula is exact for polynomials of degree less than or equal to 1, then we would
get the so-called Second-Order Adams-Bashforth Method :
[ ]
yi+1 = yi + 2 3 f(xi , yi ) − f(xi−1 , yi−1 )
h
Note. If we started by finding the coefficients A and B in the approximating formula
∫ h
φ (x)dx ≈ Aφ (−3h) + Bφ (−2h) +Cφ (−h) + Dφ (0)
0
such that the formula is exact for polynomials of degree less than or equal to 3, then we would
get the so-called Fourth-Order Adams-Bashforth Method :
[ ]
yi+1 = yi + 24 55 f(xi , yi ) − 59 f(xi−1 , yi−1 ) + 37 f(xi−2 , yi−2 ) − 9f(xi−3 , yi−3 )
h
In the textbook the slopes
f (xi , yi ) , f (xi−1 , yi−1 ) , f (xi−2 , yi−2 ) , f (xi−3 , yi−3 )
are denoted by
fi , fi−1 , fi−2 , fi−3
respectively, and therefore the above identity is written in the form:
[ ]
h
yi+1 = yi + 24 55 fi − 59 fi−1 + 37 fi−2 − 9fi−3
3
Note. To be able to use the Fourth-Order Adams-Bashforth Method, one needs the initial
values {y1 , y2 , y3 , y4 } to start with. They can be found using the RK2, or RK4 method, or
any other single-step method.
Example. Use the Adams-Bashforth to approximate y(0.8) for the function satisfying the
following differential equation:
y′ = 1 + y2 y=0 x=0
Take h = 0.2
Solution. Applying the RK4 method, we get the following values:
y1 = 0
y = 0.2027
2
y3 = 0.4228
y4 = 0.6841
Now we use the Fourth Order Adams-Bashforth to get :
h[ ]
y5 = y4 + 55 f(xi , yi ) − 59 f(xi−1 , yi−1 ) + 37 f(xi−2 , yi−2 ) − 9f(xi−3 , yi−3 )
24
0.2 [ ]
= 0.6841 + 55(1 + 0.68412 ) − 59(1 + 0.42282 ) + 37(1 + 0.20272 ) − 9(1 + 02 ) = 1.0233
24
4
3 Adams-Moulton Methods (section 10.6.2)
Step 1. We first find the coefficients A, B, and C such that the approximating formula
∫ h
φ (x)dx ≈ Aφ (−h) + Bφ (0) +Cφ (h)
0
is exact for all polynomials of degree at most 2.
∫
φ (x) = 1 ⇒ A + B + C = 0h (1)dx = h (1)
∫
φ (x) = x ⇒ A(−h) + C(h) = 0h xdx = 12 h2 (2)
∫
φ (x) = x2 ⇒ Ah2 + Ch2 = 0h x2 dx = 13 h3 (3)
Drop a factor of h from equation (2), and drop a factor of h from equation (3), to simplify to:
∫h
φ (x) = 1 ⇒ A + B + C = 0 (1)dx = h (1)
φ (x) = x ⇒ −A + C = 12 h (2′ )
φ (x) = x2 ⇒ A + C = 31 h (3′ )
By adding equations (2′ ) and (3′ ) together, we get:
5
2C = h ⇒ C= 5
12 h
6
−1
Putting this into (3′ ) gives us A = 12 h
Then from (1) we get:
B = h−A−C ⇒ B= 8
12 h
5
So the approximating formula is:
∫ h
1 8 5 h[ ]
φ (x)dx ≈ − h φ (−h) + h φ (0) + h φ (h) = − φ (−h) + 8 φ (0) + 5 φ (h)
0 12 12 12 12
Now let y′ = f(x, y) be the differential equation under consideration. Then
∫ xi+1
y(xi+1 ) − y(xi ) = y′ (x)dx
xi
∫ h t = x−x
y′ (t + xi ) dt
i
= change of variable
0 dt = dx
h[ ]
≈ − y′ (−h + xi ) + 8 y′ (xi ) + 5 y′ (h + xi )
12
h[ ]
= − y′ (xi−1 ) + 8 y′ (xi ) + 5 y′ (xi+1 )
12
h[ ]
= − f(xi−1 , y(xi−1 )) + 8 f(xi , y(xi )) + 5 f(xi+1 , y(xi+1 ))
12
substitute approximate values of y for real
values of y as the real values are not accessible
h[ ]
≈ − f(xi−1 , yi−1 ) + 8 f(xi , yi ) + 5 f(xi+1 , yi+1 )
12
In this way we get the Third-Order Adams-Moulton Method
[ ]
h
yi+1 = yi + 12 5 f(xi+1 , yi+1 ) + 8 f(xi , yi ) − f(xi−1 , yi−1 )
6
4 Predictor-Corrector Methods (section 10.7)
The Adams-Moulton methods are implicit methods and therefore can not be solved as we do
in the case of Adams-Bashforth methods. For example, for y′ = sin(x + y), the third-order
Adams-Moulton method becomes:
[ ]
yi+1 = yi + h
12 5 sin(xi+1 + yi+1 ) + 8 sin(xi + yi ) − sin(xi−1 + yi−1 )
and this cannot be solved for yi+1 . So, to get the approximate value for yi+1 we use a two-step
method called predictor-corrector method. In step 1 we use an explicit method such as
Adams-Bashforth method (or any other method) called the predictor to get an initial
(1)
approximate value yi+1 :
(1) h[ ]
yi+1 = yi + 23 f(xi , yi ) − 16 f(xi−1 , yi−1 ) + 5 f(xi−2 , yi−2 )
12
and the in step 2 which is called the corrector we improve the initial estimate; this is the
implicit method under consideration:
(k) h[ (k−1)
]
yi+1 = yi + 5 f(xi+1 , yi+1 ) + 8 f(xi , yi ) − f(xi−1 , yi−1 )
12
(k) (k−1) (k−1)
and we continue until we get |yi+1 − yi+1 | ≤ ε |yi+1 |
So far 194 pages of typed materials, consisting of lecture notes, solutions
to the lab questions, and solutions to the homework questions, have been
given to the students