Solving ordinary differential equations II : stiff and differential-algebraic problems - Hairer, Ernst (Springer, 2010)