A Quantitative Comparison of Numerical Method for Solving Stiff Ordinary Differential Equations

We derive a variable step of the implicit block methods based on the backward differentiation formulae BDF for solving stiff initial value problems IVPs . A simplified strategy in controlling the step size is proposed with the aim of optimizing the performance in terms of precision and computation time. The numerical results obtained support the enhancement of the method proposed as compared to MATLAB’s suite of ordinary differential equations ODEs solvers, namely, ode15s and ode23s.


Introduction
Consider the first-order ordinary differential equations in the form of y f x, y 1.1 with given initial values y a y 0 in the given interval x ∈ a, b .The system of 1.1 is said to be stiff if the eigenvalues of the matrix ∂f x, y /∂y have negative real parts at every time x and varies greatly in magnitude.Solving stiff ODEs which aroused from mainly applied problems, for example, from physical, chemical, and biological phenomena is made easy with several methods of interest appeared in subroutine libraries 1 .Some examples can be seen in 2-4 .From the code pioneered by Gear called DIFSUB, the wide interest in stiff ODEs has caused many other codes evolved to meet the same objective of finding the most accurate approximation for IVPs 5 .Some renowned codes are EPISODE and LSODE 5 .With the advancements of the existing methods of solving ODEs, many of these codes are preinstalled in MATLAB to work as numerical solvers.An overview of MATLAB's numerical solvers presented in 2 shows a wide choice of solvers according to the problem type, step, and order to deal with stiff and nonstiff problems.Since then, several measures have been brought up by many researchers to evaluate which method turns out to be the most efficient method 6 .Despite that there exist some limitations in each method, these methods proven to have their own strength in solving certain initial value problems 1 .
The need to solve large systems of stiff IVPs has also influenced the development of other existing method.These include iterative linear equation solvers and sparse direct linear equation solvers.Further discussion and additional references on this method are discussed in more detail in 2 .The method that incorporated with BDF proposed by Gear has been expanded gradually to become an improved method 7 .The study on producing block approximations y n 1 , y n 2 , y n 3 , . . ., y n k also known as block backward differentiation formulae BBDF 7 was inspired by Gear's method.BBDF method in 7 has verified the competency of computing concurrent solution values at different points.Apart from that, block approximations have been used in different methods to improve the methods to give a better accuracy and computation time.Consequently, the study by Ibrahim et al. in 8 is extended in a way that the accuracy is improved with reduction of total steps and lesser computational time.
In the next section, we discuss the derivation of the 5th-order variable step block backward differentiation formulae 5oBBDF .The strategies and implementations are presented next, followed by the results and discussion.It is also one of the main aims of this paper to prove that the method proposed acts as an alternative way in solving IVPs which arise in engineering and applied sciences.We are interested to compare the numerical results obtained with stiff ODEs solvers provided by MATLAB, namely, ode15s and ode23s.

General 5oBBDF Formulation
The ratio distance between current x n and previous step x n−1 is represented as q in Figure 1.In this paper, the step size is given selection to decrease to half of the previous steps or increase up to a factor of 1.9.For simplicity, q is assigned as 1, 2 and 10/19 for the case of constant, halving, and increasing the step size, respectively.The zero stability is achieved for each of these cases and explained in the next section.
We find approximating polynomials P k x by means of a k-degree polynomial interpolating the values of y at given points are x n−2 , y n−2 , x n−1 , y n−1 , . . ., x n 2 , y n 2 , where Figure 1: 5th order block method of variable step size.
Define s x − x n 1 /h to find the 4th-order interpolating polynomial for 2.1 , s is equated to 0 and 1 after the polynomial is differentiated with respect to s, when x x n 1 and x x n 2 , respectively,

2.4
Upon substituting q 1, 2 and 10/19 into P x n 1 and P x n 2 , we obtained the coefficients for points y n 1 and y n 2 as follows: for q 1, 2.5

Implementation of 5oBBDF Method
It is commonly known that stiff ODEs codes must solve both nonlinear and linear systems at each step of differentiation.This is due to implicity of the formulae for solving stiff IVPs.Throughout this section, we illustrate the effect of Newton-type scheme to find the approximation solutions of y n 1 and y n 2 simultaneously in every step.The general forms of the 5th-order BBDF method are with ψ 1 and ψ 2 are the back values.Equation 3.1 in matrix-vector form is equivalent to

3.2
By setting I f n 2 , and ξ n 1,n 2 Newton iteration is performed to the system f n 1,n 2 0, by taking the analogous form where ,n 2 is the Jacobian matrix of F with respect to Y .Equation 3.4 is separated to three different matrices denoted as

3.7
Two-stage Newton iteration is now introduced in order to find the approximate solution to 1.1 .Thus, the corresponding linear system to be solved is B. According to Jackson in 9 , evaluating the Jacobian J n 1,n 2 and LU factorization of A require the most computation time during the operations.As a result, two strategies which are based on the step size are applied to ensure the efficiency of the method: i no calculation of new matrices A and B if the step size h remains as previous step size.Hence, there is no new calculation of the Jacobian matrix J n 1,n 2 , ii the matrices A and B are updated with new evaluation of the Jacobian matrix J n 1,n 2 for every occurrence of changing step size.
As a result, this paper agrees with 10 that this method has a higher tendency in saving computational time.Unlike most modern solvers that incorporated full Newton iterations, 5oBBDF method offers refined strategy for reevaluating the Jacobian matrix J n 1,n 2 .

