A program for the numerical solution of ordinary differential equations that attempts to be efficient, irrespective of whether the problem is stiff or nonstiff. This is usually achieved by switching automatically in the code between different classes of methods.