Skip to main content

Solving Ordinary Differential Equations in Python

  • Book
  • Open Access
  • © 2024

You have full access to this open access Book


  • This book is open access, which means that you have free and unlimited access
  • Numerous examples and code segments help the reader to understand important and fundamental concepts
  • The book provides a deep understanding of ODE solvers and software
  • Explains both, the underlying mathematics and the practical implementation in Python

Part of the book series: Simula SpringerBriefs on Computing (SBRIEFSC, volume 15)

Buy print copy

Softcover Book USD 49.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

About this book

This open access volume explains the foundations of modern solvers for ordinary differential equations (ODEs). Formulating and solving ODEs is an essential part of mathematical modeling and computational science, and numerous solvers are available in commercial and open source software. However, no single ODE solver is the best choice for every single problem, and choosing the right solver requires fundamental insight into how the solvers work. This book will provide exactly that insight, to enable students and researchers to select the right solver for any ODE problem of interest, or implement their own solvers if needed. The presentation is compact and accessible, and focuses on the large and widely used class of solvers known as Runge-Kutta methods. Explicit and implicit methods are motivated and explained, as well as methods for error control and automatic time step selection, and all the solvers are implemented as a class hierarchy in Python.

Similar content being viewed by others


Table of contents (5 chapters)

Authors and Affiliations

  • Simula Research Laboratory AS, Oslo, Norway

    Joakim Sundnes

About the author

Joakim Sundnes is Chief Research Scientist at Simula Research Laboratory and teaches undergraduate programming at the University of Oslo. His research interests are scientific computing and computational science, particularly related to biomechanics and computational physiology. Mathematical models in these fields are typically formulated as differential equations, and he has spent more than two decades developing and implementing solvers for these models. He is also responsible for the main introductory programming class for natural science students at the University of Oslo, which includes a thorough introduction to ordinary differential equations. 

Bibliographic Information

Publish with us