# A matrix system for computing the coefficients of the Adams Bashforth-Moulton predictor-corrector formulae.

IntroductionThe solution of first order ordinary differential equations of the form y' = dy/dx = f(x,y) is of so much importance in numerical methods due to the fact that even higher order partial differential equations can be transformed into first order ordinary differential equations and solved. Thus, methods of solution of equations of the form y' = dy/dx = f(x,y) have attracted attention of researchers for a very long time. Several schemes for solutions of ODEs exist. Some include the single step methods (RungeKutta, Euler, Heuns, etc) and multi-step methods. Examples of the multistep methods are the predictor-corrector methods of Adams Bashforth and Moulton. These schemes involve the use of explicit formulae to make a prediction of the current value of the dependent variable y and then use implicit (corrector) formulae to make a final approximation to the current value of y. These predictor-corrector methods can be obtained using a number of methodologies; among which is the use Taylor series expansion of [y.sub.n] about H[4]. The process of generating these formulae is straight forward but gets very tedious as the order of the method gets higher. The purpose of this paper is to present an easier and simpler way of generating these formulae even for higher order.

Derivation of Adams Bashforth Predictor System

We seek to find a simpler way out in deriving the Adams Bashforth formulae in this brief. There are several methods used in deriving these formulae. These methods however require Taylor series expansions and other simplifications. We seek to find a way of deriving the formulae without having to follow these tedious Taylor series expansions and simplifications. It can be shown that the Adams Bashforth formulae can be generated by solving a system of linear equations. We seek to develop a recipe for these systems here. The general Adams Bashforth formulae is of the form

[y.sub.n+1] = [y.sub.n] + h [k.summation over (i=1)] [b.sub.i][y'.sub.n-i+1] (1.1)

Where k is the order of the Adams method.

Thus, the kth order predictor formula is given by:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] (1.2)

The terms [y'.sub.n], [y'.sub.n-i], [y'.sub.n-2],...[y'.sub.n-k+2]and [y'.sub.n-k+i] are then expanded using Taylor series, truncated after the kth terms and substituted into the above equation.

Thus, expanding the terms [y'.sub.n], [y'.sub.n-1] [y'.sub.n-k+2] and [y'.sub.n-k+1] and substituting them into equation (1.2) we have

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

Expanding and grouping like terms gives

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

Comparing this equation with the Taylor series expansion of [y.sub.n+1];

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

we have the following system of equations:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] (1.3)

Writing this system as a matrix equation gives

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] (1.4)

Thus, the coefficients of the explicit Adams Bashforth predictor formula can be found by solving the matrix system [[a.sub.ij]][[b.sub.i]] = [[c.sub.i]],

Where [a.sub.ij] = [(j-1).sup.i-1], and [c.sub.i] = [(-1).sup.(i-1)]1/i, i = 1, 2,... k

Adams Moulton Corrector Coefficients

The kth order Adams Moulton corrector formula is given by [4]

[y.sub.n+i] = [y.sub.n] + h [k.summation over (i=1)][b.sub.i][y'.sub.n-i+2]

Hence

[y.sub.n+i] = [y.sub.n] + h ([b.sub.i][y'.sub.n+1] + [b.sub.2][y.sub.n] + [b.sub.3][y'.sub.n-i] + ... + [b.sub.k- i][y'.sub.n-k+3] + [b.sub.k][y'.sub.n-k+2]) (1.5)

Expanding the terms [y'.sub.n+1], [y'.sub.n], [y'.sub.n_x,] [y'.sub.n-2],..., [y'.sub.n-k+3], and [y'.sub.n-k+2] using Taylor series, truncating them after the kth terms and substituting them into the above equation gives:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

Expanding and grouping like terms, we have

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

Comparing this formula with the Taylor series expansion gives the following set of linear equations

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

Pr in matrix form, we have

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

Thus, the coefficients for the Adams Moulton corrector formula can be obtained by solving the system [[a.sub.ij]][bi] = [[c.sub.i]] where [a.sub.ij] = [(j - 2).sup.i-1], [c.sub.i] = [(-1).sup.i-1] 1/i

MATLAB implementation

% This function finds the coefficients of the Adams Bashforth predictor formulae of order 'order' function [Adamsbashcoefficients]=Abashcoefficients(order) format rat A=zeros(order); c=ones(order,1); for i=1:order for j=1:order A(i,j) = (j-1)^(i-1); end c(i,1) = (-1)^(i-1)/i; end Adamsbashcoefficients=inv(A)* c; % This function finds the coefficients of the Adams Moulton corrector formulae of order 'order' function AdamsMoultonmoultonCoefficients=Amoultoncoefficients(order) format rat A=zeros(order); c=ones(order,1); for i=1:order for j=1:order A(i,j) = (j-2)^(i-1); end c(i) = (-1)^(i-1)/i; end solution=(inv(A) * c)'; [N,D]=rat(solution); temp1=abs(max(D));temp2=temp1./D;temp3=N. * temp2; AdamsMoultonmoultonCoefficients=['1/' num2str(temp1) mat2str(temp3') ];

Illustration

In this section, we illustrate the veracity of our proposed method. We shall use the proposed method to derive the coefficients of the 3rd order Adams Bashforth predictor formula which is given by [y.sub.n+i] = [y.sub.n] + 1/12h (23fn - 16[f.sub.n-i] + 5[f.sub.n-2]) and the Adams Moulton corrector formula which is given by [y.sub.n+1] = [y.sub.n] + 1/12h (5[f.sub.n+i] + 8[f.sub.n]-1[f.sub.n-1]) where f = y' For Adams Bashforth predictor coefficients, using the proposed system form We have:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

Solving this system gives [b.sub.1] = 23/12, [b.sub.2] = 16/12, and [b.sub.3] = 5/12

For Adams Moulton corrector coefficients, using the proposed system we have:

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII]

Solving this system gives

[MATHEMATICAL EXPRESSION NOT REPRODUCIBLE IN ASCII] (1.7)

References

[1] Press, W. H.; Flannery, B. P.; Teukolsky, S. A.; and Vetterling, W. T. "Multistep, Multivalue, and Predictor-Corrector Methods." [section]16.7 in Numerical Recipes in FORTRAN: The Art of Scientific Computing, 2nd ed. Cambridge, England: Cambridge University Press, pp. 740-744, 1992.

[2] Arfken, G. Mathematical Methods for Physicists, 3rd ed. Orlando, FL: Academic Press, pp. 492-493, 1985.

[3] Lambert, J. D. and Lambert, D. Ch. 5 in Numerical Methods for Ordinary Differential Systems: The Initial Value Problem. New York: Wiley, 1991. Singiresu S. Rao,. Ch. 9 in Applied Numerical Methods for Engineers and Scientists. New Jersey: Prentice Hall, 2002.

Baba Seidu

Department of Mathematics, Faculty of Mathematical Sciences, University for Development Studies, Navrongo, Ghana

Printer friendly Cite/link Email Feedback | |

Author: | Seidu, Baba |
---|---|

Publication: | International Journal of Computational and Applied Mathematics |

Article Type: | Report |

Geographic Code: | 6GHAN |

Date: | May 1, 2011 |

Words: | 1151 |

Previous Article: | Necessary conditions for local exponential observers for nonlinear systems. |

Next Article: | The methionine metabolism in human liver cell: steady-state sensitivity analysis by biochemical systems theory. |

Topics: |