Six habitat patches sit in a ring, each connected to its two neighbors. Every patch grows logistically toward its own carrying capacity, and individuals diffuse along the connections toward less-crowded neighbors — a standard metapopulation (source–sink) model:
dNi/dt = r·Ni·(1 − Ni/Ki) + m·Σ(Nj − Ni) for neighbors j of i
Random local-extinction events crash a patch's population to near zero (the "Catastrophe rate" slider). With migration switched on, neighboring patches recolonize the empty one over time — the classic rescue effect from metapopulation ecology. With migration at zero, a crashed patch stays empty forever.
- Circle size — population of that patch.
- Circle color — occupancy fraction (population ÷ local carrying capacity).
- Arrows — net migration flux between neighboring patches this instant; the arrow points toward the emptier patch.
- Habitat variability — how unequal the six carrying capacities are; 0 makes every patch identical, 1 gives some patches much richer habitat than others.