A system of first-order linear ODEs describes multiple coupled functions whose rates of change depend on each other. Written in matrix form:

where is the unknown vector function, is an matrix of coefficients, and is a vector of forcing terms.

If , the system is homogeneous: .

If is constant (doesn’t depend on ), the system has constant coefficients, the most common case in introductory ODE courses.

How systems arise

Two common ways:

  1. Multiple interacting quantities, each with its own rate equation, all coupled. Examples:

    • Population dynamics: prey and predator populations affect each other (Lotka-Volterra).
    • Mixing problems: connected tanks where solute flows between them.
    • Mass-spring systems with multiple masses connected by springs.
  2. Reducing a higher-order ODE — any -th order ODE can be rewritten as first-order ODEs by introducing intermediate variables.

For an -th order ODE , set:

Then the original ODE becomes the system:

With and a suitable and , this is in standard form.

So we only need solution methods for first-order systems. Higher-order ODEs are a special case.

Two-dimensional example

A common constant-coefficient system:

In matrix form:

Solution via eigenvalues

For a constant-coefficient homogeneous system , try the ansatz where is a constant vector and a scalar.

Substituting: , which simplifies to

So is an eigenvalue of and is the corresponding eigenvector. The eigenvalues are the roots of the characteristic polynomial:

For a matrix, this gives — a quadratic, so up to two eigenvalues.

Each eigenvalue/eigenvector pair contributes one solution . The general solution is a linear combination:

This is the matrix analog of the Characteristic equation for second-order ODEs.

Three cases by eigenvalue type

Just as for scalar second-order ODEs, the behavior depends on what the eigenvalues look like:

Related: Existence and uniqueness for systems, Linear independence of vector functions for when the homogeneous solution lacks enough free parameters, and Phase plane behaviour for trajectories of 2D systems.