MATH-201 · Lesson 10 of 12 · 30 min

Nonlinear systems and the phase plane

Lesson 9 solved linear systems completely with eigenvalues and closed with a first look at a nonlinear one, the predator-prey model. Most real systems are nonlinear: a pendulum swinging through a large angle, a structure whose stiffness changes as it deflects, a chemical reactor whose reaction rate rises exponentially with temperature, an electronic oscillator, a population competing for resources. Nonlinear systems rarely have formulas for their solutions, but they show behaviour that linear systems cannot: several stable states, sustained oscillations of a fixed size that do not depend on how the motion started, and sudden changes as a parameter varies. This lesson develops the geometric tools for understanding them in the phase plane: equilibria and linearization, conserved energy, Lyapunov functions, limit cycles and bifurcations, with numerical simulation as the constant companion.

Equilibria and linearization

A two-dimensional autonomous system is written \(x' = f(x, y)\), \(y' = g(x, y)\). Its equilibria are the points where both rates are zero. Near an equilibrium \((x^*, y^*)\), the system behaves approximately like the linear system with the Jacobian matrix:

\[J = \begin{pmatrix} \partial f/\partial x & \partial f/\partial y \\ \partial g/\partial x & \partial g/\partial y \end{pmatrix}_{(x^*, y^*)}\]

The eigenvalues of J classify the equilibrium exactly as in Lesson 9: node, saddle, spiral. A key theorem (Hartman-Grobman) guarantees that this classification carries over to the nonlinear system whenever no eigenvalue has a zero real part. The exception is important: if the linearization predicts a centre (purely imaginary eigenvalues), the nonlinear terms decide whether trajectories spiral in, spiral out or stay closed, and further analysis is needed.

A useful aid for sketching is the set of nullclines: the curves where \(x' = 0\) (trajectories cross them vertically) and where \(y' = 0\) (trajectories cross horizontally). Equilibria lie where nullclines of the two kinds intersect.

The pendulum

A pendulum of length L, with angle \(\theta\) from the downward vertical and light damping c, obeys:

