8.8 Section 2 Background .1 Cosmology .11 Math Section 8.10

Book 9 Computational Mathematics Chapter 8 Ordinary Differential Equation Initial Value Problems

Section 9 Adams' Method

For the initial condition y(x0) = y0, let there have been obtained for the differential equation

(9.1)

three consecutive values of y for the initial steps by one of the preceding methods:

Use these values to compute the quantities:

The next table has these quantities and their differences above the stepped line.



Adams' method ([2], [13], [20]) involves expansion of the above difference table with the aid of his extrapolation formula

(9.2)

which is used for the prediction of the value of Denote the predicted value by ypredk+1. The value of the differences of the yk , obtained from (10.2), has to be specified. For this purpose, values of xk+1, yk+1, y'k+1, qk+1 have to be entered in the table, the difference table supplemented, and then the computation checked by mean of Adams' interpolation formula

(9.3)

Let ycorrk+1 denote the value given by (9.3). Equations (9.2) and (9.3) are of O(h4) and the formulae for an error estimation are rather complicated. For practical purposes, one takes the following into consideration. The error of the more accurate correction formula (9.3) constitutes about 1/14 of the difference between the values obtained from (9.2) and (9.3), whence, if this difference does not exceed greatly the required accuracy, the choice of h is considered to be adequate and the computation is continued with the old step length. However, if at some stage of a computation this difference increases substantially and the calculations themselves are correct, then h is decreased, usually to half its value.

Use of the above table

1. Write down the numbers xk, yk, y'k and qk , (k = 0, 1, 2, 3) and compute the differences

2. Using the numbers

,

placed diagonally in the table, determine Dy3, using (9.2).

3. Compute x4 = x3 + h, y4 = y3 + Dy3.
4. Enter the values x4, y4, find y'4 = f(x4,y4), q4 = hy'4 and append the difference table with the values of
Dq3, D2q2, D2q1.
5. Using these values of
Dq, specify Dy3 for k=3 from (9.3) .

6. If the corrected value of Dy3 differs from its predicted value by several units of the lower retained order, then introduce the corresponding corrections of the values of Dy3 and y4, check whether the correction affects considerably the value of q4, and continue the computation with the old spacing or apply a smaller value of h. etc.

When carrying out computational work on a computer, it is more convenient to use transformed Adams' formulae, which do not express yk+1 in terms of the difference Dq, but directly in terms of q. Thus, the Adams formulae become

(9.4)

and

(9.5)

for extrapolation and interpolation, respectively.

Obviously, Adams method can also be applied to systems of equations and higher order equations. Let there be given the system of two equations

(9.6)

Adams' extrapolation formulae for this system are

(9.7)

where

Adams' interpolation formulae are written in the same manner.

Example l: Find by Adams' method on the interval [0, 0.5] the solution of the differential equation

(9.8)

for the initial condition y(0) = 0, using h = 0.05.

Solution: Example 2 of Section VIII computed this solution by the Runge-Kutta method for xl =0.05, x2 = 0.10. In the same manner, the value of the required function can be obtained for x3 = 0.15. Take advantage of these results and continue the computations by (9.2), entering the results obtained into the next two tables, the first of which is the basic difference table, the second an auxiliary table for the computation of the right hand term of (9. 8).

Solving (9.8) by Adams' Method

Computing the right-hand term of (9.8)


Explanation of the tables:

1. Enter in the first table the values x0 = 0, x1 = 0.05, x2 = 0.10,x3 = 0.15 and the corresponding values of yk, k = 0, 1, 2, 3, find f (xk,yk), qk, and form a difference table.
2. By (9.2), for k=3,


3. Compute y4 = 0.007838 + 0.006318 = 0.014156.
4. Enter the values for x4, y4 into the second Table to find
y'4 = f(x4, y4) =(2/3)sinh (0.5 ? 0.014156 + 0.2) + 0.5?0.014156 = 0.14612,
whence q4 = hy'4 = 0.007306.
5. Compute the corrected term from (9.3):
D y3 = 0.005347 + 0.001959/2 - 0.000094/12 - 0.000009/24=0.005318. Since the corrected value of D y3 coincides with the predicted value, continue with h as is.
6. By (9.2), one finds for k = 4
D y4 = 0.007306 + 0.001959/2 + 0.000094/12 + 3?0.0000009/8 = 0.008329, etc.

