Skip to main content

Implementing a seventh-order linear multistep method in a predictor-corrector mode or block mode: which is more efficient for the general second order initial value problem

Abstract

A Seventh-Order Linear Multistep Method (SOLMM) is developed and implemented in both predictor-corrector mode and block mode. The two approaches are compared by measuring their total number of function evaluations and CPU times. The stability property of the method is examined. This SOLMM is also compared with existing methods in the literature using standard numerical examples.

AMS Subject Classification

65L05; 65L06

Introduction

Linear multistep methods (LMMs) of the form

j = 0 k α j y n + j = h 2 j = 0 k β j f n + j ,k2,
(1)

have been extensively applied to solve the special second order initial value problem (IVP)

y ′′ =f(t,y),y( t 0 )= y 0 , y ( t 0 )= y 0 ,[ t 0 , t N ]
(2)

on the discrete set of points t n = t 0 +nh,n=0,,N,h= t N - t 0 N , (see Lambert and Watson (1976), Ramos and Vigo-Aguiar (2005), Ixaru and Berghe (2004). Despite the successful application of (1) to solving problems of the form (2), fewer methods of the form (1) have been proposed for solving the general second order IVP

y ′′ =f(t,y, y ),y( t 0 )= y 0 , y ( t 0 )= y 0 .
(3)

Some of the methods available for directly solving (3) are due to Awoyemi (2001) and Ramos and Vigo-Aguiar (2006). These methods are generally implemented in a step-by-step fashion in a predictor-corrector mode.

In this paper, we construct the continuous form of (1) which has ability to generate several methods which are combined and implemented in block form to solve (3) directly (see Jator and Li (2009) and Jator (2012, 2010, 2007).

The paper is organized as follows. In Section ‘SOLMM’, we derive a continuous approximation which is used to obtain the discrete methods that are combined to form the block method. The analysis and computational aspects of the SOLMM is given in Section ‘Implementation of the SOLMM’. Numerical examples are given in Section ‘Numerical examples’ to show the accuracy and efficiency of the method. Finally, the conclusion of the paper is discussed in Section ‘Conclusion’.

SOLMM

Continuous form

On interval t n ttn + 6, the exact solution to (3) is approximated by the continuous form of the SOLMM

u(t)= j = 0 1 α j (t) y n + j + h 2 j = 0 6 β j (t) f n + j ,
(4)

whose first derivative is given by

u (t)= d dt j = 0 1 α j ( t ) y n + j + h 2 j = 0 6 β j ( t ) f n + j ,
(5)

where α0(t), α1(t), and β j (t), j = 0,1,2 are continuous coefficients that are uniquely determined. We assume that yn + j is the numerical approximation to the analytical solution y(tn + j), y n + j′ is an approximation to y(tn + j), and fn + j = f(tn + j,yn + j,y n + j′), j = 0,1,…,6 is supplied by the differential equation. The coefficients of the method (4) are specified by the following theorem.

Theorem 1

In order to obtain the coefficients of the continuous method (4), a nine by nine system is solved with the aid of Mathematica by demanding that the following conditions are satisfied

u t n + j = y n + j , j = 0 , 1 ,
u ′′ t n + j = f n + j , j = 0 , 1 , , 6 .

After some algebraic manipulations, the equivalent form (6) produces the coefficients of (4) whose first derivative is given by (7),

u(t)= j = 0 8 det ( W j ) det ( W ) P j (t),
(6)
u (t)= d dt j = 0 8 det ( W j ) det ( W ) P j ( t ) ,
(7)

where we define the matrix W as

W = P 0 ( t n ) P 8 ( t n ) P 0 ( t n + 1 ) P 8 ( t n + 1 ) P 0 ′′ ( t n ) P 8 ′′ ( t n ) P 0 ′′ ( t n + 1 ) P 8 ′′ ( t n + 1 ) P 0 ′′ ( t n + 6 ) P 8 ′′ ( t n + 6 ) ,

and W j is obtained by replacing the jth column of W by V; P j (t) = tj,j = 0,…,8 are basis functions, and V is a vector given by V = (y n ,yn + 1,f n ,fn + 1,…,fn + 6)T. We note that T is the transpose.

Proof

See Jator (2012).

Discrete by-products

The following methods which are used to construct the block form are obtained by evaluating (4) and (5) at t = {tn + 2,tn + 3,tn + 4,tn + 5,tn + 6} and t = {t n ,tn + 1,tn + 2,tn + 3,tn + 4,tn + 5,tn + 6} respectively.

y n + 2 - 2 y n + 1 + y n = h 2 60480 ( 4315 f n + 53994 f n + 1 - 2307 f n + 2 + 7948 f n + 3 - 4827 f n + 4 + 1578 f n + 5 - 221 f n + 6 ) y n + 3 - 3 y n + 1 + 2 y n = h 2 20160 ( 2803 f n + 37950 f n + 1 + 14913 f n + 2 + 7108 f n + 3 - 3147 f n + 4 + 990 f n + 5 - 137 f n + 6 ) y n + 4 - 4 y n + 1 + 3 y n = h 2 10080 ( 2089 f n + 28878 f n + 1 + 16383 f n + 2 + 13828 f n + 3 - 1257 f n + 4 + 654 f n + 5 - 95 f n + 6 ) y n + 5 - 5 y n + 1 + 4 y n = h 2 6048 ( 1669 f n + 23250 f n + 1 + 15207 f n + 2 + 15004 f n + 3 + 4371 f n + 4 + 1074 f n + 5 - 95 f n + 6 ) y n + 6 - 6 y n + 1 + 5 y n = h 2 4032 ( 1375 f n + 19554 f n + 1 + 13401 f n + 2 + 15004 f n + 3 + 6177 f n + 4 + 4770 f n + 5 + 199 f n + 6 )
(8)

The derivatives are given by

h y n = - y n + y n + 1 + h 2 120960 ( - 28549 f n - 57750 f n + 1 + 51453 f n + 2 - 42484 f n + 3 + 23109 f n + 4 - 7254 f n + 5 + 995 f n + 6 ) h y n + 1 = - y n + y n + 1 + h 2 120960 ( 9625 f n + 72474 f n + 1 - 41469 f n + 2 + 32524 f n + 3 - 17313 f n + 4 + 5370 f n + 5 - 731 f n + 6 ) h y n + 2 = - y n + y n + 1 + h 2 40320 ( 2633 f n + 40910 f n + 1 + 17503 f n + 2 + 4 f n + 3 - 905 f n + 4 + 398 f n + 5 - 63 f n + 6 ) h y n + 3 = - y n + y n + 1 + h 2 120960 ( 8441 f n + 117210 f n + 1 + 114147 f n + 2 + 75020 f n + 3 - 16257 f n + 4 + 4410 f n + 5 - 571 f n + 6 ) h y n + 4 = - y n + y n + 1 + h 2 120960 ( 8059 f n + 120426 f n + 1 + 100605 f n + 2 + 150028 f n + 3 + 45381 f n + 4 - 1110 f n + 5 - 29 f n + 6 ) h y n + 5 = - y n + y n + 1 + h 2 40320 ( 2867 f n + 38750 f n + 1 + 38401 f n + 2 + 39172 f n + 3 + 46453 f n + 4 + 16382 f 5 - 585 f n + 6 ) h y n + 6 = - y n + y n + 1 + h 2 120960 ( 6875 f n + 128874 f n + 1 + 74781 f n + 2 + 192524 f n + 3 + 46437 f n + 4 + 179370 f n + 5 + 36419 f n + 6 )
(9)

Block form

The methods (8) and (9) are combined and expressed in the form

A 1 Y μ + 1 = A 0 Y μ + h 2 B 0 F μ + h 2 B 1 F μ + 1 ,μ=0,1,,
(10)

where

Y μ + 1 = ( y n + 1 , , y n + 6 , h y n + 1 , , h y n + 6 ) T ,
F μ + 1 = ( f n + 1 , , f n + 6 , h f n + 1 , , h f n + 6 ) T ,
Y μ = ( y n - 5 , y n - 4 , , y n , , h y n - 5 , h y n - 4 , , h y n ) T ,
F μ = ( f n - 5 , f n - 4 , , f n , h f n - 5 , h f n - 4 , , h f n ) T ,

and A0, A1, B0, and B1 are matrices of dimension 12 whose entries denoted by α j = αi,j, β j = βi,j,i = 1,…,12 are given by the coefficients of (8) and (9).

Order and local truncation error

Define the local truncation error of (10) as

Ł[z(t);h]= Z μ + 1 - A 1 - 1 [ A 0 Z μ + h 2 B 0 F ¯ μ + h 2 B 1 F ¯ μ + 1 ]
(11)

where

Z μ + 1 = ( ( y ( t n + 1 ) , , y ( t n + 6 ) , h y ( t n + 1 ) , , h y ( t n + 6 ) ) T ,
F ¯ μ + 1 = ( f ( t n + 1 , y ( t n + 1 ) , y ( t n + 1 ) ) , , f ( t n + 6 , y ( t n + 6 ) , y ( t n + 6 ) ) ,
h f ( t n + 1 , y ( t n + 1 ) , y ( t n + 1 ) ) , , h f ( t n + 6 , y ( t n + 6 ) , y ( t n + 6 ) ) T ,
Z μ = ( y ( t n - 5 ) , y ( t n - 4 ) , , y ( t n + 6 ) , h y ( t n - 5 ) , h y ( t n - 4 ) , , h y ( t n + 6 ) ) T ,
F ¯ μ = ( f ( t n - 5 , y ( t n - 5 ) , y ( t n - 5 ) ) , f ( t n - 4 , y ( t n - 4 ) , y ( t n - 4 ) ) , , f ( t n , y ( t n ) , y ( t n ) ) ,
h f ( t n - 5 , y ( t n - 5 ) , y ( t n - 5 ) ) , h f ( t n - 4 , y ( t n - 4 ) , y ( t n - 4 ) ) , , h f ( t n , y ( t n ) , y ( t n ) ) T ,

and Ł[ z(t);h] = (Ł1[ z(t);h],…,Ł6[ z(t);h],Ł7[h z(t);h],…,Ł12[h z(t);h])T is a linear difference operator.

Assuming that z(t) is sufficiently differentiable, we can expand the terms in (4) as a Taylor series about the point t to obtain the expression for the local truncation error

L[z(x);h]= C 0 z(x)+ C 1 h z (x)++ C q h q z ( q ) (x)+
(12)

where the constant coefficients C q = (C1,q,C2,q,…,C12,q)T, q = 0,1,… are given as follows:

C 0 = j = 0 6 α j C 1 = j = 1 6 j α j C q = 1 q ! j = 1 6 j q α j - q ( q - 1 ) j = 1 6 j q - 2 β j

Definition 1

Let p j ,p j′,j = 1,…,6 be positive integers, then, the block method (10) has algebraic order p = m i n{p1,…,p6,p 1′,…,p 6′}, p>1, provided there exists a corresponding constant Cp + 2 such that the Local Truncation Error E μ satisfies

E μ = C p + 2 h p + 2 + O ( h p + 3 )

where · is the maximum norm.

Definition 2.

The block method (10) is said to be consistent if it has order at least one.

The block method (10) has order and error constant given by the vector p=6 and C p + 2 = 19 6048 , 349 60480 , 127 15120 , 349 30240 , 349 30240 , - 6031 907200 , 8563 1814400 , 6163 1814400 , 6163 1814400 , 1649 907200 , 8563 1814400 , - 6031 907200 T .

Linear stability of the SOLMM

The linear-stability of the SOLMM is discussed by applying the method to the test equation y′′ = λ y, where λ is expected to run through the (negative) eigenvalues of the Jacobian matrix ∂f ∂y (see Sommeijer (1993)). Letting q = λ h2, it is easily shown that the application of (10) to the test equation yields

Y μ + 1 =M(q) Y μ ,M(q)= ( A 1 - qB 1 ) - 1 ( A 0 +q B 0 )
(13)

where the matrix M(q) is the amplification matrix which determines the stability of the method.

Definition 3.

The interval [ -q0,0] is the stability interval, if in this interval ρ(q)≤1, where ρ(q) is the spectral radius of M(q) and q0 is the stability boundary (see Sommeijer (1993)).

Remark 1

We found that ρ(q)≤1 if q ε [-4.552,0], hence, for the SOLMM, q0 = 4.552.

Implementation of the SOLMM

The SOLMM was implemented in both block mode and predictor-corrector mode using a written code in PERL programming language and executed on a laptop computer with AMD Quad-Core A10-4600M Processor, 8GB of RAM and Windows 8.1 OS. The total program running time was acceptable, as shown in Tables 1, 2 and 3. The computational time complexity and space complexity of the algorithms for both modes of SOLMM used for the examples in this paper are polynomial. Details of the block mode implementation is given in Jator (2012) and the predictor-corrector implementation is discussed next.

Table 1 Results, with t ε [ 0,1], for Example 1
Table 2 Results, with t ε [1,8], for Example 2
Table 3 Results, with tε π 2 , 10 , for Example 3

Predictor-corrector mode algorithm

The initial block was used to start predictor-corrector algorithm, after which the predictor (14) and corrector (15) were used in a step-by-step fashion to provide the numerical solution from the second block to the end of the interval.

Predictors. The following predictors are derived via Theorem 2.1 by deleting the last row and column of matrix W.

y n + 6 = - 4090 221 y n + 7296 221 y n + 1 - 2985 221 y n + 2 + h 2 663 865 f n + 11210 f n + 1 + 1862 f n + 2 + 3644 f n + 3 + 301 f n + 4 + 1018 f n + 5 y n + 6 = 1 h - 36861 442 y n + 36640 221 y n + 1 - 36419 442 y n + 2 + h 2 278460 1652785 f n + 20780090 f n + 1 - 703042 f n + 2 + 3458396 f n + 3 - 1724291 f n + 4 + 1011562 f n + 5
(14)

Correctors. The last members of (8) and (9) are used as correctors.

y n + 6 = 6 y n + 1 - 5 y n + h 2 4032 1375 f n + 19554 f n + 1 + 13401 f n + 2 + 15004 f n + 3 + 6177 f n + 4 + 4770 f n + 5 + 199 f n + 6 y n + 6 = 1 h - y n + y n + 1 + h 2 120960 6875 f n + 128874 f n + 1 + 74781 f n + 2 + 192524 f n + 3 + 46437 f n + 4 + 179370 f n + 5 + 36419 f n + 6
(15)

Numerical examples

Example 1.

We consider the IVP given by

y ′′ - 4 y + 8 y = t 3 , y ( 0 ) = 2 , y ( 0 ) = 4 , [ 0 , 1 ] ,
Exact : y ( t ) = e 2 t ( 2 cos ( 2 t ) - 3 64 sin ( 2 t ) ) + 3 32 t + 3 16 t 2 + 1 8 t 3

Example 2.

We consider the given Bessel’s IVP solved on [ 1,8] (see Vigo-Aguiar and Ramos (2006)).

t 2 y ′′ + t y + ( t 2 - 0.25 ) y = 0 , y ( 1 ) = 2 π sin 1 0.6713967071418031

y (1)=(2cos1-sin1)/ 2 π 0.0954005144474746

Exact : y ( t ) = J 1 / 2 ( t ) = 2 πt sin t

The theoretical solution at t=8 is y(8)= 2 8 π sin(8)0.279092789108058969.

Example 3.

We consider the nonlinear Fehlberg problem which was also solved in Sommeijer (1993).

y 1 ′′ = - 4 t 2 y 1 - 2 y 1 2 + y 2 2 y 2 , y 2 ′′ = 2 y 1 2 + y 2 2 y 1 - 4 t 2 y 2 y 1 π 2 = 0 , y 1 π 2 = - 2 π 2 , y 2 π 2 = 1 , y 2 π 2 = 0 , y 1 ( t ) = cos ( t 2 ) , y 2 ( t ) = sin ( t 2 ) .

Comparison of block mode and predictor-corrector mode

The SOLMM is implemented in both predictor-corrector and block modes. The two approaches are compared by measuring their total number of function evaluations (NFEs) and CPU times in seconds. The block mode implementation is shown to be superior to the predictor-corrector mode implementation in terms of accuracy and the number of function evaluations. However, the predictor-corrector mode implementation uses less time than the block implementation. Details of the numerical examples are displayed in Tables 1, 2 and 3.

Comparison of block method with other methods

The theoretical solution at t = 8 is y(8)= 2 8 π sin(8)0.279092789108058969. The errors in the solution were obtained at t = 8 using the SOLMM of order 7 and compared the the errors in (Vigo-Aguiar and Ramos 2006) which is based on the variable- step Falker method of order eight (VAR (8)) implemented in the predictor-corrector mode. The results given in Table 4 show that the SOLMM is more accurate than the method in (Vigo-Aguiar and Ramos 2006).

Table 4 Absolute errors for Example 2

The maximum norm of the global error for the y-component is given in the form 10-CD, where CD denotes the the number correct decimal digits at the endpoint (see (Sommeijer 1993)). This problem has also been solved in (Sommeijer 1993) using the eighth-order, eight-stage RKN (H8) method constructed by Hairer (1977). We have chosen to compare this method of order 8 with our method of order 7, because the orders of the methods are very close. The results obtained using the H 8 are reproduced in Table 5 and compared with the results given by our method. It is seen from Table 5 that our method performs better than those in (Sommeijer 1993) in terms of accuracy (smaller errors) and efficiency (smaller NFEs).

Table 5 The correct decimal digit at the endpoint for Example 3

Conclusion

A SOLMM is proposed and implemented in both predictor-corrector and block modes. It is shown that the block mode algorithm is superior to the predictor-corrector mode algorithm in terms of accuracy and the number of function evaluations. However, the predictor-corrector mode implementation uses less time that the block implementation. the Details of the comparison of the numerical examples are displayed in Tables 1, 2, 3, 4 and 5. Our future research will be focus on developing a variable step version of the SOLMM in both modes.

References

  • Awoyemi DO: A new sixth-order algorithm for general second order ordinary differential equation. Int J Comput Math 2001, 77: 117-124. 10.1080/00207160108805054

    Article  Google Scholar 

  • Hairer E: Méthodes de Nyström pour l’équation différentielle y′′ = f ( x , y ). Numer Math 1977, 25: 283-300.

    Google Scholar 

  • Ixaru L, Berghe GV: Exponential fitting. Kluwer, Dordrecht, Netherlands; 2004.

    Book  Google Scholar 

  • Jator SN: A continuous two-step method of order 8 with a Block Extension for y′′ = f ( x , y , y). Appl Math Comput 2012, 219: 781-791. 10.1016/j.amc.2012.06.027

    Article  Google Scholar 

  • Jator SN: Solving second order initial value problems by a hybrid multistep method without predictors. Appl Math Comput 2010, 217: 4036-4046. 10.1016/j.amc.2010.10.010

    Article  Google Scholar 

  • Jator SN, Li J: A self-starting linear multistep method for a direct solution of the general second order initial value problem. Intern J Comput Math 2009, 86: 827-836. 10.1080/00207160701708250

    Article  Google Scholar 

  • Jator SN: A sixth order linear multistep method for the direct Solution of y′′ = f ( x , y , y). Intern J Pure Appl Math 2007, 40: 457-472.

    Google Scholar 

  • Lambert JD, Watson A: Symmetric multistep method for periodic initial value problem. J Instit Math Appl 1976, 18: 189-202. 10.1093/imamat/18.2.189

    Article  Google Scholar 

  • Ramos H, Vigo-Aguiar J: Variable stepsize Stôrmer-Cowell methods. Math Comp Mod 2005, 42: 837-846. 10.1016/j.mcm.2005.09.011

    Article  Google Scholar 

  • Sommeijer BP: Explicit, high-order Runge-Kutta-Nyström methods for parallel computers. Appl Numer Math 1993, 13: 221-240. 10.1016/0168-9274(93)90145-H

    Article  Google Scholar 

  • Vigo-Aguiar J, Ramos H: Variable stepsize implementation of multistep methods for y′′ = f ( x , y , y). J Comput Appl Math 2006, 192: 114-131. 10.1016/j.cam.2005.04.043

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Samuel N Jator.

Additional information

Competing interests

The authors declare that they have no competing interests.

Authors’ contributions

SJ proposed and derived the method, while LL developed a code for implementing the method. SJ and LL drafted the manuscript. All authors read and approved the final manuscript.

Rights and permissions

Open Access This article is distributed under the terms of the Creative Commons Attribution 4.0 International License (https://creativecommons.org/licenses/by/4.0), which permits use, duplication, adaptation, distribution, and reproduction in any medium or format, as long as you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Jator, S.N., Lee, L. Implementing a seventh-order linear multistep method in a predictor-corrector mode or block mode: which is more efficient for the general second order initial value problem. SpringerPlus 3, 447 (2014). https://doi.org/10.1186/2193-1801-3-447

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1186/2193-1801-3-447

Keywords