The methods most commonly employed by scientists to integrate o.d.e.s were first developed by the German mathematicians C.D.T. Runge and M.W. Kutta in the latter half of the nineteenth century.14The basic reasoning behind so-called Runge-Kutta methods is outlined in the following.
The main reason that Euler's method has such a large truncation error per step is that in
evolving the solution from to the method only evaluates
derivatives at the beginning of the
interval: i.e., at . The method is, therefore, very asymmetric with
respect to the beginning and the end of the interval. We can construct
a more symmetric integration method by making an Euler-like trial step
to the midpoint of the interval, and then using the values of both and
at the midpoint to make the real step across the interval. To be more exact,
(19) | |||
(20) | |||
(21) |
Of course, there is no need to stop at a second-order method. By using two trial steps per interval, it is possible to cancel out both the first and second-order error terms, and, thereby, construct a third-order Runge-Kutta method. Likewise, three trial steps per interval yield a fourth-order method, and so on.15
The general expression for the total error, , associated with
integrating our o.d.e. over an -interval of order unity using an
th-order Runge-Kutta method is approximately
(22) |
(23) | |||
(24) |
In the majority of cases, the limiting factor when numerically integrating an o.d.e. is not round-off error, but rather the computational effort involved in calculating the function . Note that, in general, an th-order Runge-Kutta method requires evaluations of this function per step. It can easily be appreciated that as is increased a point is quickly reached beyond which any benefits associated with the increased accuracy of a higher order method are more than offset by the computational ``cost'' involved in the necessary additional evaluation of per step. Although there is no hard and fast general rule, in most problems encountered in computational physics this point corresponds to . In other words, in most situations of interest a fourth-order Runge Kutta integration method represents an appropriate compromise between the competing requirements of a low truncation error per step and a low computational cost per step.
The standard fourth-order Runge-Kutta method takes the form: