1. Introduction
Step size selection is an important criterion required in solving stiff differential equations using the integration method, [
1]. It is however important to state that too small or too large a step size affects the efficiency of any integration method. A variable step size strategy is one approach that has been employed in choosing the correct step size required for the integration of differential equations.
The Kepler equation first derived in 1609 by Johannes Kepler is an equation in mechanics that establishes the relationship among geometric properties of orbits with respect to central force. The equation plays a prominent role in mathematics and physics, most especially in celestial mechanics. The Kepler equation has various forms, which largely depends on the type of orbit.
The Kepler standard equation (which we shall consider in article) is employed for elliptic orbits,
, where
is called the orbital eccentricity. This is a stiff second order differential equation which can be transformed to the following system of first order differential equations,
where
and
. We assume the functions
and
are sufficiently smooth and also satisfy the existence and uniqueness theorem stated in Theorem 1.
Other forms of the Kepler equation include the radial Kepler equation, which is applied for radial or linear trajectories , the Barker’s equation applied parabolic trajectories and the hyperbolic Kepler equation applied for hyperbolic trajectories . For , the orbit becomes circular. Equation (1) is assumed to satisfy Theorem 1, which establishes the uniqueness and existence of a solution.
Theorem 1 ([
2]).
Let the functions ,
,…,
and their corresponding partial derivatives ,,…, be continuous in a region containing the points . Then, the initial value problem has a unique solution of the form,
on the interval I containing .
Definition 1 ([
3]). The general k-step linear multistep method (LMM) is defined as,
where and are real constant coefficients and is the differential equation’s order. Equation (4) is implicit if and explicit if .
Definition 2 ([
4]).
A differential equation is stiff if it satisfies any or all of the following conditions: - (i)
stability requirements in contrast to accuracy constrain the step length,
- (ii)
some solution components decay much more slowly or rapidly compared to others,
- (iii)
it has time scales that vary widely, and/or
- (iv)
all its eigenvalues have negative real parts with large stiffness ratio.
The Kepler problem, which is stiff in nature, satisfies all the conditions stated in Definition 2. Historically, the study of the motion of springs led to the discovery of stiff differential equations. These equations occur frequently in science and engineering. A lot of numerical techniques have been derived for approximating stiff differential equations ranging from trigonometrically fitted methods, nonstandard finite difference methods, and others. See the works of [
5,
6,
7,
8,
9,
10,
11,
12,
13]. All these methods are constant step methods where the step length is fixed. However, in this research article, emphasis shall be laid on variable step method. Quite a number of researchers have developed different variable step techniques for solving stiff differential equations including the Kepler equations. The authors in [
1] proposed variable step methods for solving some differential equations. The authors went further to prove the efficacy of their methods by solving some standard problems, e.g., the Kepler, Van der Pol, and Lokta–Volterra problems. Ref. [
14] derived a two-point variable step predictor-corrector block method for the solution of ordinary differential equations. The method developed was in the form of Adams Bashforth-Moulton. The authors developed the method using the step size ratios
,
, and
. They went further to plot the stability regions of the method at different step ratios and also applied the method on some ODEs. Ref. [
15] also developed a variable step size sixth order Adams block method for the solution of differential equations. The method approximates the solution in each of the steps with the aid of three points simultaneously. Ref. [
16] also formulated a variable step, variable order method for solving stiff ODEs. The idea employed in their work is the combination of divided difference and Newton’s interpolation formulas as the basis function in the design of the method. Other authors that derived variable step size methods include [
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29].
2. Formulation of the VSHBM
The formulation of the VSHBM is discussed in this section, where the interval
is subdivided into blocks with interpolation points
,
,
,
,
and
; see
Figure 1. The approximations
,
, and
are concurrently determined using three previous values at
,
, and
of the previous two steps each with step size
.
In order to optimize the number of steps taken, ensure zero-stability, and reduce the total number of formulae in the code, the step size ratio
is maintained
, halved
or doubled
. This approach is sometimes called the Milne device [
30]. This strategy was first suggested by [
31,
32].
The VSHBM is formulated at the points
, and
by integrating Equation (1) in the interval
,
The function
in (1) is approximated using Lagrange polynomial
of the form
where
The Lagrange polynomial at the points
,
,
,
,
and
given by
is used in determining the corrector formulae for
,
, and
.
The VSHBM for the corrector at
,
, and
are derived by integrating (1) with respect to
,
, substituting
for
and taking the limits of integration at (−2, −1), (−2, −1/2), and (−2, 0) respectively. This gives,
On the substitution of
,
and
, Equations (8)–(10) give the VSHBM presented in
Table 1.
Since the proposed VSHBM is a predictor-corrector method, the predictor formulae were also formulated using the same procedure above at the interpolation points
,
and
. This gives
At
,
, and
, Equations (11)–(13) produce the predictor formulae for the VSHBM as shown in
Table 2.
5. The Kepler Problem
The Kepler problem is a renowned two-body problem that describes planetary motion in an orbit. The center of the coordinate system is represented by one of the bodies while the position of the second body at time
is given by two coordinates
and
. The Kepler problem is given by,
where
defined by the constraint
is the orbital eccentricity. The exact solution of the Kepler problem (28) is given by,
It is important to state that Equation (28) is equivalent to the Hamiltonian system
where
denotes the Hamiltonian of the system in Equation (28). To effectively apply the proposed VSHBM (which is in the form of LMM in Equation (4)) on the Kepler problem, we transform (28) to its equivalent first order system of equations. This is achieved by letting
,
,
, and
. Equation (28) is thus given by the following system of equations
where
e is the orbital eccentricity.
6. Results and Discussion
The newly derived VSHBM shall be applied on the Kepler problem to test its accuracy, efficiency, and computational reliability in terms of parameters, such as the number of steps, number of failure/rejected steps, number of function calls, maximum error, and computation time.
Absolute error (AbsE) is defined as
Maximum error (MaxE) is defined as
where
is theoretical/exact solution while
is computed/approximate solution.
The proposed VSHBM was employed in approximating the Kepler problem. The results obtained were compared with that of variable step predictor-corrector method (2PVSPCM) developed by [
14] at eccentricity
and run time
. From
Table 4, it is obvious that the VSHBM performed better than that of [
14] using different indicators. The maximum error (MaxE) of the VSHBM is by far less than those of [
14]. It was also observed that fewer steps (TS) were taken in generating the results in contrast to the method of [
14]. This in turn translates to the faster generation of results (see the ComT column) using the VSHBM. From
Table 4, it is also obvious that no failure steps (FS) were recorded. The total function call (FCN) column also showed that the proposed VSHBM has more function calls than the variable step method developed by [
14].
In
Figure 4, the efficiency curves of the Kepler problem were plotted in terms of time versus maximum error, while in
Figure 5 the efficiency curves were plotted with respect to the number of steps versus the maximum error. From the two figures, it is clear that the VSHBM performed better than the 2PVSPCM developed by [
14] at the run time
. This is because the VSHBM takes less time (
Figure 4) and fewer steps (
Figure 5) to generate result than the 2PVSPCM developed by [
14].
Table 5 clearly shows the performance of the VSHBM on the Kepler problem at different eccentricities
and
. Different tolerance levels were considered in the computation. The results generated show that no step failed (i.e., FS = 0) and the accuracy of the VSHBM increases as
reduces or tends to zero.
The Kepler problem (31) was also integrated using the new VSHBM at constant step in the interval
. The VSHBM was used to calculate the stage value
and the results obtained were compared with those of the Matlab inbuilt solver, ode 15 s. It is obvious that at constant step size,
, the method performed slightly better than the inbuilt ode 15 s in terms of computation time and maximum error; see
Table 6 and
Figure 6 and
Figure 7. However, if variable step strategy was solely adopted in the generation of the results, the VSHBM would have performed better, as clearly seen in
Table 4.