- Research
- 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

- Samuel N Jator
^{1}Email author and - Leong Lee
^{2}

**3**:447

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

© Jator and Lee; licensee Springer. 2014

**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

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

*t*

_{ n }≤

*t*≤

*t*

_{n + 6}, the exact solution to (3) is approximated by the continuous form of the SOLMM

where *α*_{0}(*t*), *α*_{1}(*t*), and *β*_{
j
}(*t*), *j* = 0,1,2 are continuous coefficients that are uniquely determined. We assume that *y*_{n + j} is the numerical approximation to the analytical solution *y*(*t*_{n + j}), *y* *n* + *j*′ is an approximation to *y*^{′}(*t*_{n + j}), and *f*_{n + j} = *f*(*t*_{n + j},*y*_{n + 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**

*W*as

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
},*y*_{n + 1},*f*_{
n
},*f*_{n + 1},…,*f*_{n + 6})^{
T
}. We note that *T* is the transpose.

#### Proof

See Jator (2012).

### Discrete by-products

*t*= {

*t*

_{n + 2},

*t*

_{n + 3},

*t*

_{n + 4},

*t*

_{n + 5},

*t*

_{n + 6}} and

*t*= {

*t*

_{ n },

*t*

_{n + 1},

*t*

_{n + 2},

*t*

_{n + 3},

*t*

_{n + 4},

*t*

_{n + 5},

*t*

_{n + 6}} respectively.

### Block form

and *A*_{0}, *A*_{1}, *B*_{0}, and *B*_{1} 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

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.

*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

*C*

_{ q }= (

*C*

_{1,q},

*C*

_{2,q},…,

*C*

_{12,q})

^{ T },

*q*= 0,1,… are given as follows:

####
**Definition**
**1**

*p*

_{ j },

*p*

*j*′,

*j*= 1,…,6 be positive integers, then, the block method (10) has algebraic order

*p*=

*m*

*i*

*n*{

*p*

_{1},…,

*p*

_{6},

*p*1′,…,

*p*6′},

*p*>1, provided there exists a corresponding constant

*C*

_{p + 2}such that the Local Truncation Error

*E*

_{ μ }satisfies

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}=\parallel {\left(\frac{19}{6048},\frac{349}{60480},\frac{127}{15120},\frac{349}{30240},\frac{349}{30240},-\frac{6031}{907200},\frac{8563}{1814400},\frac{6163}{1814400},\frac{6163}{1814400},\frac{1649}{907200},\frac{8563}{1814400},-\frac{6031}{907200}\right)}^{T}\parallel $.

### Linear stability of the SOLMM

*y*

^{′′}=

*λ*

*y*, where

*λ*is expected to run through the (negative) eigenvalues of the Jacobian matrix $\frac{\mathrm{\partial f}}{\mathrm{\partial y}}$ (see Sommeijer (1993)). Letting

*q*=

*λ*

*h*

^{2}, it is easily shown that the application of (10) to the test equation yields

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

**Definition** **3**.

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

####
**Remark**
**1**

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

## Implementation of the SOLMM

**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 | 2.88×10 | 7 | 3.14×10 | 3.42×10 |

12 | 17 | 4.01×10 | 3.84×10 | 13 | 1.40×10 | 6.32×10 |

24 | 43 | 9.68×10 | 6.04×10 | 25 | 5.07×10 | 1.26×10 |

48 | 91 | 2.47×10 | 5.27×10 | 49 | 1.92×10 | 1.31×10 |

96 | 187 | 8.82×10 | 9.09×10 | 97 | 5.31×10 | 2.64×10 |

**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 | 2.11×10 | 7 | 2.240×10 | 1.47×10 |

12 | 17 | 9.23×10 | 1.18×10 | 13 | 2.42×10 | 4.13×10 |

24 | 43 | 1.51×10 | 2.13×10 | 25 | 1.23×10 | 3.37×10 |

48 | 91 | 8.78×10 | 4.05×10 | 49 | 2.33×10 | 9.35×10 |

96 | 187 | 2.66×10 | 7.70×10 | 97 | 1.79×10 | 1.48×10 |

**Results, with**
$t\phantom{\rule{1em}{0ex}}\epsilon \phantom{\rule{1em}{0ex}}\left[\phantom{\rule{0.3em}{0ex}}\sqrt{\frac{\pi}{2}},10\right]$
**, for Example 3**

PC-mode | Block-mode | |||||
---|---|---|---|---|---|---|

N | NFEs | Max error | CPU time | NFEs | Max error | CPU time |

180 | 710 | 2.34×10 | 6.84×10 | 362 | 1.95×10 | 6.82×10 |

360 | 1430 | 5.81×10 | 7.84×10 | 722 | 2.13×10 | 5.36×10 |

720 | 2870 | 5.41×10 | 1.15×10 | 1442 | 8.30×10 | 8.46×10 |

1440 | 5750 | 8.62×10 | 1.93×10 | 2882 | 3.40×10 | 1.24×10 |

2880 | 11510 | 1.68×10 | 3.12×10 | 5762 | 1.38×10 | 2.46×10 |

### 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.

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

## Numerical examples

**Example** **1**.

**Example** **2**.

The theoretical solution at *t*=8 is $y\left(8\right)=\sqrt{\frac{2}{8\pi}}sin\left(8\right)\simeq 0.279092789108058969$.

**Example** **3**.

### 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

*t*= 8 is $y\left(8\right)=\sqrt{\frac{2}{8\pi}}sin\left(8\right)\simeq 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).

**Absolute errors for Example** 2

VAR (8) | SOLMM | ||
---|---|---|---|

Steps | Errors | Steps | Errors |

67 | 7.1122×10 | 60 | 2.49×10 |

82 | 9.2632×10 | 80 | 3.16×10 |

97 | 8.7834×10 | 100 | 6.04×10 |

112 | 1.2108×10 | 112 | 2.57×10 |

*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).

**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

## 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/00207160108805054View ArticleGoogle 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.View ArticleGoogle 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.027View ArticleGoogle 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.010View ArticleGoogle 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/00207160701708250View ArticleGoogle 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.189View ArticleGoogle 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.011View ArticleGoogle 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-HView ArticleGoogle 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.043View ArticleGoogle Scholar

## Copyright

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.