Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
PHY321F — cp 2005 32<br />
More control over the process is achieved if the error can be monitored. Suppose<br />
we have two Runge-Kutta formulae, with solutions y(x + h) of order<br />
h n+1 and ŷ(x + h) of order h n , <strong>The</strong>n the difference y − ŷ gives an estimate<br />
of the error in y. This is especially useful if we can obtain both y and ŷ<br />
from the same set of Runge-Kutta steps. (Such formulae are known as embedded<br />
Runge-Kutta formulae; the additional work does not take additional<br />
expensive evaluations of the function f).<br />
Once we have an estimate of the error, it can be used to control the stepsize<br />
so that some maximum error per step is not exceeded. This leads to a set<br />
of adaptive Runge-Kutta methods. A modern adaptive RK code is rksuite<br />
(or rksuite90), available from netlib.<br />
D.3 Other methods<br />
D.3.1<br />
Predictor-corrector methods<br />
<strong>The</strong> Euler and Runge-Kutta methods extrapolate from one point to the next.<br />
Higher accuracy can be obtained by using several previous steps. <strong>The</strong>se multistep<br />
methods are usually implemented as predictor-corrector schemes. An<br />
extrapolation is made to the next point using an explicit multistep formula.<br />
<strong>The</strong> value obtained is then used in an implicit multistep formula to correct<br />
this prediction. This scheme also permits error control by adaptive step<br />
sizing. A standard PC code is vode (and related codes), available from<br />
netlib.<br />
<strong>The</strong>se methods give high accuracy integrators, but are more complicated and<br />
fussy to program than RK.<br />
D.3.2<br />
Extrapolation methods<br />
Burlisch-Stoer methods (see, e.g. Numerical Recipes) use Richardson extrapolation<br />
to the limit h → 0 in order to improve accuracy. Press. et. al seem to<br />
think that these methods are about to replace PC methods (if they haven’t<br />
already). Others disagree.