Ordinary Differential Equations

Ordinary differential equation initial value problem solvers

The Ordinary Differential Equation (ODE) solvers in MATLAB® solve initial value problems with a variety of properties. The solvers can work on stiff or nonstiff problems, problems with a mass matrix, differential algebraic equations (DAEs), or fully implicit problems. For more information, see Choose an ODE Solver.


expand all

ode45Solve nonstiff differential equations — medium order method
ode23Solve nonstiff differential equations — low order method
ode113Solve nonstiff differential equations — variable order method
ode15sSolve stiff differential equations and DAEs — variable order method
ode23sSolve stiff differential equations — low order method
ode23tSolve moderately stiff ODEs and DAEs — trapezoidal rule
ode23tbSolve stiff differential equations — trapezoidal rule + backward differentiation formula
ode15iSolve fully implicit differential equations — variable order method
decicCompute consistent initial conditions for ode15i
odegetExtract ODE option values
odesetCreate or modify options structure for ODE and PDE solvers
devalEvaluate differential equation solution structure
odextendExtend solution to ODE


Choose an ODE Solver

ODE background information, solver descriptions, algorithms, and example summary.

Solve Predator-Prey Equations

This example shows how to solve a differential equation representing a predator/prey model using both ode23 and ode45.

Summary of ODE Options

Usage of odeset and table indicating which options work with each ODE solver.

ODE Event Location

Detect events during solution of ODE.

Solve Nonstiff ODEs

This page contains two examples of solving nonstiff ordinary differential equations using ode45.

Solve Stiff ODEs

This page contains two examples of solving stiff ordinary differential equations using ode15s.

Solve Differential Algebraic Equations (DAEs)

Solve ODEs with a singular mass matrix.

Nonnegative ODE Solution

This topic shows how to constrain the solution of an ODE to be nonnegative.

Troubleshoot Common ODE Problems

FAQ containing common problems and solutions.