\[\theta'' + c\,\theta' + \frac{g}{L}\sin\theta = 0\]

For small angles, \(\sin\theta \approx \theta\) and this is the damped oscillator of Lesson 5. For large angles it is nonlinear. As a system, with \(\omega = \theta'\): \(\theta' = \omega\), \(\omega' = -c\omega - (g/L)\sin\theta\).

Worked problem

The two equilibria of a pendulum

For a pendulum with L = 1 m (g/L = 9.81 s⁻²), classify the equilibria at \(\theta = 0\) and \(\theta = \pi\), without damping and with c = 0.5 s⁻¹.

Show solution
  1. Jacobian: \(J = \begin{pmatrix} 0 & 1 \\ -9.81\cos\theta^* & -c \end{pmatrix}\).
  2. At \(\theta = 0\): \(\lambda^2 + c\lambda + 9.81 = 0\). With c = 0, \(\lambda = \pm 3.13i\), a linear centre. With c = 0.5, \(\lambda = -0.25 \pm 3.12i\), a stable spiral.
  3. At \(\theta = \pi\) (inverted): \(\lambda^2 + c\lambda - 9.81 = 0\). The roots are real with opposite signs (±3.13 without damping), a saddle.

Answer: Hanging down is a centre without damping and a stable spiral with it; standing up is a saddle, unstable with or without damping. The saddle result is reliable (Hartman-Grobman); the undamped centre needs the energy argument below to confirm.

Energy and the phase portrait

Without damping, multiplying the equation by \(\theta'\) and integrating shows that the energy (per unit of \(mL^2\)) is conserved:

\[E = \tfrac{1}{2}\omega^2 - \frac{g}{L}\cos\theta = \text{constant}\]

So trajectories are level curves of E, which settles the centre question: near \(\theta = 0\) they are closed loops, and the pendulum swings back and forth forever. At higher energy, the pendulum goes over the top and the trajectory is a wavy line running across the plane: continuous rotation. The boundary between the two, the separatrix, passes through the saddles at \(\theta = \pm\pi\); it is the motion that takes infinitely long to reach the inverted position.

Phase portrait of an undamped pendulum, with angle from minus 2 pi to 2 pi horizontally and angular velocity vertically. Closed oval loops surround the centres at 0 and plus and minus 2 pi. Saddles at plus and minus pi are joined by red separatrix curves that look like eye shapes. Above and below the separatrices, wavy curves run across the full width, representing continuous rotation.
The phase portrait of an undamped pendulum: oscillations inside the separatrix, rotations outside.

Worked problem

The period depends on the amplitude

The small-angle period of a 1 m pendulum is \(2\pi\sqrt{L/g} = 2.006\) s. Using conservation of energy, the exact period for amplitude \(\theta_0\) is \(T = \dfrac{4}{\omega_0}K(k)\) with \(k = \sin(\theta_0/2)\), where K is the complete elliptic integral of the first kind. Find T for \(\theta_0 = 90°\).

Show solution
  1. \(k = \sin 45° = 0.7071\); tables or software give \(K(0.7071) = 1.854\).
  2. \(\omega_0 = \sqrt{9.81} = 3.132\) s⁻¹, so \(T = 4 \times 1.854/3.132 = 2.368\) s.

Answer: T = 2.37 s, 18% longer than the small-angle period. Nonlinear oscillators generally have amplitude-dependent frequencies, which is why pendulum clocks keep their swing small and why a structure with nonlinear stiffness can shift its resonance under heavy loading.

Several stable states: competing species

Unlike linear systems, nonlinear systems can have more than one stable equilibrium, and the outcome then depends on where the motion starts. A standard model is two populations competing for the same resource, for example two strains of microorganism in a bioreactor:

\[x' = x(3 - x - 2y), \qquad y' = y(2 - x - y)\]

Worked problem

Who wins?

Find and classify the equilibria of the competition model.

Show solution
  1. Equilibria: (0, 0), (3, 0), (0, 2), and the coexistence point where \(x + 2y = 3\) and \(x + y = 2\): (1, 1).
  2. Jacobian: \(J = \begin{pmatrix} 3 - 2x - 2y & -2x \\ -y & 2 - x - 2y \end{pmatrix}\).
  3. (0, 0): eigenvalues 3 and 2, an unstable node. (3, 0): \(\begin{pmatrix} -3 & -6 \\ 0 & -1 \end{pmatrix}\), eigenvalues −3 and −1, a stable node. (0, 2): eigenvalues −1 and −2, a stable node.
  4. (1, 1): \(\begin{pmatrix} -1 & -2 \\ -1 & -1 \end{pmatrix}\), \(\lambda^2 + 2\lambda - 1 = 0\), \(\lambda = -1 \pm \sqrt{2}\): a saddle.

Answer: Coexistence is unstable: one strain always eliminates the other. Which one wins depends on the starting populations: the two incoming trajectories of the saddle form a separatrix that divides the plane into two basins of attraction. The same structure, two stable states separated by a saddle, describes bistable electronic switches, the ignition and extinction states of a combustor and many other engineering systems with hysteresis.

Phase plane of the competition model, x from 0 to 3.5 horizontally and y from 0 to 2.5 vertically. Dashed nullcline lines are drawn. Trajectories from many starting points flow either to the stable node at 3 comma 0 or to the stable node at 0 comma 2. A red separatrix curve through the saddle at 1 comma 1 divides the two basins.
Competing species: two stable outcomes separated by the separatrix through the saddle.

Lyapunov functions

Linearization tells us what happens near an equilibrium. A Lyapunov function can prove stability over a larger region, without solving anything. If a function \(V(x, y)\) has a minimum at the equilibrium and never increases along trajectories (\(dV/dt \le 0\)), then the equilibrium is stable; if \(dV/dt < 0\) everywhere except at the equilibrium, every trajectory starting in a region bounded by a level curve of V approaches the equilibrium. Energy is the natural candidate for mechanical and electrical systems.

Worked problem

The damped pendulum settles

Show that the damped pendulum returns to \(\theta = 0\) from any amplitude less than \(\pi\) with zero initial velocity.

Show solution
  1. Take \(V = \tfrac{1}{2}\omega^2 + \frac{g}{L}(1 - \cos\theta)\), which is zero at the bottom and positive nearby.
  2. Along trajectories: \(\dfrac{dV}{dt} = \omega\omega' + \frac{g}{L}\sin\theta\,\theta' = \omega\left(-c\omega - \frac{g}{L}\sin\theta\right) + \frac{g}{L}\omega\sin\theta = -c\omega^2 \le 0\).
  3. Energy decreases whenever the pendulum moves, so it can never climb back over the top, and it cannot stop anywhere except at an equilibrium.

Answer: Damping dissipates energy at the rate cω², so the pendulum spirals into the bottom equilibrium. Control engineers use Lyapunov functions to prove that nonlinear controllers, such as those for robots and aircraft, keep systems stable.

Limit cycles

A limit cycle is an isolated closed trajectory: nearby trajectories spiral toward it (a stable limit cycle) or away from it. It represents a self-sustained oscillation of a definite amplitude and frequency, fixed by the system rather than by the initial conditions. Linear systems cannot do this: their closed orbits, as in an undamped oscillator, come in continuous families of every size. The classic example is the Van der Pol oscillator, first studied for vacuum-tube circuits:

\[x'' - \mu(1 - x^2)\,x' + x = 0\]

The damping term is negative for small \(|x|\), pumping energy in, and positive for large \(|x|\), removing it. Small oscillations grow, large ones shrink, and every trajectory (except the equilibrium itself) approaches a single limit cycle. At the origin the Jacobian is \(\begin{pmatrix} 0 & 1 \\ -1 & \mu \end{pmatrix}\) with eigenvalues of positive real part, an unstable spiral; but trajectories cannot escape to infinity because of the strong damping there. A result for planar systems, the Poincaré-Bendixson theorem, then guarantees a closed orbit in between.

Left: the Van der Pol phase plane for mu equal to 1, with one trajectory spiralling outward from near the origin and another spiralling inward from outside, both converging onto a closed loop that reaches about plus and minus 2 in x. Right: x against time for the trajectory from near the origin, growing and then settling into a steady oscillation of amplitude about 2.
The Van der Pol oscillator (μ = 1): trajectories from inside and outside approach the same limit cycle.
Amplitude and period of the Van der Pol limit cycle for three values of μ.
import numpy as np
from scipy.integrate import solve_ivp

def van_der_pol(mu):
    def rhs(t, z):
        x, v = z
        return [v, mu * (1 - x**2) * v - x]
    return rhs

for mu in [0.1, 1.0, 5.0]:
    sol = solve_ivp(van_der_pol(mu), [0, 250], [0.1, 0.0], method="LSODA",
                    rtol=1e-9, atol=1e-9, dense_output=True)
    t = np.linspace(150, 250, 200001)
    x = sol.sol(t)[0]
    ups = t[1:][(x[:-1] < 0) & (x[1:] >= 0)]
    period = np.mean(np.diff(ups))
    print(f"mu = {mu:3.1f}: amplitude {x.max():.3f}, period {period:.2f}")
print(f"Linear oscillator period: {2 * np.pi:.2f}")
Output
mu = 0.1: amplitude 2.000, period 6.29
mu = 1.0: amplitude 2.009, period 6.66
mu = 5.0: amplitude 2.022, period 11.61
Linear oscillator period: 6.28

For small \(\mu\), the cycle is nearly a sine wave of amplitude 2 at the linear frequency. For large \(\mu\), it becomes a relaxation oscillation: slow build-up followed by rapid switching, with a much longer period. Limit cycles are deliberate in electronic oscillators and in the pacemaker cells of the heart; they are unwanted in aircraft wing flutter, brake squeal, galloping power lines and machine-tool chatter, where engineers add damping or change stiffness to eliminate them.

Bifurcations and beyond

As in Lesson 2, equilibria and cycles can appear, disappear or change stability as a parameter varies. In two dimensions a new possibility arises, the Hopf bifurcation: a stable spiral loses stability as its complex eigenvalues cross the imaginary axis, and a limit cycle is born. In the Van der Pol equation this happens as \(\mu\) passes through zero. Flutter of an aircraft wing is a Hopf bifurcation in airspeed: above a critical speed, aerodynamic forces act as negative damping and an oscillation grows until it destroys the structure or settles into a violent limit cycle, so certification requires a margin above the maximum flight speed.

In three or more dimensions, nonlinear systems can be chaotic: deterministic, yet so sensitive to initial conditions that long-term prediction is impossible in practice. Lorenz found this in a simple model of atmospheric convection, and it appears in a periodically driven pendulum and in turbulent flow. The practical lessons are to simulate with tight tolerances, to check results against energy or other invariants, and to judge chaotic systems by their statistics rather than by a single trajectory.

Common mistakes

  • MistakeTrusting a linearized centre to predict closed orbits in a nonlinear system.

    InsteadPurely imaginary eigenvalues are inconclusive; use energy or a Lyapunov function.

  • MistakeAssuming a nonlinear system has only one equilibrium.

    InsteadFind all intersections of the nullclines; several may be stable.

  • MistakeUsing the small-angle period for large swings.

    InsteadNonlinear oscillators have amplitude-dependent periods; at 90° the pendulum is 18% slower.

  • MistakeExpecting a limit cycle's amplitude to depend on the initial condition.

    InsteadA stable limit cycle has a fixed size; all nearby trajectories approach it.

  • MistakeRunning a single simulation of a chaotic system and treating it as a prediction.

    InsteadCheck sensitivity to initial conditions and use statistics.

Summary and key terms

  • Linearize at each equilibrium with the Jacobian; the eigenvalues classify it unless a real part is zero.
  • Nullclines help locate equilibria and sketch trajectories.
  • The undamped pendulum conserves energy; its phase portrait shows oscillations, rotations and a separatrix.
  • Nonlinear oscillators have amplitude-dependent periods.
  • Several stable equilibria can coexist, with basins of attraction divided by separatrices.
  • A Lyapunov function that never increases along trajectories proves stability.
  • Limit cycles are isolated self-sustained oscillations, such as the Van der Pol oscillator; Hopf bifurcations create them.
Jacobian matrix
The matrix of partial derivatives used to linearize a system at an equilibrium.
Nullcline
A curve on which one of the rates of change is zero.
Separatrix
A trajectory that separates regions of different behaviour in the phase plane.
Basin of attraction
The set of initial states that approach a given stable equilibrium.
Lyapunov function
A function with a minimum at an equilibrium that never increases along trajectories.
Limit cycle
An isolated closed trajectory representing a self-sustained oscillation.
Relaxation oscillation
A limit cycle with slow build-up and rapid switching.
Hopf bifurcation
The birth of a limit cycle as a spiral equilibrium loses stability.
Chaos
Deterministic behaviour so sensitive to initial conditions that it is unpredictable in the long term.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. Find the equilibria of \(x' = y\), \(y' = x - x^3\).

    Show answer

    (0, 0), (1, 0), (−1, 0).

  2. Classify (0, 0) for that system.

    Show answer

    J = [[0, 1], [1, 0]], λ = ±1: saddle.

  3. Classify (1, 0) for that system and identify its conserved energy.

    Show answer

    J = [[0, 1], [−2, 0]]: linear centre; E = ½y² − ½x² + ¼x⁴ confirms closed orbits.

  4. For a pendulum with g/L = 4 s⁻², what is the linearized frequency about the bottom?

    Show answer

    2 rad/s.

  5. What minimum angular velocity at the bottom makes the undamped pendulum with g/L = 4 s⁻² go over the top?

    Show answer

    ½ω² = 2g/L = 8, so ω = 4 rad/s.

  6. For \(x' = x(1 - x) - xy\), \(y' = y(0.5 - y)\), find the coexistence equilibrium.

    Show answer

    y = 0.5, x = 0.5.

  7. Show that \(V = x^2 + y^2\) proves stability of the origin for \(x' = -x + y\), \(y' = -x - y\).

    Show answer

    dV/dt = 2x(−x + y) + 2y(−x − y) = −2(x² + y²) < 0.

  8. For the Van der Pol equation with μ = 0.5, classify the origin.

    Show answer

    λ = 0.25 ± 0.97i: unstable spiral.

  9. What is the approximate amplitude of the Van der Pol limit cycle for small μ?

    Show answer

    About 2.

  10. Name two engineering problems caused by unwanted limit cycles.

    Show answer

    For example, wing flutter, brake squeal, power-line galloping or machine-tool chatter.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz