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.

This trick is important: it means 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:

For the existence and uniqueness theory of systems, see Existence and uniqueness for systems. For when the homogeneous solution doesn’t have enough free parameters, see Linear independence of vector functions.

For visualizing trajectories of 2D systems, see Phase plane behaviour — different eigenvalue types produce different phase portraits.