---
title: Locally Linear Systems and Liapunov's Method
module: Nonlinear Systems and Stability
moduleNumber: 8
lessonNumber: 2
order: 802
summary: >
  Near a critical point a nonlinear system looks linear, and the linear part is
  the Jacobian. The linearization fixes the type and stability of the nonlinear
  critical point in every case except a center or a repeated eigenvalue.
  Liapunov's direct method settles those cases and bounds the basin of
  attraction by constructing an energy-like function, without solving the system.
topics: [Nonlinear Systems and Stability]
sources:
  - book: Boyce
    ref: "Ch. 9 §9.3 Locally Linear Systems; §9.6 Liapunov's Second Method"
  - book: Simmons
    ref: "Ch. 11 §61 Stability by Liapunov's Direct Method; §62 Simple Critical Points of Nonlinear Systems; §63 Nonlinear Mechanics; Conservative Systems"
draft: false
---

A linear system has an eigenvalue formula for the type and stability of its one
critical point; a nonlinear system has no such formula. Near a critical point,
though, its direction field is almost indistinguishable from that of a linear
system, and two tools exploit this. **Linearization** replaces the nonlinear
system near a critical point by its Jacobian and reads type and stability off
the eigenvalues, valid in every case but two. **Liapunov's direct method**
handles those two cases and more, deciding stability by constructing an
energy-like function without ever solving the differential equation.

## Locally linear systems

Place the critical point of interest at the origin; a substitution
$\mathbf{u} = \mathbf{x} - \mathbf{x}_0$ always arranges this. Split the system
into its linear and nonlinear parts,

$$
\mathbf{x}' = A\mathbf{x} + \mathbf{g}(\mathbf{x}),
$$

where $A$ is a constant matrix with $\det A \neq 0$, so that the origin is an
isolated critical point. The question is how small $\mathbf{g}$ must be for the
trajectories of $\mathbf{x}' = A\mathbf{x}$ to approximate those of the full
system near the origin.

> **Definition (Locally linear system).** The system $\mathbf{x}' = A\mathbf{x} +
> \mathbf{g}(\mathbf{x})$ is **locally linear** near the origin if
> $\mathbf{g}$ has continuous first partial derivatives and
> $$
> \frac{\|\mathbf{g}(\mathbf{x})\|}{\|\mathbf{x}\|} \to 0 \quad \text{as } \mathbf{x} \to \mathbf{0}.
> $$
> The nonlinear term vanishes faster than $\mathbf{x}$ itself; it is negligible
> compared to the linear term near the origin.

The condition need not be checked by hand. If $F$ and $G$ have continuous second
partial derivatives, Taylor's theorem supplies the linear part automatically.
Expanding about a critical point $(x_0, y_0)$ where $F(x_0, y_0) = G(x_0, y_0) =
0$,

$$
F(x, y) = F_x(x_0, y_0)(x - x_0) + F_y(x_0, y_0)(y - y_0) + \eta_1,
$$

and likewise for $G$, with the remainders $\eta_i$ satisfying
$\eta_i / \|\mathbf{x} - \mathbf{x}_0\| \to 0$. The linear coefficients assemble
into the **Jacobian matrix**.[^boyce-jac]

> **Definition (Jacobian matrix).** For $\mathbf{f} = (F, G)$, the matrix of
> first partial derivatives
> $$
> J(x, y) = \begin{pmatrix} F_x & F_y \\ G_x & G_y \end{pmatrix}.
> $$
> The linear system approximating $\mathbf{x}' = \mathbf{f}(\mathbf{x})$ near a
> critical point $(x_0, y_0)$ is $\mathbf{u}' = J(x_0, y_0)\,\mathbf{u}$, with
> $\mathbf{u} = \mathbf{x} - \mathbf{x}_0$.

$$
% caption: Linearization evaluates the Jacobian at the critical point; the
% resulting constant matrix is the coefficient matrix of the local linear system.
\begin{tikzpicture}[scale=1.0, >=stealth, font=\footnotesize,
  box/.style={draw, minimum width=34mm, minimum height=15mm, align=center}]
