Jacobian matrices
The Jacobian matrix tells us how the rates of change in a dynamical system respond to small changes in its state variables. It is the multidimensional version of an ordinary derivative.
Begin with one variable
Suppose
\[\frac{dx}{dt}=f(x).\]Near a point \(x^*\), a small change \(\Delta x\) produces approximately
\[\Delta f\approx f'(x^*)\Delta x.\]The derivative therefore measures local sensitivity: how strongly the rate of change responds to a small displacement.
Why one derivative is not enough for two variables
Now suppose
\[\frac{dx}{dt}=f(x,y),\qquad\frac{dy}{dt}=g(x,y).\]Changing \(x\) can affect both \(dx/dt\) and \(dy/dt\). Changing \(y\) can also affect both rates. We therefore need four local sensitivities.
The Jacobian matrix
\[\boxed{J(x,y)=\begin{pmatrix}\dfrac{\partial f}{\partial x}&\dfrac{\partial f}{\partial y}\\[6pt]\dfrac{\partial g}{\partial x}&\dfrac{\partial g}{\partial y}\end{pmatrix}}.\]Rows correspond to equations. Columns correspond to variables.
| Entry | Meaning |
|---|---|
| \(\partial f/\partial x\) | effect of changing \(x\) on the rate of change of \(x\) |
| \(\partial f/\partial y\) | effect of changing \(y\) on the rate of change of \(x\) |
| \(\partial g/\partial x\) | effect of changing \(x\) on the rate of change of \(y\) |
| \(\partial g/\partial y\) | effect of changing \(y\) on the rate of change of \(y\) |
How to remember the layout
Take the first differential equation and differentiate its right-hand side with respect to every state variable. That gives the first row. Repeat for the second equation to obtain the second row.
A simple calculation
Consider
\[\frac{dx}{dt}=x(3-x-y),\] \[\frac{dy}{dt}=y(2-x-y).\]Write
\[f(x,y)=3x-x^2-xy,\qquad g(x,y)=2y-xy-y^2.\]The partial derivatives are
\[\frac{\partial f}{\partial x}=3-2x-y,\qquad\frac{\partial f}{\partial y}=-x,\] \[\frac{\partial g}{\partial x}=-y,\qquad\frac{\partial g}{\partial y}=2-x-2y.\]Therefore
\[\boxed{J(x,y)=\begin{pmatrix}3-2x-y&-x\\-y&2-x-2y\end{pmatrix}}.\]The Jacobian is usually a function of the state
Notice that this matrix still contains \(x\) and \(y\). Different points in the phase plane generally have different Jacobian matrices.
So there is an important distinction between
\[J(x,y)\]and the matrix evaluated at a particular equilibrium.
Evaluate at an equilibrium
For the example above, \((3,0)\) is an equilibrium. Substituting \(x=3\), \(y=0\) gives
\[J(3,0)=\begin{pmatrix}-3&-3\\0&-1\end{pmatrix}.\]This numerical matrix describes the local behaviour near that particular equilibrium.
Why do we evaluate at an equilibrium?
Stability asks what happens after a small displacement from an equilibrium. The Jacobian evaluated there tells us how that small displacement initially changes.
A Jacobian evaluated somewhere else describes local sensitivity there, but it is not directly the standard equilibrium stability calculation.
From a nonlinear system to a local linear system
Let
\[\mathbf{x}^*=\begin{pmatrix}x^*\\y^*\end{pmatrix}\]be an equilibrium and let a small displacement be
\[\mathbf{u}=\mathbf{x}-\mathbf{x}^*.\]Near the equilibrium, the nonlinear system can be approximated by
\[\boxed{\frac{d\mathbf{u}}{dt}\approx J(\mathbf{x}^*)\mathbf{u}}.\]This is called linearisation.
Why linearisation works
A multivariable Taylor expansion gives
\[\mathbf{F}(\mathbf{x}^*+\mathbf{u})\approx\mathbf{F}(\mathbf{x}^*)+J(\mathbf{x}^*)\mathbf{u}.\]Because \(\mathbf{x}^*\) is an equilibrium,
\[\mathbf{F}(\mathbf{x}^*)=\mathbf{0}.\]So the leading local behaviour is
\[\mathbf{F}(\mathbf{x}^*+\mathbf{u})\approx J(\mathbf{x}^*)\mathbf{u}.\]Geometric intuition
Diagonal entries
The diagonal entries describe local self-effects.
For example, \(\partial f/\partial x\) asks: if \(x\) increases slightly while other variables are held fixed, how does the growth rate of \(x\) respond?
In population models, a negative diagonal term often reflects self-limitation or density dependence, although interpretation always depends on the model.
Off-diagonal entries
The off-diagonal entries describe cross-effects between variables.
For example,
\[\frac{\partial f}{\partial y}\]measures how changing \(y\) affects the rate of change of \(x\).
These terms can represent competition, predation, infection, mutualism or other biological interactions.
The sign gives local interaction information
If \(\partial f/\partial y\lt0\), increasing \(y\) locally reduces the rate of change of \(x\). If \(\partial f/\partial y\gt0\), increasing \(y\) locally raises it.
Example: predator–prey interactions
Consider
\[\frac{dN}{dt}=rN-aNP,\] \[\frac{dP}{dt}=eaNP-mP.\]The Jacobian is
\[J(N,P)=\begin{pmatrix}r-aP&-aN\\eaP&eaN-m\end{pmatrix}.\]The off-diagonal signs have immediate biological meaning:
\[\frac{\partial}{\partial P}\left(\frac{dN}{dt}\right)=-aN\lt0,\]so more predators reduce prey growth, while
\[\frac{\partial}{\partial N}\left(\frac{dP}{dt}\right)=eaP\gt0,\]so more prey increase predator growth.
Example: infection coupling
In an epidemic model, an off-diagonal Jacobian entry can measure how a small increase in infectious individuals changes the instantaneous rate of susceptible loss or exposed gain.
This makes the Jacobian useful not only mathematically but also as a compact description of local biological coupling.
From the Jacobian to eigenvalues
Once the Jacobian has been evaluated at an equilibrium, its eigenvalues determine whether small perturbations grow or decay.
If every eigenvalue has negative real part, small disturbances decay and the equilibrium is locally asymptotically stable.
If at least one eigenvalue has positive real part, there is a direction in which disturbances grow, so the equilibrium is unstable.
Why eigenvalues appear
For the linearised system
\[\frac{d\mathbf u}{dt}=J\mathbf u,\]an eigenvector \(\mathbf v\) satisfies
\[J\mathbf v=\lambda\mathbf v.\]If a disturbance lies in that direction, its size behaves like
\[e^{\lambda t}.\]So the eigenvalue tells us whether that particular disturbance mode grows, decays or oscillates.
Trace and determinant in two dimensions
For
\[J=\begin{pmatrix}a&b\\c&d\end{pmatrix},\]define
\[\operatorname{tr}(J)=a+d,\qquad\det(J)=ad-bc.\]The eigenvalues satisfy
\[\lambda^2-\operatorname{tr}(J)\lambda+\det(J)=0.\]Therefore trace and determinant provide a compact route to local stability classification in two-dimensional systems.
Useful two-dimensional rules
| Condition | Typical conclusion |
|---|---|
| \(\det(J)\lt0\) | saddle, therefore unstable |
| \(\det(J)\gt0\), \(\operatorname{tr}(J)\lt0\) | both eigenvalues have negative real part: locally asymptotically stable |
| \(\det(J)\gt0\), \(\operatorname{tr}(J)\gt0\) | positive real part: unstable |
The discriminant tells us node or spiral
Define
\[D=\operatorname{tr}(J)^2-4\det(J).\]If \(D\gt0\), the eigenvalues are real. If \(D\lt0\), they are a complex conjugate pair, producing local rotational or oscillatory behaviour.
When linearisation is inconclusive
If an eigenvalue has zero real part, the Jacobian test may not determine the nonlinear stability. Higher-order nonlinear terms may become important.
Jacobian versus nullclines
Nullclines show where individual derivatives vanish and divide the phase plane into directional regions. The Jacobian measures local sensitivity and provides the matrix used for local stability analysis.
They answer different but complementary questions.
Jacobian versus the full nonlinear model
The full nonlinear equations describe behaviour throughout the state space. The Jacobian at an equilibrium describes only the leading behaviour close to that point.
Far from the equilibrium, nonlinear effects can dominate and the linear approximation may be poor.
Higher-dimensional systems
For
\[\frac{d\mathbf x}{dt}=\mathbf F(\mathbf x),\qquad \mathbf x=(x_1,\ldots,x_n)^T,\]the Jacobian is the \(n\times n\) matrix
\[\boxed{J_{ij}=\frac{\partial F_i}{\partial x_j}}.\]The same principle applies: row \(i\) corresponds to equation \(F_i\), and column \(j\) corresponds to variable \(x_j\).
A practical workflow
Write the differential equations clearly. Differentiate each right-hand side with respect to every state variable. Assemble the Jacobian. Find the equilibria. Substitute each equilibrium into the Jacobian. Calculate eigenvalues, or trace and determinant in two dimensions. Then interpret the result biologically and remember that the conclusion is local unless further analysis establishes global behaviour.