Runge-Kutta 4th Order ODE Solver

RK4 is a FORTRAN90 library which implements a simple Runge-Kutta solver for an initial value problem.

The rk4() routine does not include any error estimator. It takes a single step at a time, requiring the user to control the step size.


The computer code and data files described and made available on this web page are distributed under the GNU LGPL license.


RK4 is available in a C version and a C++ version and a FORTRAN77 version and a FORTRAN90 version and a MATLAB version and a Python version.

Related Data and Programs:

NMS, a FORTRAN90 library which includes the DDRIV package of ODE solvers.

ODE, a FORTRAN90 library which solves a system of ordinary differential equations, by Shampine and Gordon.

RKF45, a FORTRAN90 library which implements the Runge-Kutta-Fehlberg ODE solver.

TEST_ODE, a FORTRAN90 library which contains routines which define some test problems for ODE solvers.


  1. Erwin Fehlberg,
    Low-order Classical Runge-Kutta Formulas with Stepsize Control,
    NASA Technical Report R-315, 1969.
  2. Lawrence Shampine, Herman Watts, S Davenport,
    Solving Non-stiff Ordinary Differential Equations - The State of the Art,
    SIAM Review,
    Volume 18, pages 376-411, 1976.

Source Code:

Examples and Tests:

List of Routines:

You can go up one level to the FORTRAN90 source codes.

Last revised on 31 January 2012.