Blobs move

Post 2 — the drift bifurcation, and the numerics that almost fooled us (twice).

2. Motility — the drift bifurcation (M1) (known physics: Or-Guil et al. PRE 57:6432; our contribution = the unpinning protocol + measured law)

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.

speed law (measured): c(τ) = √(0.0299·(τ − τ_c)), τ_c = 4.78 at Dv=0.65 — r²=0.993

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.

The measured speed law. Stationary below τ_c=4.78, then c=√(0.0299(τ−τ_c)) — the supercritical drift bifurcation (r²=0.993). Gray points: stationary; red: traveling; dashed: the fitted √-law.
Trajectories across the dial. Same kick, increasing τ: dead stop → straight steady travel at growing speed.
Direction isotropy. Noise-chosen travel directions on 8 seeds: no clustering on lattice axes (min distance to an axis 8.9°) — the motion belongs to the physics, not the grid.
M1 traveling blob
M1 — a traveling blob (τ=5.0 > τ_c): steady speed, straight kick-chosen track, shape preserved while moving. Certified unpinned: speed changes 0.6% under 2× grid refinement.
Trap we hit (and publish): the M0 blob is small enough to get pinned to the numerical lattice — with naive integration it refuses to move at all, and apparent "stability" can be a grid artifact. All motility and binding results therefore use an implicit-spectral integrator (IMEX-FFT) at halved grid spacing, with every headline number re-checked under a further 2× refinement. This trap returned twice more below — it is the recurring failure mode of this physics.

Numerics box — why the lattice pins blobs, and what IMEX-FFT changes

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 (Dw=20) forces dt < dx²/(4Dw), 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²/(4Dw) 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 Dw; 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.002stationary, c≈0.001
IMEX-FFT, dx=0.5 (certified treatment)traveling, c=0.033, exactly along the 30° kicktraveling (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.

Reflexes (logged for later posts)

Wall reflection. Head-on approach to a no-flux wall: angle flips 0→180°, speed recovers — the long-range w-halo acts as a soft cushion.
Two-blob collision. A traveling blob meets a stationary one: soft repulsive scattering, both survive — the first hint of the chemistry in the next post.
Series: index · previous: What is a blob? · next: Blob chemistry