The 3D scene
The fish in the pond are drawn one-to-one up to 420 animals: the number shown is N(t)/(1.1 K) of that maximum, so a full pond is a population at or above carrying capacity. The tall gauge shows N against the golden K marker; the harvesting boat circles the pond whenever effort or a quota is switched on, and the crate fills with the cumulative catch (integral of H·N + C). Drag to orbit, scroll or pinch to zoom.
Every number comes from the same lab.js solver as the 2D companion (RK4, closed-form checks below), so both pages always agree.
The science
Each case-study file integrates dN/dt = rN(1 − N/K). This lab keeps that growth term and adds what a manager actually has to decide: how hard to harvest, and what happens if the population is small enough to suffer an Allee effect.
Equations as delivered in the case-study files
dN/dt = rN(1 − N/K) [individuals/s]; N(t) = K/(1 + (K/N₀ − 1)e^(−rt)).
dN/dt = rN(1 − N/K) [cells/s]; N(t)=K/[1+(K/N₀−1)exp(−rt)] [cells].
dN/dt = (r/60)N(1 − N/K) [cells/s]; N(t) = K/[1 + ((K/N₀) − 1)e^(−rt/60)] [cells].
dN/dt = r N (1 − N/K) [individuals/s] ; N(t) = K / (1 + (K/N₀ − 1) exp(−rt)) [individuals] ; r [1/s]; K [individuals]
dN/dt = rN(1−N/K) [animals/s] ; N(t)=K/(1+(K/N₀−1)e^(−rt)) [animals] ; r is converted day⁻¹ to s⁻¹; 1 playback second = 1 simulated day
What this lab adds
dN/dt = r N (1 − N/K) · α(N) − e r N − c r K/4, α = (N − A)/(K − A) for A > 0 else 1
Proportional harvest alone: logistic with r′ = r(1 − e), K′ = K(1 − e); yield at equilibrium = e r K(1 − e)
Maximum sustainable yield rK/4 occurs at e = 1/2 and N = K/2
Assumptions in the delivered files
- One homogeneous population with fixed carrying capacity. Rates and short timescales are illustrative, not field-calibrated.
- Deterministic, continuous, single-species logistic growth with constant carrying capacity; illustrative fast-growing culture, no discrete cell events, metabolic lag, contamination or spatial variation.
- Constant parameters between decisions and timeline events. The numerical core uses physical seconds and the displayed physical units (including metres and kilograms where relevant). Time acceleration is explicitly noted when simulation time is faster than playback time. Idealised equations are for e
Honest simplifications of this lab
- Continuous, deterministic and unstructured: no age classes, no randomness, no space.
- Time units follow each file (seconds, minutes or days); rates in the files are illustrative, not field-calibrated.
- The Allee factor (N − A)/(K − A) is one simple strong-Allee form; other forms give different tipping points.
Independent check The page compares the integrator with the logistic closed form (also with harvest via r(1−e), K(1−e)), the MSY identity and collapse beyond rK/4; the test file repeats them with an independent Python RK4.
Educational model. The 3D scene is a visual aid: fish count is scaled to a maximum of 420 animals. Numbers, plots and checks are those of the 2D companion.