Bacteria (green spheres) drift in the water column, feeding on
organic pollution and multiplying. Settled cells attach to the
pipe wall and grow into a biofilm (the mottled patch on the
floor) — a protected colony that is far harder to disinfect than
free-floating cells. Raise the disinfectant dose to kill
bacteria in the water; the biofilm keeps a residual population
alive underneath even after the water looks clear.
dN/dt = r · N · (1 − N/K) − k_d · N
r = r0 · Q10^((T − 20)/10) (growth speeds up with warmth)
K = K0 · (BOD / BOD0) (nutrient load sets carrying capacity)
k_d = k · C^n (Chick–Watson disinfection kinetics)
- Organic pollution (BOD) — biochemical oxygen demand; more nutrients raise the carrying capacity K, so the population can grow larger before it plateaus.
- Water temperature — bacteria roughly double their growth rate every 10 °C warmer (a Q10 relationship), up to a point.
- Disinfectant dose — chlorine or UV intensity; kill rate follows Chick–Watson kinetics, higher dose × time gives a faster log-reduction in live cells.
- Chlorine vs UV — chlorine keeps working after dosing (residual protection) but struggles to penetrate biofilm; UV kills instantly on contact but leaves no residual, so regrowth resumes downstream.
The coliform index estimates colony-forming units per 100 mL —
the same unit water utilities report. Regulatory drinking-water
limits are typically 0 CFU/100 mL for E. coli; this sim marks the
sample "Unsafe" above roughly 1 CFU/100 mL and "Caution" in
between, mirroring how utilities classify raw vs. treated water.