Cellular biophysics · Dynamical systems

Slow Passage Through Hopf

A changing parameter. A response that remembers.

Time 0.0μ −0.450Radius 0.0500Noise σ 0Ramping up ↑

Running.

Phase plane

x versus y
━ Upward ramp━ Downward ramp━ Stable static cycle┄ Unstable static cycle

Amplitude & bifurcation

r versus μ
━ Actual r, ramp up━ Actual r, ramp down━ Stable branch / envelope┄ Unstable branch / envelope

r shows cycle radius. Log amplitude applies to this view.

Oscillation in time

x(t), y(t)
━ x(t)━ y(t)

Amplitude in time

r(t) = √(x² + y²)

Ramped parameter

μ(t) · dotted line: static Hopf at μ = 0

Try this in class

Supercritical Hopf

  1. Watch μ cross zero on the upward ramp. The origin has become unstable, yet the oscillation stays small for a while.
  2. Enable log amplitude to see how much the initial motion decays before μ reaches zero. Then restart with a different initial radius or a more negative starting μ.
  3. Compare ε = 0.005 and 0.02. Compare the delay in model time and in μ; they are different measurements.

Subcritical Hopf

  1. Switch to the subcritical example. Compare the delayed upward jump with the static loss of stability at μ = 0.
  2. On the return ramp, the large cycle persists for negative μ. The static cycle fold is at μ = −0.25; finite ramp speed can extend persistence beyond it.
  3. Choose “Down, then up.” Compare the two histories in the bistable interval −0.25 < μ < 0. Use Hold μ or a small perturbation to explore history dependence.

Read the colors: blue and orange distinguish ramp direction, while green and purple show stability of the frozen-parameter system. Static branches are references; the moving system need not lie on them. An exact zero initial state would stay at the origin forever in this deterministic model. The small positive seed makes delayed growth visible.

Noise experiment: Compare σ = 0, 0.0001, 0.001, and 0.01 at the same ramp rate. Noise continually reseeds small oscillations and can shorten the delay. Repeat with different random seeds; a single noisy run is not an average response. Static branches remain those of the deterministic system.

Detection guide: dotted r = 0.15 is an arbitrary observation threshold. The reported upward and downward crossings are detection events, not bifurcation points. With noise, repeated threshold crossings can occur; only the eight most recent qualifying crossings are listed. Slow-passage delay, detection threshold, seed size, and static hysteresis all affect what you observe.

Model & numerical method

Let r = √(x² + y²), with x = r cos θ and y = r sin θ. Both models rotate at constant angular frequency ω. The parameter follows a triangular ramp, dμ/dt = +ε on an upward leg and −ε on a downward leg. Hold μ sets dμ/dt = 0 while the state continues to evolve.

ẋ = f(r, μ)x − ωy,   ẏ = ωx + f(r, μ)y,   θ̇ = ω
Supercritical:   f(r, μ) = μ − r²   ⇒   ṙ = μr − r³
Subcritical:   f(r, μ) = μ + r² − r⁴   ⇒   ṙ = μr + r³ − r⁵

For the supercritical model, the origin is stable for μ < 0 and unstable for μ > 0; a stable cycle with r = √μ exists for μ > 0. In the subcritical model, the cycle radii satisfy r² = [1 ± √(1 + 4μ)]/2. The plus branch is stable; the minus branch is unstable and exists for −1/4 < μ < 0. They meet at a fold at μ = −1/4. The stable origin and stable outer cycle coexist between the fold and the Hopf point.

Near the origin, d(log r)/dt ≈ μ(t). For an upward linear ramp, log[r(t)/r(0)] ≈ [μ(t)² − μ(0)²]/(2ε). Earlier decay must be recovered before an oscillation becomes detectable; simply crossing μ = 0 does not immediately produce a large oscillation. This symmetric, deterministic normal form is an illustration of delayed growth and memory, not a universal quantitative prediction for every slowly driven Hopf system. Noise or forcing can change the delay.

With noise enabled, the Cartesian stochastic equations are

dx = [f(r, μ)x − ωy] dt + σ dWx,   dy = [ωx + f(r, μ)y] dt + σ dWy

Wx and Wy are independent standard Wiener processes. Each coordinate receives an independent Gaussian increment with mean zero and standard deviation σ√Δt. σ is the diffusion amplitude, not a fixed perturbation at each animation frame; changing playback speed does not change the stochastic model. The parameter ramp itself is not noisy.

The solver integrates u = log r using fourth-order Runge–Kutta with a maximum step of 0.01 model-time units. Ramp corners are resolved exactly; angle advances by ωΔt. Storing log radius prevents numerical underflow from erasing an exponentially small seed. At σ = 0, no noise or artificial minimum amplitude is added. At σ > 0, each RK4 drift step is followed by an additive Cartesian Gaussian noise step, then converted back to log radius and phase. This is a first-order drift/noise splitting approximation of the additive-noise stochastic equations, not a fourth-order stochastic method. A seeded generator and Box–Muller transform generate the Gaussian increments. The log view is limited to 10⁻¹² for display; the solver retains smaller amplitudes. CSV includes log radius, σ, and the random seed. A complete up/down experiment is shown by default; repeated ramps preserve state and history. The plots and CSV retain the latest 100,000 samples (sample interval 0.05).

Learn more

Baer, S. M., Erneux, T., & Rinzel, J. (1989). The slow passage through a Hopf bifurcation: Delay, memory effects, and resonance. SIAM Journal on Applied Mathematics, 49(1), 55–71.

Andronov–Hopf bifurcation · Bautin bifurcation and the stabilized subcritical normal form · Morris–Lecar simulator · Course games & simulators

Standalone classroom simulator · All calculations run in your browser. Save this HTML file to use offline.