Note. As in Example 2 of Chapter VIII, the computations might have been done with a larger value of h, a fact which is, in particular, confirmed by the small values of the differences D3q.

Example 2: Use Adams' method to find on the interval [0, 0.5] the solution of the equation

(9.9)

for the the initial condition y(0) = -1 with an accuracy of 10-5.

Solution: In Example 1 of Section VIII, the values of the required function have been computed by the Runge-Kutta method with h =0.1 for x1 = 0.1, x2 ,= 0.2, x3 = 0.3. Further computations will be carried out on a computer, using (9.4) with corrections according to (9.5), the results being entered in the next two tables. The first contains the computations according to (9.4) and corrected by (9.5), the second the results of the computation of the right-hand term.

Solving (9.9) by Adams' Method

In this table:

Computing the right-hand term of (9.9)

Filling in the tables:

1. Enter in the last table x0 = 0, x1 = 0.1, x2 = 0.2, x3 = 0.3 and compute the corresponding values of yk and y'k = f(xk, yk). k = 0, 1, 2, 3
2. Enter

into the last but one table and find from (9.4) for k=4

3. Enter x4, y4 into that table and compute y'4 = f (x4, y4) = 0.35745.
4. Enter for k=3 into the last but one table

and compute y4 from (9.5)

5. Since the predicted and corrected values differ only 10-5, correct the value of y4 in both tables

6. Make sure in the last table that the corrected value of y4 does not change y'4.etc.

Example 3: Given the system of equations

(9.10)

with the initial conditions , find by Adams' Method the solutions on the interval [0,0.6], using h=0.1 and the known values y(0.1) = 3.14184, y(0.2 = 3.14364, y(0.3) = 3.14903, z(0.1) = 0.10981, z(0.2) = 0.22960, z(0.3) = 0.35934.

Solution: Find the values of y(x) and z(x) for x4 = 0.4, x5 = 0.5, x6 = 0.6 by means of (9.7), noting that

The next two tables present the computations by Adams' method and the evaluation of the right hand terms

Evaluation of the right-hand terms of (9.10)


Filling in the tables

1. Enter xk = kh, yk, zk , k = 0, 1, 2, 3
2. Compute y'k , z'k .
3. Enter pk = hy'k, qk = hz'k into the first table and form the differences

4. Using these differences, (9.7) yields for k = 3

5. Obtain

into both tables and compute y'5 = f1(xk,yk,zk) and z'5 = f2(xk,yk,zk).

6. Enter p5 and q5 into the first table, fill in the difference table, and continue using (9.7) for k = 4.

Since the corrected values of the differences coincide with the predicted ones within the accuracy limit, application of the correction formulae is not required. For instance, for k = 4, one finds

Exercises

1. Use Adams' method to find with an accuracy of 10-2 the numerical solutions of the following differential equations and systems of equations for the given values of the argument. Find the initial interval by the Runge-Kutta method.

2. Use Adams' method to solve numerically the following differential equations on the interval [a, b] accurate to 10-4. Find the initial interval by the Runge-Kutta method.

Using Adams method, expand by two lines the table of numerical solutions of the following equations with the initial
conditions x(0) = 0 and step length h = 0.1. Find the
initial interval by the Runge-Kutta method (cf. . VIII, Exercises 2 to 8).

Using the Adams method, expand by two lines the table of numerical solutions of the following systems of differential equations for the initial conditions specified. Use h = 0.1. Find the initial interval by means of the Runge-Kutta Method (cf. Exercises VIII, Problems 9 to 13).

15. Use Adams' Method to find the numerical solutions of the following differential equations for x==0.2. Use the values of ' the "initial interval" obtained in Exercise 14 of Chapter II