Package deSolve is an add-on package of the open source data analysis system R for the numerical treatment of systems of differential equations.

The package contains functions that solve initial value problems of a system of first-order ordinary differential equations (ODE), of partial differential equations (PDE), of differential algebraic equations (DAE), and of delay differential equations (DDE). The functions provide an interface to the FORTRAN functions lsoda, lsodar, lsode, lsodes of the ODEPACK collection, to the FORTRAN functions dvode, zvode, daspk and radau5, and a C-implementation of solvers of the Runge-Kutta family with fixed or variable time steps. The package contains also routines designed for solving ODEs resulting from 1-D, 2-D and 3-D partial differential equations (PDE) that have been converted to ODEs by numerical differencing.


2017-07-04: Tutorial about Environmental modelling with R at the useR!2017 conference in Brussels

Software Download



The manuals are directly contained in the deSolve package::


Papers and Books


A big amount of working hours and spare time went into this package. It is provided free of charge under the GPL 2 or GPL 3 license. Please cite our JSS paper and please don’t forget the original authors of the original algorithms, especially ODEPACK. The bibliography can be found here.

Mailing List

All questions related to deSolve and other related questions about dynamic modelling in R can be directed to the R-sig-dynamic-models mailing list. Directing your questions to this list is recommended, as there is now a broad basis of users and developers that can help you, and your questions can contribute to the knowledge base.


The authors of this package want to thank R. Woodrow Setzer who developed and to Martin Maechler, who contributed to the predecessor package odesolve. We are grateful to the R Core Team who made this possible and to the whole community for their tools, documentations, discussions and suggestions.

2017-06-30 The deSolve authors.