Fifth-Order Runge-Kutta With Higher Order Derivative Approximations
Fifth-Order Runge-Kutta With Higher Order Derivative Approximations
Fifth-Order Runge-Kutta With Higher Order Derivative Approximations
of Central Oklahoma,
Electronic Journal of Dierential Equations, Conference 02, 1999, pp. 19.
ISSN: 1072-6691. URL: http://ejde.math.swt.edu or http://ejde.math.unt.edu
ftp ejde.math.swt.edu (login: ftp)
Fifth-order Runge-Kutta with higher order
derivative approximations
David Goeken & Olin Johnson
Abstract
Given y
2
for all (x, y
1
), (x, y
2
) D; thus the problem
y
= f(x, y)
y(x
0
) = y
0
with (x
0
, y
0
) D
has a unique solution.
= f(y)
y(x
0
) = y
0
where (y
0
)
n+1
= x
0
.
Most eorts to increase the order of the Runge-Kutta methods have been ac-
complished by increasing the number of Taylors series terms used and thus the
number of functional evaluations required (Butcher 1987) (Gear 1971). The use
of higher order derivative terms has been proposed for sti problems (Rosen-
brock 1963) (Enright 1974). Our method adds higher order derivative terms to
the Runge-Kutta k
i
terms (i > 1) to achieve a higher order of accuracy. For
example, our new third-order method, GJ3, for autonomous systems, lets
y
n+1
= y
n
+ b
1
k
1
+ b
2
k
2
and k
1
= hf(y
n
). However, we introduce additional terms by assigning
k
2
= hf(y
n
+ a
21
k
1
+ ha
22
f
y
(y
n
)k
1
)
Using Taylors series expansion techniques, the above is uniquely satised to
O(h
3
) as follows
k
1
= hf(y
n
)
k
2
= hf(y
n
+
2
3
k
1
+
2
9
hf
y
(y
n
)k
1
)
y
n+1
= y
n
+
1
4
k
1
+
3
4
k
2
2 Utilizing f
y
The previous section developed a two-stage, third-order method; however, it
introduced a term with f
y
. The result is the addition of a higher derivative term
to the standard Runge-Kutta method. The following describes three methods
to utilize f
y
.
Method 1: If one knows or can generate f
y
, and if the evaluation of f
y
is
cheaper than the evaluation of f, then savings can be realized. For example,
with a linear system of equations, y
= Ay, f
y
is known and constant.
Method 2: Since y
= f
= f
y
f for autonomous equations, and since k
1
= hf,
k
2
can be replaced with
k
2
= hf(y
n
+
2
3
k
1
+
2
9
hf
y
k
1
)
= hf(y
n
+
2
3
k
1
+
2
9
hf
y
hf)
David Goeken & Olin Johnson 3
= hf(y
n
+
2
3
k
1
+
2
9
h
2
f
y
f)
= hf(y
n
+
2
3
k
1
+
2
9
h
2
f
)
or
k
2
= hf(y
n
+
2
3
k
1
+
2
9
h
2
y
) .
Again, savings can be realized if one can formulate y
(or f
) and if it is cheaper
to evaluate than f.
Method 3: Building onto Method 2, one can approximate y
(or f
) by using
the current and previous evaluations of f. For our third-order method, this
approximation must be of O(h). Since an O(h) approximation of f
is given by
f
= (f
n
f
n1
)/h, one can approximate k
2
as follows
k
2
= hf(y
n
+
2
3
k
1
+
2
9
h
2
f
)
= hf(y
n
+
2
3
k
1
+
2
9
h
2
(f
n
f
n1
)/h)
= hf(y
n
+
2
3
k
1
+
2
9
h(f
n
f
n1
))
Since f
n
is calculated in the current step in the evaluation of k
1
, one only has
to store the previous value, f
n1
. In eect, the use of previous values for the
approximation has created a multistep Runge-Kutta method.
3 Fourth-order method
Similarly, our fourth-order method, GJ4, for autonomous systems, lets
y
n+1
= y
n
+ b
1
k
1
+ b
2
k
2
+ b
3
k
3
and
k
1
= hf(y
n
)
k
2
= hf(y
n
+ a
21
k
1
+ ha
22
f
y
(y
n
)k
1
)
k
3
= hf(y
n
+ a
31
k
1
+ a
32
k
2
+ ha
33
f
y
(y
n
)k
1
+ ha
34
f
y
(y
n
)k
2
)
The Taylors series expansion of these higher order methods is tedious and error
prone. We used modern symbolic math packages to expand and then to solve the
resulting systems of nonlinear equations that were generated. In this work, we
used the symbolic math packages Reduce (Reduce 1999), PARI/GP (PARI/GP
1999), and Octave (Eaton 1997).
PARI/GP was used to generate the Taylors series expansion of the above,
resulting in the following system of equations
b
1
+ b
2
+ b
3
= 1
4 Fifth-order Runge-Kutta
b
2
a
21
+ b
3
[a
31
+ a
32
] = 1/2
b
2
a
2
21
+ b
3
[a
31
+ a
32
]
2
= 1/3
b
2
a
3
21
+ b
3
[a
31
+ a
32
]
3
= 1/4
b
2
a
22
+ b
3
[a
21
a
32
+ a
33
+ a
34
] = 1/6
b
3
[a
21
a
34
+ a
22
a
32
] = 1/24
b
2
a
21
a
22
+ b
3
[a
21
a
32
(
1
2
a
21
+ a
31
+ a
32
) + (a
31
+ a
32
)(a
33
+ a
34
)] = 1/6
However, in order to utilize Methods 2 and 3 of Section 2, we must restrict the
solution with a
34
= 0. The general solution to the above system of equations
(with a
34
= 0) has been found with Reduce and example solutions are shown in
Table 1.
Table 1: Example of fourth-order autonomous solutions
b
1
b
2
b
3
a
21
a
22
a
31
a
32
a
33
1/6 1/6 2/3 1 1/2 3/8 1/8 0
1/6 2/3 1/6 1/2 1/8 -1 2 1/2
1/6 2/3 1/6 1/2 1/8 3 -2 5/2
1/10 1/2 2/5 1/3 1/18 25/24 15/8 5/18
1/10 1/2 2/5 1/3 1/6 35/24 5/8 5/6
4 Fifth-order method
In July of 1998, the authors presented (Goeken 1999) this numerical integration
technique at a meeting attended by Dr. John Butcher. Using his tree-based
approach (Butcher 1987), Dr. Butcher suggested a fth-order method. Since
the meeting, his technique has been veried using Taylors series expansion
techniques to determine the general solution for our fth-order methods.
Our fth-order method, GJ5, for autonomous systems, lets
y
n+1
= y
n
+ b
1
k
1
+ b
2
k
2
+ b
3
k
3
+ b
4
k
4
and
k
1
= hf(y
n
)
k
2
= hf(y
n
+ a
21
k
1
+ ha
22
f
y
(y
n
)k
1
)
k
3
= hf(y
n
+ a
31
k
1
+ a
32
k
2
+ ha
33
f
y
(y
n
)k
1
)
k
4
= hf(y
n
+ a
41
k
1
+ a
42
k
2
+ a
43
k
3
+ ha
44
f
y
(y
n
)k
1
)
PARI/GP was used to generate the Taylors series expansion of the above,
resulting in the following system of equations
b
1
+ b
2
+ b
3
+ b
4
= 1
David Goeken & Olin Johnson 5
b
2
a
21
+ b
3
[a
31
+ a
32
] + b
4
[a
41
+ a
42
+ a
43
] = 1/2
b
2
a
2
21
+ b
3
[a
31
+ a
32
]
2
+ b
4
[a
41
+ a
42
+ a
43
]
2
= 1/3
b
2
a
22
+ b
3
[a
21
a
32
+ a
33
] + b
4
[a
21
a
42
+ a
43
(a
31
+ a
32
) + a
44
] = 1/6
b
2
a
3
21
+ b
3
[a
31
+ a
32
]
3
+ b
4
[a
41
+ a
42
+ a
43
]
3
= 1/4
b
2
a
21
a
22
+ b
3
[
1
2
a
2
21
a
32
+ (a
31
+ a
32
)(a
21
a
32
+ a
33
)] +
1
2
b
4
[a
2
21
a
42
+a
43
(a
31
+ a
32
)
2
+ 2(a
41
+ a
42
+ a
43
)(a
21
a
42
+ (a
31
+ a
32
)a
43
+ a
44
)] = 1/6
b
3
a
22
a
32
+ b
4
[a
21
a
32
a
43
+ a
22
a
42
+ a
33
a
43
] = 1/24
b
2
a
4
21
+ b
3
[a
31
+ a
32
]
4
+ b
4
[a
41
+ a
42
+ a
43
]
4
= 1/5
3b
2
a
2
21
a
22
+ b
3
[a
3
21
a
32
+ 3(a
31
+ a
32
)
2
(a
21
a
32
+ a
33
)] + b
4
[a
3
21
a
42
+(a
31
+ a
32
)
3
a
43
+ 3(a
41
+ a
42
+ a
43
)
2
(a
21
a
42
+ (a
31
+ a
32
)a
43
+ a
44
)] = 7/20
b
3
a
2
21
a
32
(a
31
+ a
32
) + b
4
[(a
41
+ a
42
+ a
43
)(a
2
21
a
42
+ (a
31
+ a
32
)
2
a
43
)] = 1/15
1
2
b
2
a
2
22
+ b
3
[a
21
a
32
(
1
2
a
21
a
32
+ a
22
+ a
33
) + a
22
a
32
(a
31
+ a
32
) +
1
2
a
2
33
]
+b
4
[
1
2
a
2
21
(a
32
a
43
+ a
2
42
) + (a
31
+ a
32
)(a
21
(a
32
a
43
+ a
42
a
43
) + a
43
(a
33
+ a
44
)
+
1
2
(a
31
+ a
32
)a
2
43
) + a
21
a
42
(a
22
+ a
44
) + (a
21
a
32
a
43
+ a
22
a
42
+a
33
a
43
)(a
41
+ a
42
+ a
43
) +
1
2
a
2
44
] = 11/120
b
4
a
22
a
32
a
43
= 1/120
The solution presented by Dr. Butcher and veried using the above system of
equations is
k
1
= hf(y
n
)
k
2
= hf(y
n
+
1
3
k
1
+
1
18
hf
y
k
1
)
k
3
= hf(y
n
152
125
k
1
+
252
125
k
2
44
125
hf
y
k
1
)
k
4
= hf(y
n
+
19
2
k
1
72
7
k
2
+
25
14
k
3
+
5
2
hf
y
k
1
)
y
n+1
= y
n
+
5
48
k
1
+
27
56
k
2
+
125
336
k
3
+
1
24
k
4
Additional solutions to the above nonlinear system of equations have been found
using Octave. Three additional solutions are shown in Table 2.
5 Numerical results
To demonstrate that the new methods are of the order claimed, several equa-
tions have been solved using the new third-, fourth-, and fth-order method
6 Fifth-order Runge-Kutta
Table 2: Example of fth-order autonomous solutions
b
1
1/24 5/54 1/14
b
2
125/336 250/567 32/81
b
3
27/56 32/81 250/567
b
4
5/48 1/14 5/54
a
21
1/5 3/10 1/4
a
22
1/50 9/200 1/32
a
31
-52/27 -9/8 -329/250
a
32
70/27 15/8 252/125
a
33
-8/27 -9/32 -259/1000
a
41
43/5 17/3 209/35
a
42
-64/7 -490/81 -32/5
a
43
54/35 112/81 10/7
a
44
13/10 23/18 11/10
Table 3: Test problems
Function Solution y(0)
y
= y y = e
t
1
y
=
y
4
y
2
80
y =
20
1+19e
t
4
1
on scalar autonomous equations, systems of autonomous equations, and scalar
non-autonomous equations.
Our previous paper (Goeken 1999) demonstrated the third- and fourth-order
methods utilizing f
y
and the approximation to f
.
Table 4: Number of evaluations comparison
Standard Proposed Method Proposed Method
Runge-Kutta Exact f
y
Approximating f