Hares turn white by the calendar, but snow comes and goes with the climate. How much does a mismatched coat raise predation, and does it change the ten-year hare cycle?
Snow cover days are counted as days with more than half the ground covered.
Each button runs 40 years headless for several values and reports snow days, days of strong mismatch, mean mismatch, mean predation hazard, the lowest hare density and the mean lynx density.
The science
Coat colour. Snowshoe hares moult white in autumn and brown in spring, a process mainly triggered by day length, so it does not follow the snow. A hare with moult-timing offset δ has whiteness w(d) = 1 − S((d − cs − δ)/D + ½) + S((d − cf − δ)/D + ½) with the smoothstep S, spring centre cs = day 125, autumn centre cf = day 297 and moult duration D = 70 days (typical; the model assumes today's moult is tuned to today's snow). δ is normally distributed between hares (default σ = 10 days), sampled with 21 equal-probability quantiles.
Snow. Ground cover b(d) rises at snow onset (day 297) and falls at melt-out (day 125), each over a 20-day ramp. Warming ΔT shifts onset later and melt earlier so that the snow season loses dPerC × ΔT days in total (default 10 days per °C is illustrative; published trends vary by region).
Mismatch and detection. The mismatch of one hare is |w − b| (0 = invisible, 1 = a white hare on bare ground or a brown one on snow). Predator attack rate scales as a(d) = a0 [(1 − κ) + 2κ m(d)], so κ is the share of attack success that depends on camouflage (κ = 0 switches the effect off). This detection law is a simple assumption, not a measured curve; field studies find survival costs of mismatch but the size varies.
Predator-prey dynamics. Rosenzweig-MacArthur system with logistic hare growth and a Holling type II functional response: dH/dt = r H (1 − H/K) − f L, dL/dt = L (c f − d), f = a H / (1 + a h H). Defaults: r = 1.4 yr⁻¹, K = 250 hares km⁻², a0 = 10.4 km² yr⁻¹, h = 0.0025 yr, c = d/150, d = 0.8 yr⁻¹. They are illustrative values chosen to give a roughly ten-year cycle, not fitted Canadian data. With a constant attack rate the interior fixed point is H* = f*/[a(1 − h f*)], L* = r (1 − H*/K) H*/f*, f* = d/c, which the check compares against a long RK4 run. Time stepping is fourth-order Runge-Kutta with a 1-day step.
What to expect. In this model mismatch raises the mean predation hazard and deepens the troughs of the cycle; the mean hare density changes little because predators also respond. Real hare cycles also depend on food, disease and other predators, which are not modelled. Hares are drawn 2.3 times life size. Assets built with Blender; scene by Three.js.