Most numerical treatments of initial value problems for ordinary differential equations with singularities are specially designed techniques using some a priori knowledge of the singularity. A variety of such special-purpose formulas are reviewed briefly by the authors. They suggest, in contrast, that conventional techniques be modified to accommodate the detection and location of such singular points, and propose how this may be done. Such modifications in general-purpose software could then be used to invoke software designed to treat singularities automatically when appropriate.
Their approach is illustrated using an explicit Runge-Kutta pair of orders 5 and 6 with an order 6 interpolant obtained using 12 derivative evaluations per step. Some economically evaluated heuristics are designed to detect a singularity, and some additional formulas are proposed to locate this singularity. This approach is successful on three problems explicitly used for illustration both in detecting the singularity using a range of tolerances and in locating the singular point (to an accuracy that is independent of the tolerance).
Two technical points could be improved in the presentation. Using &tgr; = ( x - x n )&slash; h in equation (1.4) gives a Taylor polynomial with coefficients { a in } . For the corresponding series for y ( x ) of equation (2.2), equation (2.10) should read
( y ( j + 1 ) ( x n ) &slash; ( j + 1 )! ) &slash; ( y ( j ) ( x n ) &slash; j ! ) ≈
( &agr; + j ) &slash; ( j + 1 ) ( x s - x n ) .
Also, the final two columns of Tables 3, 6, and 9 should be titled to reflect intervals that contain the singular points. The proposals of this paper will be of interest to researchers developing software for or solving problems that sometimes contain singularities.