When the s-stage fully implicit Runge–Kutta (RK) method is used to solve a system of n ordinary differential equations (ODE) the resulting algebraic system has a dimension ns. Its solution by Gauss elimination is expensive and requires 2s3n3/3 operations. In this paper we present an efficient algorithm, which differs from the traditional RK method. The formal procedure for uncoupling the algebraic system into a block-diagonal matrix with s blocks of size n is derived for any s. Its solution is s2/2 times faster than the original, nondiagonalized system, for s even, and s3/(s−1) for s odd in terms of number of multiplications, as well as s2 times in terms of number of additions/multiplications. In particular, for s=3 the method has the same precision and stability properties as the well-known RK-based RadauIIA quadrature of Ehle, implemented by Hairer and Wanner in RADAU5 algorithm. Unlike RADAU5, however, the method is applicable with any s and not only to the explicit ODEs My′=f(x, y), where M=const., but also to the general implicit ODEs of the form f(x, y, y′)=0. The block-diagonal form of the algebraic system allows parallel processing. The algorithm formally differs from the implicit RK methods in that the solution for y is assumed to have a form of the algebraic polynomial whose coefficients are found by enforcing y to satisfy the differential equation at the collocation points. Locations of those points are found from the derived stability function such as to guarantee either A- or L-stability properties as well as a superior precision of the algorithm. If constructed such as to be L-stable the method is a good candidate for solving differential-algebraic equations (DAEs). Although not limited to any specific field, the application of the method is illustrated by its implementation in the multibody dynamics described by both ODEs and DAEs. Copyright © 2000 John Wiley & Sons, Ltd.
Read full abstract