\definecolor{acc}{HTML}{4A6FA5}
\node[box] (nl) at (0,0) {nonlinear system\\$x'=F(x,y)$\\$y'=G(x,y)$};
\node[box] (jac) at (5.4,0) {Jacobian at $(x_0,y_0)$\\entries $F_x,\ F_y,\ G_x,\ G_y$};
\node[box, draw=acc, text=acc] (lin) at (10.8,0) {local linear system\\$\mathbf{u}'=J(x_0,y_0)\,\mathbf{u}$};
\draw[->, acc, thick] (nl) -- (jac) node[midway, above, font=\scriptsize, black!70] {differentiate};
\draw[->, acc, thick] (jac) -- (lin) node[midway, above, font=\scriptsize, black!70] {evaluate};
\end{tikzpicture}
$$

> **Worked example.** Linearize the damped pendulum at its two equilibrium
> types. With $x = \theta$ and $y = \theta'$,
> $$
> x' = y, \qquad y' = -\omega^2 \sin x - \gamma y,
> $$
> the critical points are $(\pm n\pi, 0)$. Writing $F = y$ and
> $G = -\omega^2 \sin x - \gamma y$, the Jacobian is
> $$
> J(x, y) = \begin{pmatrix} 0 & 1 \\ -\omega^2 \cos x & -\gamma \end{pmatrix}.
> $$
> At the origin $(0, 0)$, $\cos x = 1$, so
> $$
> \mathbf{u}' = \begin{pmatrix} 0 & 1 \\ -\omega^2 & -\gamma \end{pmatrix}\mathbf{u},
> \qquad r_{1,2} = \frac{-\gamma \pm \sqrt{\gamma^2 - 4\omega^2}}{2}.
> $$
> For small damping $\gamma^2 < 4\omega^2$ the eigenvalues are complex with
> negative real part: the origin is an asymptotically stable spiral, the bob
> settling into decaying oscillations. At the inverted position $(\pi, 0)$,
> $\cos x = -1$, and the eigenvalues become
> $r_{1,2} = (-\gamma \pm \sqrt{\gamma^2 + 4\omega^2})/2$, one positive and one
> negative: an unstable saddle, the bob balanced on end.[^boyce-pend]

$$
% caption: Phase portrait of the pendulum: hanging equilibria are stable
% spirals, inverted equilibria are saddles, and the saddle separatrices divide
% back-and-forth swinging from over-the-top rotation.
\begin{tikzpicture}[scale=1.0, >=stealth, font=\footnotesize]
\definecolor{acc}{HTML}{4A6FA5}
\definecolor{sep}{HTML}{B4532A}
\draw[->, black] (-4.4,0)--(4.4,0) node[right, black] {$x$};
\draw[->, black] (0,-1.75)--(0,1.75) node[above, black] {$y$};
% critical points: spiral sinks at 0 and +/-3.2; saddles at +/-1.6
\fill[black] (0,0) circle (1.6pt);
\fill[black] (3.2,0) circle (1.6pt);
\fill[black] (-3.2,0) circle (1.6pt);
\fill[black] (1.6,0) circle (1.9pt);
\fill[black] (-1.6,0) circle (1.9pt);
\node[anchor=north, font=\scriptsize] at (0,-0.14) {spiral sink};
\node[anchor=south, font=\scriptsize] at (1.6,0.12) {saddle};
% inward spiral at the origin
\draw[acc, ->, domain=0:400, samples=80, variable=\t]
  plot ({(0.66 - 0.0014*\t)*cos(\t)}, {0.55*(0.66 - 0.0014*\t)*sin(\t)});
% saddle separatrix arms at the right saddle
\draw[sep, thick] (0.85,1.05) .. controls (1.35,0.45) .. (1.6,0.0);
\draw[sep, thick] (1.6,0.0) .. controls (1.85,-0.45) .. (2.35,-1.05);
\draw[sep, thick] (2.35,1.05) .. controls (1.85,0.45) .. (1.6,0.0);
\draw[sep, thick] (1.6,0.0) .. controls (1.35,-0.45) .. (0.85,-1.05);
% saddle separatrix arms at the left saddle
\draw[sep, thick] (-0.85,1.05) .. controls (-1.35,0.45) .. (-1.6,0.0);
\draw[sep, thick] (-1.6,0.0) .. controls (-1.85,-0.45) .. (-2.35,-1.05);
\draw[sep, thick] (-2.35,1.05) .. controls (-1.85,0.45) .. (-1.6,0.0);
\draw[sep, thick] (-1.6,0.0) .. controls (-1.35,-0.45) .. (-0.85,-1.05);
% over-the-top rotation trajectories
\draw[acc, ->] (-4.3,1.25) .. controls (-1.0,0.75) and (1.0,0.75) .. (4.3,1.25);
\draw[acc, <-] (-4.3,-1.25) .. controls (-1.0,-0.75) and (1.0,-0.75) .. (4.3,-1.25);
\end{tikzpicture}
$$

## Validity of the linearization

The central theorem says that the type and stability of the nonlinear critical
point match those of the linear system — except in two borderline cases.[^boyce-thm]

> **Theorem (Linearization).** Let $r_1, r_2$ be the eigenvalues of $J(x_0,
> y_0)$ for a locally linear system. The type and stability of the critical point
> of the nonlinear system agree with those of the linear system in every case
> **except** the two sensitive ones below, where the nonlinear terms can change
> the outcome.

Both exceptions sit at the borderline configurations of the
[trace–determinant plane](/differential-equations/nonlinear/phase-plane-autonomous-stability):

- **Pure imaginary eigenvalues (a center).** The linear system predicts closed
  orbits, but the nonlinear terms may spiral them slowly inward or outward. The
  center can become a spiral sink, a spiral source, or remain a center; the
  linearization cannot tell which.
- **Equal real eigenvalues (a node).** The nonlinear terms may bend the node into
  a spiral point. The _stability_ is unaffected — a stable node stays stable —
  but the geometric type is undetermined.

| Linear eigenvalues | Linear type | Nonlinear type | Nonlinear stability |
| --- | --- | --- | --- |
| $r_1 > r_2 > 0$ | Node | Node | Unstable |
| $r_1 < r_2 < 0$ | Node | Node | Asymptotically stable |
| $r_2 < 0 < r_1$ | Saddle | Saddle | Unstable |
| $r_1 = r_2 > 0$ | Node | Node or spiral | Unstable |
| $r_1 = r_2 < 0$ | Node | Node or spiral | Asymptotically stable |
| $\lambda \pm i\mu,\ \lambda \neq 0$ | Spiral | Spiral | matches sign of $\lambda$ |
| $\pm i\mu$ (center) | Center | Center **or** spiral | Indeterminate |

Away from the two sensitive rows, a nonlinear critical
point can be classified by a single evaluation of the Jacobian. The trajectories
of the full system may look quite different from the linear ones far from the
critical point, but the slopes at which trajectories enter or leave the critical
point are given correctly by the linear system.

$$
% caption: Near an asymptotically stable spiral, the nonlinear portrait (left)
% and its linearization (right) share the same inward-spiralling character.
\begin{tikzpicture}[scale=1.0, >=stealth, font=\footnotesize]
\definecolor{acc}{HTML}{4A6FA5}
% ---- nonlinear (left): a skewed spiral ----
\begin{scope}[xshift=0cm]
  \draw[black] (-1.5,0)--(1.5,0); \draw[black] (0,-1.5)--(0,1.5);
  \draw[acc, ->, domain=0:610, samples=110, variable=\t]
    plot ({(1.3 - 0.00196*\t)*cos(\t)+0.18*sin(2*\t)}, {(1.3 - 0.00196*\t)*sin(\t)});
  \fill[black] (0,0) circle (1.5pt);
  \node[anchor=north] at (0,-1.85) {nonlinear system};
\end{scope}
% ---- linear (right): a clean spiral ----
\begin{scope}[xshift=5.4cm]
  \draw[black] (-1.5,0)--(1.5,0); \draw[black] (0,-1.5)--(0,1.5);
  \draw[acc, ->, domain=0:610, samples=110, variable=\t]
    plot ({(1.3 - 0.00196*\t)*cos(\t)}, {(1.3 - 0.00196*\t)*sin(\t)});
  \fill[black] (0,0) circle (1.5pt);
  \node[anchor=north] at (0,-1.85) {linearization};
\end{scope}
\draw[black, ->] (1.9,0)--(3.4,0) node[midway, above, font=\scriptsize] {zoom in};
\end{tikzpicture}
$$

The indeterminate center row remains. The undamped pendulum $x' = y$,
$y' = -\omega^2 \sin x$ has a center at the origin for the linear system, and the
theorem says nothing about the nonlinear system. Resolving it requires a
different method.

## Liapunov's direct method

Liapunov's method comes from mechanics. For a conservative system, two physical
principles govern equilibrium: a rest position is stable when the potential
energy has a local minimum there, and the total energy stays constant along any
motion. Liapunov abstracted the total energy into an auxiliary function whose
behavior along trajectories certifies stability — with no need to solve the
system, which is why it is called a **direct** method.[^boyce-liap]

Consider the general autonomous system $x' = F(x, y)$, $y' = G(x, y)$ with an
isolated critical point at the origin. The rate of change of a function $V(x, y)$
_along a trajectory_ is computed by the chain rule, using the differential
equations themselves to substitute for $x'$ and $y'$:

$$
\dot V(x, y) = V_x\, F(x, y) + V_y\, G(x, y).
$$

The key is that $\dot V$ is obtained without knowing the solution: it is a
function of position alone, assembled from $V$ and the right-hand sides. The sign
conditions that make $V$ useful have names.

> **Definition (Definite functions).** On a domain $D$ containing the origin, a
> function $V$ with $V(0,0) = 0$ is **positive definite** if $V > 0$ everywhere
> else in $D$, and **negative definite** if $V < 0$ everywhere else. Replacing
> the strict inequalities by $\geq$ and $\leq$ gives **positive semidefinite**
> and **negative semidefinite**.

> **Theorem (Liapunov stability).** Suppose $V$ is positive definite with
> continuous first partials on $D$. If $\dot V$ is negative definite on $D$, the
> origin is **asymptotically stable**. If $\dot V$ is only negative semidefinite,
> the origin is **stable**. A function $V$ meeting these conditions is a
> **Liapunov function**.

> **Theorem (Liapunov instability).** If $V(0,0) = 0$, every neighborhood of the
> origin contains a point where $V > 0$, and $\dot V$ is positive definite on
> $D$, then the origin is **unstable**.

### Geometry of the method

The geometry is a family of nested closed curves $V(x, y) = c$, shrinking to the
origin as $c \to 0$. The gradient $\nabla V$ is normal to each level curve and
points outward, in the direction of increasing $V$. Along a trajectory the
velocity vector $\mathbf{T} = (x', y')$ is tangent to the path, and

$$
\dot V = \nabla V \cdot \mathbf{T}.
$$

If $\dot V \leq 0$, the angle between $\nabla V$ and $\mathbf{T}$ is obtuse (or
right): the motion points inward across each level curve, or at worst along it.
A trajectory that starts inside a level curve $V = c$ can never cross to the
outside, so it stays trapped near the origin — stability. If $\dot V < 0$
strictly, the crossing is strictly inward everywhere, and the trapped trajectory
is squeezed down to the origin — asymptotic stability.[^boyce-geom]

$$
% caption: The gradient of $V$ points outward, normal to the level curve; if the
% trajectory's velocity points inward, $V$ decreases and the origin is stable.
\begin{tikzpicture}[scale=1.0, >=stealth, font=\footnotesize]
\definecolor{acc}{HTML}{4A6FA5}
% nested level curves
\draw[black] (0,0) ellipse (2.4 and 1.7);
\draw[black] (0,0) ellipse (1.55 and 1.1);
\draw[black] (0,0) ellipse (0.8 and 0.57);
\fill[black] (0,0) circle (1.5pt);
\node[black, anchor=west, font=\scriptsize] at (2.45,-0.05) {$V=c_2$};
\node[black, anchor=west, font=\scriptsize] at (1.6,0.72) {$V=c_1$};
% a point on the middle curve, at (0.954, 0.867)
\fill[acc] (0.954,0.867) circle (1.6pt);
% outward gradient (normal)
\draw[acc, ->, thick] (0.954,0.867) -- (1.574,1.587);
\node[acc, anchor=south west, font=\scriptsize] at (1.554,1.527) {$\nabla V$};
% inward-pointing velocity, into the curve
\draw[black!70, ->, thick] (0.954,0.867) -- (0.004,0.717);
\node[black!70, anchor=north east, font=\scriptsize] at (0.054,0.747) {$\mathbf{T}$};
\end{tikzpicture}
$$

### The quadratic-form criterion

The theorems say nothing about how to _find_ a Liapunov function; no general
construction exists. For a physical problem the total energy is the natural first
guess. Otherwise a quadratic trial function $V = ax^2 + bxy + cy^2$ is standard,
and an algebraic test decides definiteness.[^boyce-quad]

> **Theorem (Definiteness of a quadratic form).** $V(x, y) = ax^2 + bxy + cy^2$
> is positive definite if and only if
> $$
> a > 0 \quad\text{and}\quad 4ac - b^2 > 0,
> $$
> and negative definite if and only if $a < 0$ and $4ac - b^2 > 0$.

> **Worked example.** For $x' = -x - xy^2$, $y' = -y - x^2 y$, try
> $V = ax^2 + cy^2$ with $b = 0$. Then
> $$
> \dot V = (2ax)(-x - xy^2) + (2cy)(-y - x^2 y)
>        = -2a x^2 - 2c y^2 - (2a + 2c)x^2 y^2.
> $$
> Any $a, c > 0$ makes $V$ positive definite and $\dot V$ negative definite, so
> the origin is asymptotically stable. The linearization $\mathbf{u}' =
> -\mathbf{u}$ reaches the same conclusion, but Liapunov's method delivers it
> directly and also bounds the basin of attraction.

## Conservative systems and the energy function

> **Worked example.** For the undamped pendulum $x' = y$, $y' = -(g/L)\sin x$,
> take the total energy as the Liapunov function,
> $$
> V(x, y) = \tfrac{1}{2} m L^2 y^2 + mgL(1 - \cos x),
> $$
> the sum of kinetic and potential parts, positive definite on
> $-\pi/2 < x < \pi/2$. Its rate of change along trajectories is
> $$
> \dot V = (mgL \sin x)(y) + (mL^2 y)\!\left(-\tfrac{g}{L}\sin x\right) = 0.
> $$
> The energy is constant, so $\dot V$ is negative semidefinite, and the
> stability theorem makes the origin **stable** — the result the linearization
> could not supply, since the origin is a center there.[^boyce-cons] The level
> curves $V = c$ are the closed trajectories, small ellipses near the origin
> corresponding to the pendulum's periodic swings.

$$
% caption: A conservative system's trajectories are level curves of the energy;
% adding damping tilts the energy downhill so trajectories cross curves inward.
\begin{tikzpicture}[scale=1.0, >=stealth, font=\footnotesize]
\definecolor{acc}{HTML}{4A6FA5}
% ---- left: conservative, energy constant ----
\begin{scope}[xshift=0cm]
  \draw[->, black] (-1.9,0)--(1.9,0) node[right, black, font=\scriptsize] {$x$};
  \draw[->, black] (0,-1.6)--(0,1.6) node[above, black, font=\scriptsize] {$y$};
  \foreach \r in {0.5,0.9,1.3} \draw[acc] (0,0) ellipse ({\r*1.3} and \r);
  \draw[acc, ->] (0.65,0.02)--(0.65,-0.02);
  \fill[black] (0,0) circle (1.4pt);
  \node[anchor=north] at (0,-1.95) {conservative: energy constant};
\end{scope}
% ---- right: damped, energy falls ----
\begin{scope}[xshift=5.6cm]
  \draw[->, black] (-1.9,0)--(1.9,0) node[right, black, font=\scriptsize] {$x$};
  \draw[->, black] (0,-1.6)--(0,1.6) node[above, black, font=\scriptsize] {$y$};
  \draw[black] (0,0) ellipse (1.69 and 1.3);
  \draw[black] (0,0) ellipse (1.04 and 0.8);
  \draw[acc, ->, domain=0:560, samples=100, variable=\t]
    plot ({(1.5 - 0.00232*\t)*cos(\t)*1.3}, {(1.5 - 0.00232*\t)*sin(\t)});
  \fill[black] (0,0) circle (1.4pt);
  \node[anchor=north] at (0,-1.95) {damped: energy decreases};
\end{scope}
\end{tikzpicture}
$$

With damping the calculation changes. For the damped pendulum the
same energy gives $\dot V = -cL\,y^2 \leq 0$: the energy is nonincreasing, and
strictly decreasing except on the axis $y = 0$. Along every trajectory the energy
decreases to its minimum, the stable rest position — the physical statement
that friction converts the center into an asymptotically stable spiral.

## Estimating the basin of attraction

Liapunov's method does more than classify a critical point; it bounds the
**basin of attraction**, which linearization cannot address.[^boyce-basin]

> **Theorem (Region of asymptotic stability).** If $V$ is positive definite,
> $\dot V$ is negative definite, and $D_K = \{ V(x, y) < K \}$ is a bounded
> domain containing the origin, then every trajectory starting in $D_K$
> approaches the origin as $t \to \infty$.

The largest sublevel set $\{V < K\}$ on which $\dot V$ stays negative definite is
a guaranteed region of asymptotic stability, usually a conservative underestimate
of the true basin (a better Liapunov function enlarges it) but a rigorous inner
bound obtained without any solution formula. Linearization gives no such global
information; Liapunov's method applies both when the linear analysis is
indeterminate at a center and when the basin, not just the type of a critical
point, is what matters.

[^boyce-jac]: **Boyce**, §9.3 — the Taylor-expansion derivation of the local
    linear system and the Jacobian matrix; Simmons, §62, treats simple critical
    points of nonlinear systems.
[^boyce-pend]: **Boyce**, §9.3, Example 3 — the Jacobian of the pendulum at the
    origin and at the inverted position $(\pi, 0)$.
[^boyce-thm]: **Boyce**, §9.3, Theorem 9.3.3 and Table 9.3.1 — agreement of
    nonlinear and linear classification except for centers and repeated roots.
[^boyce-liap]: **Boyce**, §9.6 — Liapunov's second method as a generalization of
    the energy principles for conservative systems; Simmons, §61, on the direct
    method.
[^boyce-geom]: **Boyce**, §9.6, Figure 9.6.1 — the gradient-versus-tangent
    argument, $\dot V = \nabla V \cdot \mathbf{T}$, and the trapping of
    trajectories inside level curves.
[^boyce-quad]: **Boyce**, §9.6, Theorem 9.6.4 and Example 4 — the definiteness
    criterion for a quadratic form and its use in constructing Liapunov
    functions.
[^boyce-cons]: **Boyce**, §9.6, Examples 2–3 — the energy function as a Liapunov
    function for the undamped pendulum; Simmons, §63, on conservative systems.
[^boyce-basin]: **Boyce**, §9.6, Theorem 9.6.3 and Example 5 — the sublevel-set
    estimate of the region of asymptotic stability.
