This is a direct Fourier-mode solver for the same Hele-Shaw ferrofluid instability as the 3D grid version, but instead of growing a lattice automaton it integrates the actual linear-stability equation. The droplet boundary is written as a sum of angular perturbation modes,
r(θ,t) = R₀·(1 + Σ_k A_k(t)·cos(k·θ + φ_k))
and each mode's amplitude A_k obeys the schematic dispersion relation directly as an ODE, with a cubic term that saturates growth once nonlinear effects (a real pattern-formation technique called Landau/Ginzburg-Landau saturation) become important:
ω(k) = a·H·q(k) − b·γ·q(k)³ (q(k) = k·Δq, growth rate of mode k)
dA_k/dt = ω(k)·A_k − c_k·A_k³
fastest-growing wavenumber: q_max = √(a·H / (3·b·γ))
stable equilibrium amplitude (ω>0): A_k* = √(ω(k)/c_k)
Every mode with ω(k) > 0 grows exponentially at first, then saturates at A_k*; every mode with ω(k) ≤ 0 decays back to zero. Because ω(k) rises then falls with k (magnetic term wins at low k, tension term wins at high k), one band of modes near q_max dominates — that is the real mechanism that sets finger spacing, computed here from the ODEs themselves rather than approximated by cellular-automaton growth rules.
- Field strength H — raises ω(k) at every k and pushes q_max up: higher H means more, finer dominant fingers.
- Surface tension γ — suppresses high-k modes fastest (the γ·q³ term), pulling q_max down: higher γ gives fewer, thicker lobes, and past a threshold every mode decays and the droplet stays a circle.
- Growth rate — how many ODE integration steps run per second; a pure playback-speed control, it does not change which modes win.
- Dominant mode k readout shows which integer angular mode currently has the largest amplitude — the number of lobes you should be able to count on the front.
Real-world relevance: this same competition between a destabilizing energy-lowering term and a stabilizing curvature term governs viscous (Saffman–Taylor) fingering, dendritic solidification and electrodeposition patterns — the ferrofluid case is one of the cleanest lab demonstrations because H is an external knob you can turn continuously.