The cause of erroneous oscillatory behavior when solving systems of ordinary differential equations with state-of-the-art software has been investigated. It is demonstrated that a common cause of this oscillatory behavior is the cyclic variation of the local truncation error and the step size when explicit integration algorithms with adaptive step size control are used. It is shown that non-stiff systems can also exhibit such a behavior and it can be detected by monitoring the relative errors in the derivative values during the integration. It is proposed to include the estimated error in the derivative values in the step size control algorithms in order to prevent the cyclic variation of the step size and the resultant oscillatory behavior.
- Error estimation
- Ordinary differential equations
- Runge-Kutta method
- Step size control