Post 2 — the drift bifurcation, and the numerics that almost fooled us (twice).
At M0 the blob sits still. Motion is a phase transition, not a given: the slow
inhibitor v sits centered under the blob and cancels any nudge (the blob is overdamped).
Two dials change that: lower Dv (make the drag field narrower) and
raise τ (make it slower). Past a critical point the resting state becomes unstable —
the blob "outruns its own shadow": v lags behind, the asymmetry pulls the blob forward,
and steady self-propelled motion appears.
The square-root onset is the textbook signature of a supercritical drift bifurcation.
Direction is free: under noise alone, 8/8 runs picked directions scattered across the
compass (none along grid axes) — the motion belongs to the physics, not the lattice.
Why pinning exists. In the continuum the equations are translation-invariant: a blob
costs exactly the same "energy" at every position, so an arbitrarily small force moves it
(the drift bifurcation destabilizes precisely this free translation mode). A grid breaks
that symmetry: the blob's discrete representation is slightly different centered
on
a cell vs
between cells, so its energy ripples with period dx — a washboard
(the Peierls–Nabarro potential of dislocation physics). The ripple amplitude falls
exponentially with the number of grid cells across the blob's edge — invisible for
well-resolved patterns, dominant for sharp ones. Our M0 blob is ~6 cells across with a
~2-cell interface at dx=1: firmly in the dominant regime.
Why it bites twice. (1) Near onset the self-propulsion force is arbitrarily small
(∝ τ−τ_c), so a finite washboard always wins in a window around τ_c: the blob creeps then
sticks, the measured "onset" shifts, and the c(τ) curve becomes a depinning law instead of
the true bifurcation. (2) The washboard's little walls can also
hold states the
continuum would not hold — that is how the fake τ=3 bond passed at dx=1 (a continuum
saddle trapped by grid ripple) and how species A survives at dx=1 while labyrinthing at
dx=0.5. Pinning fakes both immobility and stability.
Why "just refine the grid" is not enough — the crux. With the naive explicit
integrator, refinement is nearly unaffordable: the stiff halo diffusion (D
w=20)
forces dt < dx²/(4D
w), so halving dx costs 4× more cells
and 4× more
steps =
16× per halving (dx=0.25 ⇒ ~256× Day-0 cost — impossible for
hundred-run campaigns). And the explicit stencil adds its own grid bias: the 5-point
Laplacian is anisotropic at O(dx²), so even an unpinned blob feels lattice axes.
IMEX-FFT (implicit–explicit, spectral) is two separate upgrades bundled. The
IMEX part is about
time: the stiff diffusion term is handled implicitly/exactly
instead of extrapolated, removing the dt<dx²/(4D
w) stability constraint (normally
implicit steps require solving a large linear system, but on a periodic grid diffusion
diagonalizes in Fourier space, so the "solve" is a per-mode multiply — that is the
FFT part, and it is what makes implicit free here). The spectral representation is
also about
space: Fourier derivatives are exact and isotropic for all resolved modes,
so the stencil's lattice-axis bias vanishes. Concretely the step splits: nonlinear reaction
terms advance explicitly, while diffusion is applied
exactly — every mode
k multiplied by e
−Dk²dt. What IMEX-FFT does
not fix is the washboard
itself: that comes from sampling the blob's sharp profile on a finite grid, and only
refinement shrinks it (exponentially fast, fortunately). Ground truth for this world is the
continuum PDE; the grid is our telescope, and any grid-dependent effect is a defect of the
telescope — which is why every headline number ships with a dx→dx/2 convergence
certificate rather than an assumption. That is unconditionally stable (no dt limit from
D
w; we keep dt=0.02 at every dx, so halving dx costs only 4×) and perfectly
isotropic (no stencil anisotropy at all). Refinement then does the one thing still needed —
shrink the washboard — and convergence is checked, not assumed.
Receipts (same physics, τ near onset, kick at 30°):
| treatment | τ=4.85 | τ=4.80 |
| explicit Euler, dx=1 (Day-0 numerics) | stationary, c=0 (pinned) | — |
| IMEX-FFT, dx=1 (isotropy fixed, washboard remains) | creeping, c≈0.002 | stationary, c≈0.001 |
| IMEX-FFT, dx=0.5 (certified treatment) | traveling, c=0.033, exactly along the 30° kick | traveling (law: onset τ_c=4.78) |
And the convergence chain at τ=5.0: c = 0.0720 (dx=1) → 0.0820 (dx=0.5) → 0.0817 (dx=0.25):
dx=1 is 12% low (residual washboard drag), dx=0.5 is converged to 0.6%. That 0.6% is the
unpinning certificate every headline number carries.