Runge-Kutta-Fehlberg ODE Solver

RKF45 is a MATLAB library which implements the Watt and Shampine RKF45 ODE solver.

The RKF45 ODE solver is a Runge-Kutta-Fehlberg algorithm for solving an ordinary differential equation, with automatic error estimation using rules of order 4 and 5.


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


RKF45 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:

DFIELD8, a MATLAB program which interactively displays the direction field of a differential equation, by John Polking.

FLAME_ODE, a MATLAB library which considers an ordinary differential equation (ODE) which models the growth of a ball of flame in a combustion process.

ODE_PREDATOR_PREY, a MATLAB program which solves a time-dependent predator-prey system using MATLAB's ODE23 solver.

PPLANE8, a MATLAB program which interactively displays the phase plane of a differential equation, by John Polking.

TEST_ODE, a MATLAB library which defines some sample ODE's for testing initial value problem 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.
  3. The source code for Shampine and Watt's original FORTRAN77 routine is available at http://www.netlib.org/ode/ the NETLIB ODE web site.

Source Code:

Examples and Tests:

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

Last revised on 30 June 2011.