Skip to content

Brusselator

Systems / ODEs / Chemical & biological systems

Prigogine and Lefever's autocatalytic reaction — the textbook dissipative structure, oscillating for b above the Hopf threshold 1 + a².

continuous · ODE2 dimensionslimit cycle

Interactive: drag to rotate

Definition

\[ \begin{aligned} \dot{x} &= a + x^{2} y - x \left(b + 1\right) \\ \dot{y} &= b x - x^{2} y \end{aligned} \]

Parameters

Symbol Default Role
a 1 constant feed of the activator x
b 3 feed driving the autocatalytic loop (Hopf at b = 1 + a²)

State variables: x, y

Properties

Lyapunov spectrum
≥ 0 positive exponents (literature — analytic: Poincare-Bendixson forbids chaos in a planar autonomous flow)
Kaplan–Yorke dimension
TODO — requires a numeric Lyapunov spectrum
Divergence ∇·f
$\nabla\!\cdot f = - b - x^{2} + 2 x y - 1$
state-dependent
Equilibria
1 equilibria
0 stable · 1 unstable

Use it in TSDynamics

import tsdynamics as ts

system = ts.systems.Brusselator()
traj = system.run(final_time=100.0, dt=0.01)
ts.plot(traj)

spectrum = ts.analysis.lyapunov_spectrum(system)
ts.analysis.kaplan_yorke_dimension(spectrum)

Reference

Prigogine & Lefever (1968), J. Chem. Phys. 48, 1695-1700
doi:10.1063/1.1668896

BibTeX
@misc{brusselator,
  title = {Brusselator system},
  note = {Prigogine & Lefever (1968), J. Chem. Phys. 48, 1695-1700},
  doi = {10.1063/1.1668896}
}