FitzHughNagumo¶
Systems / ODEs / Chemical & biological systems
The two-variable nerve membrane — a fast cubic voltage coupled to a slow recovery current: excitable at rest, spiking under an applied current.
Definition¶
\[
\begin{aligned}
\dot{v} &= curr - \frac{v^{3}}{3} + v - w \\
\dot{w} &= \gamma \left(a - b w + v\right)
\end{aligned}
\]
Parameters¶
| Symbol | Default | Role |
|---|---|---|
a |
0.7 |
offset of the linear recovery nullcline |
b |
0.8 |
slope of the linear recovery nullcline |
curr |
0.5 |
applied stimulus current (0 = excitable, 0.5 = oscillatory) |
gamma |
0.08 |
recovery timescale (small ⇒ slow–fast dynamics) |
State variables: v, w
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 \gamma - v^{2} + 1$
state-dependent
state-dependent
Equilibria
1 equilibria
0 stable · 1 unstable
0 stable · 1 unstable
Use it in TSDynamics¶
import tsdynamics as ts
system = ts.systems.FitzHughNagumo()
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¶
FitzHugh (1961), Biophys. J. 1, 445-466
doi:10.1016/s0006-3495(61)86902-6