Population counts follow a logistic Lotka–Volterra predator–prey model integrated with RK4:
dPrey/dt = a·Prey·(1−Prey/K) − b·Prey·Pred
dPred/dt = −c·Pred + e·b·Prey·Pred
Growth rate a scales with water temperature through a Q10 = 2 metabolic factor. Capture rate b is set by the predation-rate slider and is damped by wind: stronger waves disperse plankton and cut encounter rate. Hunting efficiency e rises at night, when the predators' own bioluminescent lures work best. The on-screen dots are individually drifted by a three-wave Gerstner-style surface (amplitude from the wind slider) and are spawned/retired to track the two population curves.