Stability Conditions for 5oBBDF
In this section, we provide the conditions for the stability of 5oBBDF method as in 2.5 .To begin with, we include some definitions to support the practical criterion for a method to be useful in solving ODEs.Definition 3.1.A method is said to be zero stable if the roots of the polynomial ρ z π z, 0 satisfy the condition z 1 1 ≤ |z 2 |, z 2 / 1. Definition 3.2.A method is said to be absolute stable in a region R for a given hλ if for that hλ, all the roots r s of the stability polynomial π r, hλ ρ r − hλσ r 0 satisfy |r s | < 1, s 1, 2, . . ., k.
The stability polynomial, R t, h , associated with the method of 2.5 is given by det At 2 − Bt − C , while the absolute stability region of this method in the hλ plane is Mathematical Problems in Engineering q = 10/9 determined by solving det At 2 − Bt − C 0 .Below are the absolute stability regions in the method of 2.5 for different step size selections: q 1 q 2 and q 10/19 , respectively, Since all of the roots have modulus less than or equal to 1, the method 2.5 when q 1 q 2 and q 10/19 is zero stable.
The stability region was given by the set of points determined by the boundary t e iθ , 0 ≤ θ ≤ 2π.The stability region is obtained by finding the region for which |t| < 1. Figure 2 shows the stability for the cases q 1 q 2 and q 10/19 , respectively.The stability regions lie outside the closed region for each case.
Based on Figure 2, the 5th-order BBDF possesses the region absolute stability, which contains almost whole of the half-plane Re hλ < 0.

Choosing Step Size
The importance in choosing the step size is to achieve reduction in computation time and number of iterations.Therefore, this paper proposed three basic strategies for the step size selections.For each successful step, the step size remains constant q 1 or increased by a factor of 1.9 q 10/19 .Inversely, when a fail step occurs, the next step size will be halved of the previous step size q 2 .The user initially will have to provide an error tolerance limit, TOL on any given step, and obtain the local truncation error LTE for each iteration.The LTE is obtained from where y k 1 n 2 is the k 1 th order method, and y k n 2 is the kth order method.The successful step is dependent on the condition LTE < TOL.If this condition fails, the values of y n 1, y n 2 are rejected, and the current step is reiterated with step size selection q 2 .On the contrary, the step size increment for each successful step is defined as

3.11
And if h new > 1.9 × h old , then h new 1.9 × h old .Where c is the safety factor, p is the order of the method, while h old and h new are the step size from previous and current blocks, respectively.In this paper, c is set to be 0.8.

MATLAB's Stiff Numerical Solvers
MATLAB offers several numerical solvers to solve either stiff or nonstiff ordinary differential equations.These built-in numerical solvers are capable in approximating solutions to almost any system of differential equations 2 .As far as this paper is concerned, we are interested in solving stiff ODEs.For comparison purposes, this paper considers only ode15s and Mathematical Problems in Engineering ode23s.This is because both of the methods deal with stiff differential equations based on backward differentiation formulas BDFs and on a modified Rosenbrock formula of order 2, respectively.Therefore, a fair comparison is obtained, and the discussions are made easy.

Numerical Results
We carry out numerical experiments to compare the performance of the 5th-order BBDF method with stiff ODE solvers in MATLAB mentioned above.Three sets of stiff test problems aroused from problems in physics are tested for the purpose of elucidating the difference in numerical results obtained.These test problems are performed under different conditions of error tolerances-a 10 From Table 1, among the three methods tested, our method, 5oBBDF, requires the shortest execution time for each given tolerance level.On top of that, this method also gives the smallest maximum error and average error.From Figure 3, we can see that 5oBBDF gives the lowest maximum error for every tolerance level.When we look at the convergence of the methods compared in Figure 3, our method comparably converges faster with minimum number of steps taken.
From Table 2, once again, 5oBBDF requires the shortest execution time for each given tolerance level.From the error trends described in Figure 4, we can see that the maximum errors for 5oBBDF are the smallest for each TOL as compared to ode15s and ode23s.So the convergence of the method, 5oBBDF is found to converge fastest among the methods tested.
From Table 3, similarly, 5oBBDF gives the shortest execution time for each given tolerance level.This method is also completed with lesser total steps except when TOL is 10 −2 .The error trends for all of the methods tested are depicted in Figure 5.The error trend shows that 5oBBDF converged fastest with smallest maximum error for each TOL as compared to ode15s and ode23s.

Conclusion
For all problems tested, it is proven that, the 5th-order variable step BBDF has outperformed the ode15s and ode23s in terms of average errors as well as maximum errors.It also managed to reduce the number of total steps taken in most of the cases especially when TOL is less

Table 1 :
Numerical results for problem 1.1 .

Table 2 :
Numerical results for problem 2.1 .

Table 3 :
Numerical results for problem 2.2 .