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.