A New Seventh Order Runge-kutta Family: Comparison with the Method of Butcher and Presentation of a Calculation Software

This paper is in the context of the numerical resolution of ordinary differential equations. Most equations are unsolved in the analytic aspect. The goal is to find among the existing methods, the best method of numerical resolution. Also to facilitate the implementation of methods by introducing a calculation software. To do this, we use the Runge-Kutta method which is one of the best methods of numerical resolutions. That is why a family of Runge-Kutta methods of order 7 is presented. This family depends on the parameter b8 and contains the well known method of Butcher [8] (b8 =77/1440). To obtain convincing results, we compare methods according to the values of b8 with those of Butcher. The stability region is also studied to essentially perceive the numerical behavior that manifests itself when the steps of discretization tend to 0. The study shows that the stability region of this method does not depend on the coefficient b8. To get the values of b8, Java programming is used. Finally, to facilitate the implementation of the resolution, very simple software for numerical resolution of the ordinary differential equations is given. This software is designed for all students, also for all those who have no basis in numerical analysis and java programming to be able to find a solution approached with error estimate to an ordinary differential equation.


Introduction
The RK method is one of the best methods for numerically solving ODE. Several method of order ≥ 4 have been discovered. [1,3,[4][5][6][7]. However the search for better methods is always up to date. In this paper, a new RK7 depending on the coefficients b 8 is presented. We show that this family contains the Butcher method [8]. The stability region is independent of b 8 . By java programming, using an example we determine some values of b8 for which methods are better compared to that of Butcher [8]. Finally, a presentation of calculation software in Java programming is made to determine an approximate value of the ordinary differential equation. This paper will be organized by the following plan: section 2 RK7 method for ODEs, section 3 Stability region, section 4 Numerical analysis, section 5 The RK7 java calculator, section 6 conclusion.

RK7 Method for ODEs
Let's solve the following ODE.
If = then we find the particular method of Runge-Kutta of order 7 defined in the book [8] on page 196.

Stability Region
The determination of the stability region has been developed in the literature. [9][10][11]. Thus the following differential equation is used: with (0) and ( + C whose solution is ()) = (0), -./ . Let's study the case of the scheme (13): We obtain We write > ? , the stability region such as @ Note that the stability region does not depend on .

Example
Let us use the numerical example of the publication [12] illustrated in Figure 2. The governing first order ODE is given by Where R is the resistance (ohms), C is the capacitance (farads), i is the current (ampere), and E(t) is the voltage (volts). Given E(t) = sin{(100t) volts, R = 5 ohms, C = 0.1 farads and at the initial time t = 0 the initial current is i = 0. We want to solve the differential equation (2), which is the RC-circuit ODE, for the time interval 0 ≤ t ≤ 0.05 seconds with the time step size t = 0.01 seconds using the RK7 family method. If the exact solution is given by Then, the absolute errors could be calculated at each iteration. The computation procedure of the RK7 family method is summarized as follows [12]: Rewrite the ODE in (13) By using the RK7 family method, formulate the solution of (15) into the form of (3), we get With With h = ∆t = 0:01 and i = 0 when t = 0.

Determination of Some Values b 8
In this part, we determine some values of b 8 for which methods are better compared to that of Butcher [8]. The method is as follows: The error is calculated at each step of the Butcher method. That is, b 8 =77/1440. We write Ei, the error with each step.
Calculate the error at each step of the method for b 8 ≠77/1440.
We count all the number of error at each step that are less than or equal to the number of error at each step of the method of Butcher. We write compt, this number.
If compt = 100%, then all local errors in the new method are less than or equal to all the local errors of the Butcher method.
For example, we assume that b 8 ϵ [-1; 1]. Then increment Method of Butcher and Presentation of a Calculation Software b 8 by step of 0:0001 and 0:00001. compt = 100% are obtained (see Table 1). The code of the java programming is given on the annex page (see Appendix):

The RK7 Java Calculator
Let's design the RK7 Program Java.exe to compute digital solutions. Before installing the software, the user will have to install the JDK java package. Just copy it and paste it where you want it and the software is installed. By clicking on RK7 Program Java.exe, we get the following window (see Figure  3). The values of a; b; b8 are given by default. Note that b8 = b 8 . The value of h is automatically calculated according to the choices of a; b and n. Remember that x is between a and b.
The user will have to enter the range ( , ) which is defined by: = ( , ). He will also have to enter the exact solution in Exact solution range if he knows. Otherwise he can leave the field empty.
If the user clicks on calculation without filling in the field ( , ) there is an error and we obtain the following dialog box (see Figure 4). If after filling in the field ( , ) the user enters the field b8 = 0, then there is an error in the method and we obtain (see Figure 5). Let us know the differential equation of the publication [2] and take the table of Butcher [1], ie b8 = 77/1440. We obtain (see Figure 6).