Open Access

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

SpringerPlus20143:447

DOI: 10.1186/2193-1801-3-447

Received: 14 July 2014

Accepted: 12 August 2014

Published: 20 August 2014

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

Keywords

General second order; Initial value problems; Block form

Introduction

Linear multistep methods (LMMs) of the form
j = 0 k α j y n + j = h 2 j = 0 k β j f n + j , k 2 ,
(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 j t h column of W by V; P j (t) = t j ,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

 

PC-mode

Block-mode

N

NFEs

Max error

CPU time

NFEs

Max error

CPU time

6

7

3.14×10-3

2.88×10-2

7

3.14×10-3

3.42×10-2

12

17

4.01×10-5

3.84×10-2

13

1.40×10-5

6.32×10-2

24

43

9.68×10-7

6.04×10-2

25

5.07×10-8

1.26×10-1

48

91

2.47×10-5

5.27×10-2

49

1.92×10-10

1.31×10-1

96

187

8.82×103

9.09×10-2

97

5.31×10-12

2.64×10-1

Table 2

Results, with t ε [1,8], for Example 2

 

PC-mode

Block-mode

N

NFEs

Max error

CPU time

NFEs

Max error

CPU time

6

7

2.40×10-3

2.11×10-2

7

2.240×10-3

1.47×10-2

12

17

9.23×10-4

1.18×10-2

13

2.42×10-4

4.13×10-2

24

43

1.51×10-2

2.13×10-2

25

1.23×10-5

3.37×10-2

48

91

8.78×100

4.05×10-2

49

2.33×10-7

9.35×10-2

96

187

2.66×108

7.70×10-2

97

1.79×10-9

1.48×10-1

Table 3

Results, with t ε π 2 , 10 , for Example 3

 

PC-mode

Block-mode

N

NFEs

Max error

CPU time

NFEs

Max error

CPU time

180

710

2.34×1033

6.84×10-1

362

1.95×10-2

6.82×101

360

1430

5.81×1059

7.84×10-1

722

2.13×10-4

5.36×101

720

2870

5.41×10123

1.15×100

1442

8.30×10-7

8.46×101

1440

5750

8.62×10257

1.93×100

2882

3.40×10-9

1.24×102

2880

11510

1.68×10304

3.12×100

5762

1.38×10-11

2.46×102

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 ) = ( 2 cos 1 - sin 1 ) / 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

VAR (8)

SOLMM

Steps

Errors

Steps

Errors

67

7.1122×10-7

60

2.49×10-8

82

9.2632×10-8

80

3.16×10-9

97

8.7834×10-9

100

6.04×10-10

112

1.2108×10-10

112

2.57×10-10

The maximum norm of the global error for the y-component is given in the form 10-C D, 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

H8

SOLMM

NFEs

CD

NFEs

CD

400

0.3

362

1.7

800

2.6

722

3.7

1600

5.2

1442

6.1

3200

7.6

2882

8.5

6400

10.0

5762

10.9

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.

Declarations

Authors’ Affiliations

(1)
Department of Mathematics and Statistics, Austin Peay State University
(2)
Department of Computer Science and Information Technology, Austin Peay State University

References

  1. Awoyemi DO: A new sixth-order algorithm for general second order ordinary differential equation. Int J Comput Math 2001, 77: 117-124. 10.1080/00207160108805054View ArticleGoogle Scholar
  2. Hairer E: Méthodes de Nyström pour l’équation différentielle y′′ = f ( x , y ). Numer Math 1977, 25: 283-300.Google Scholar
  3. Ixaru L, Berghe GV: Exponential fitting. Kluwer, Dordrecht, Netherlands; 2004.View ArticleGoogle Scholar
  4. 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.027View ArticleGoogle Scholar
  5. 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.010View ArticleGoogle Scholar
  6. 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/00207160701708250View ArticleGoogle Scholar
  7. 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
  8. 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.189View ArticleGoogle Scholar
  9. Ramos H, Vigo-Aguiar J: Variable stepsize Stôrmer-Cowell methods. Math Comp Mod 2005, 42: 837-846. 10.1016/j.mcm.2005.09.011View ArticleGoogle Scholar
  10. 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-HView ArticleGoogle Scholar
  11. 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.043View ArticleGoogle Scholar

Copyright

© Jator and Lee; licensee Springer. 2014

This article is published under license to BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/4.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly credited.