========================================================================== SEA STAR KILLER -- CLUB ANALYSIS Companion to Prentice et al. 2025, Nat. Ecol. Evol. 9:1739-1751 doi:10.1038/s41559-025-02797-2 ========================================================================== *** All parameters are ILLUSTRATIVE. This is not the paper's *** analysis. See module docstring for every assumption. RNG seed: 20250804 A1. PRE-OUTBREAK STEADY STATE (no disease) ------------------------------------------ Integrated 400 yr from K=6.0, U=1.0 with stars held at P* and no disease. kelp K* = 9.2190 kg/m^2 urchins U* = 0.5094 individuals/m^2 sea stars P* = 0.01680 individuals/m^2 (imposed) residual |dy/dt| = 4.43e-13 (converged) sea star consumption at equilibrium: 50.4 urchins/star/yr urchins removed by stars: 0.846 urchins/m^2/yr kelp eaten by urchins: 1.316 kg/m^2/yr A2. THE WASTING SHOCK (SSWD arrives in year 5) ---------------------------------------------- Disease mortality 2.05 /yr applied for 1.6 yr. sea star density 0.01680 -> 0.000632 /m^2 (96.2% lost) peak urchin density 41.788 /m^2 at year 60.0 (82.0x pre-outbreak) kelp falls below 10% of K* at 2.7 yr after disease onset year 5.0 : K = 9.2190 U = 0.509 P = 0.016800 year 6.0 : K = 8.7843 U = 1.227 P = 0.002163 year 8.0 : K = 0.0333 U = 9.821 P = 0.000632 year 10.0 : K = 0.0008 U = 19.177 P = 0.000632 year 15.0 : K = 0.0004 U = 38.162 P = 0.000632 year 20.0 : K = 0.0003 U = 41.469 P = 0.000632 year 30.0 : K = 0.0003 U = 41.785 P = 0.000632 year 60.0 : K = 0.0003 U = 41.788 P = 0.000632 BARREN state after 60 yr: K=0.0003 kg/m^2 U=41.788 /m^2 P=0.0006322 /m^2 kelp lost: 100.0% urchins up: 8104% A3. IS THE BARREN A REAL ALTERNATIVE STABLE STATE? -------------------------------------------------- Same equations, sea stars absent (P=0), two different kelp starts: forest start K0= 9.0 U0= 0.5 -> K= 0.0003 U= 42.083 barren start K0= 0.2 U0= 9.0 -> K= 0.0003 U= 42.083 Two different endpoints from the same equations = bistability. The reef has two stable states and disease pushed it from one to the other. Removing the disease does not, by itself, push it back. A4. HYSTERESIS TEST -- REINTRODUCTION THRESHOLD ----------------------------------------------- Start from the 60-yr barren (K=0.0003, U=41.788), instantly restock sea stars at phi x P* and run 40 yr. Recovery = kelp > 4.610 kg/m^2. phi= 0.10 (P= 0.001680/m^2) -> K= 0.0003 U= 41.288 still barren t_rec= -- phi= 0.25 (P= 0.004200/m^2) -> K= 0.0004 U= 40.038 still barren t_rec= -- phi= 0.50 (P= 0.008400/m^2) -> K= 0.0004 U= 37.760 still barren t_rec= -- phi= 0.75 (P= 0.012600/m^2) -> K= 0.0004 U= 35.149 still barren t_rec= -- phi= 1.00 (P= 0.016800/m^2) -> K= 0.0004 U= 31.989 still barren t_rec= -- phi= 1.25 (P= 0.021000/m^2) -> K= 0.0005 U= 27.652 still barren t_rec= -- phi= 1.50 (P= 0.025200/m^2) -> K= 0.0011 U= 13.928 still barren t_rec= -- phi= 2.00 (P= 0.033600/m^2) -> K= 9.9039 U= 0.073 RECOVERED t_rec=16.7 yr phi= 3.00 (P= 0.050400/m^2) -> K= 9.9507 U= 0.041 RECOVERED t_rec=9.5 yr phi= 5.00 (P= 0.084000/m^2) -> K= 9.9788 U= 0.022 RECOVERED t_rec=6.4 yr RECOVERY THRESHOLD phi* = 1.551 x pre-outbreak sea star density i.e. P must exceed 0.026051 stars/m^2 (2.61 per 100 m^2) to flip the reef back within 40 years. Asymmetry: disease needed only a 96.2% kill to break the forest; repair needs 55% MORE stars than were there before it broke. A5. SLOW REINTRODUCTION -- DOES A TRICKLE WORK? ----------------------------------------------- Instead of restocking all at once, add rho stars/m^2/yr for 10 yr (standing density ramps up linearly, then is held): rho= 0.05 stars/100m^2/yr (total 0.005/m^2 released) -> K= 0.0004 still barren rho= 0.10 stars/100m^2/yr (total 0.010/m^2 released) -> K= 0.0004 still barren rho= 0.20 stars/100m^2/yr (total 0.020/m^2 released) -> K= 0.0005 still barren rho= 0.40 stars/100m^2/yr (total 0.040/m^2 released) -> K= 9.9284 RECOVERED rho= 0.80 stars/100m^2/yr (total 0.080/m^2 released) -> K= 9.9769 RECOVERED rho= 1.60 stars/100m^2/yr (total 0.160/m^2 released) -> K= 9.9953 RECOVERED ========================================================================== MODEL B -- SPATIAL SIR EPIDEMIC ALONG 3000 km OF COASTLINE ========================================================================== B1. CALIBRATING beta0 TO THE OBSERVED SPREAD -------------------------------------------- Observed: SSWD covered roughly 3000 km of coast in about 12 months -> target front speed = 8.22 km/day Kernel: exponential, length scale L = 45 km; patch size 20 km. Infectious period 1/gamma = 12 days (mean time to death, challenge experiments in the anchor paper). Rows of the kernel are normalised, so R0 = beta0 / gamma exactly. beta0 R0 front speed (km/day) linearity R^2 0.10 1.20 (front never crossed coast) 0.14 1.68 9.36 0.99947 0.18 2.16 14.15 0.99969 0.22 2.64 18.85 0.99978 0.26 3.12 23.51 0.99982 0.30 3.60 28.16 0.99984 0.35 4.20 33.95 0.99986 0.40 4.80 39.73 0.99987 0.50 6.00 51.28 0.99989 B2. FITTED EPIDEMIC ------------------- beta0 (fitted) = 0.1307 per day gamma = 0.08333 per day (1/12 d) IMPLIED R0 = 1.568 simulated front speed = 8.22 km/day (target 8.22), R^2 = 0.99937 time to traverse 3000 km = 365 days = 12.0 months final epidemic size (model, coastwide mean mortality) = 0.6242 (62.42%) peak prevalence anywhere on the coast at one time = 0.0834 (8.34%) ... reached at day 556, km 2990 B3. THE FINAL-SIZE EQUATION, RUN BACKWARDS ------------------------------------------ Textbook SIR final size: Z = 1 - exp(-R0*Z) Rearranged: R0 = -ln(1 - Z) / Z So a *body count* is enough to estimate R0. Published declines: observed decline Z implied R0 source-style label 0.808 2.042 80.8% -- low end of Harvell et al. 2019 range 0.878 2.396 87.8% -- Salish Sea to Gulf of Alaska (Hamilton 2021) 0.906 2.610 90.6% -- 'over 90%' headline figure 0.950 3.153 95.0% -- mid-range regional estimate 0.992 4.867 99.2% -- functionally extinct, Baja to Cape Flattery 1.000 20.723 ~100% -- complete local extirpation forward check: our fitted R0 = 1.568 -> predicted Z = 0.6242 (62.42%) model's actual coastwide mortality = 0.6242 (62.42%) agreement to 0.000 percentage points. B4. HOW MUCH DOES THE ANSWER DEPEND ON WHAT WE GUESSED? ------------------------------------------------------- Front speed is set by the kernel length L and the infectious period. Re-fitting R0 for other plausible guesses: L (km) 1/gamma (d) fitted beta0 implied R0 speed (km/day) 20 8 0.2560 2.048 8.22 20 12 0.2246 2.696 8.22 20 20 0.2004 4.009 8.22 45 8 0.1733 1.386 9.63 45 12 0.1307 1.568 8.22 45 20 0.1057 2.114 8.22 90 8 0.1733 1.386 15.23 90 12 0.1155 1.386 nan 90 20 0.0693 1.386 nan R0 across all 9 plausible combinations: 1.39 to 4.01 (median 1.57) The wave speed pins down beta0*L, not R0 on its own. Every R0 in that range reproduces the same 8.2 km/day front. That is a real identifiability limit, not a coding bug. B5. ARRIVAL TIMES (data for Figure 3) ------------------------------------- km along coast day 50%% dead cumulative mortality at day 500 10 289.5 0.6241 310 300.2 0.6240 610 325.5 0.6237 910 357.8 0.6228 1210 393.0 0.6198 1510 429.6 0.6099 1810 466.9 0.5776 2110 504.6 0.4833 2410 542.5 0.2830 2710 578.5 0.0818 ========================================================================== KEY NUMBERS FOR THE ARTICLE ========================================================================== A. pre-outbreak steady state K*=9.22 kg/m^2, U*=0.51/m^2, P*=0.0168/m^2 A. sea star kill in shock 96.2% A. peak urchin release 82.0x pre-outbreak (41.79/m^2) A. kelp lost at new state 100.0% A. time kelp -> <10% of K* 2.7 yr after onset A. recovery threshold phi* = 1.55 x P* (55.1% MORE stars than before the outbreak) B. fitted beta0 0.1307 /day B. implied R0 1.57 B. front speed 8.22 km/day B. model final size 62.4% B. R0 from 90.6% observed kill 2.61 B. R0 from 99.2% observed kill 4.87 B. R0 identifiability range 1.39 - 4.01 ========================================================================== Reminder: illustrative club models, invented-but-plausible parameters, single anchor parameter (0.68 urchins/star/day) from Galloway et al. 2023. Not the analysis in Prentice et al. 2025. ==========================================================================