Research · 2026-05-20

J-H-H-R vs Continuous Model — Simulated Trajectories

Interactive comparison of the current discrete Jump-Hold-Reduce cycle against the proposed continuous EWMA-headroom model, across a 30 km/wk runner's next 20 weeks. Adjust the controls to see how parameter choices change the trajectory. The cycle gets you further in 20 weeks, but at the cost of repeatedly breaching the ACWR caution zone — the continuous model is slower, smoother, and stays safe.

1 — Interactive Simulator

Both models start at the same chronic weekly volume and assume perfect compliance. The cycle is the current sub-80 J-H-R override (3-week cycle, +17% jump, −15% reduce). The continuous model is V_target = V_chronic × (1 + (CEIL − ACWR_msk) / K_struct) × msk_coef.

30 km/wk
1.30
8 weeks
0.85
20 weeks

Weekly volume (km/wk)

ACWR (4w acute / 12w chronic)

Cycle Continuous — — caution (1.30) — — danger (1.50)
Read me first — honest framing. Both models keep ACWR in the green zone (our caution threshold is 1.30, not 1.20). The cycle's peak ACWR at 30 km/wk is 1.205 — still safe by the ACWR criterion. The cycle's genuine cost is the post-reduce week-over-week jumps of +37 %, above Nielsen 2014's > 30 % threshold for distance-related injury in novices. For established sub-80 runners the literature is permissive. The continuous model is slower but smoother; the cycle is faster but spikier. Neither is unsafe by our ACWR thresholds — it's a genuine trade-off about which failure mode you weight more.

2 — Trajectory at Default Parameters (30 km/wk, established < 40, no injury)

Three lines: the J-H-R cycle's target volume (what the engine asks for), the J-H-R chronic (what the body absorbs), and the continuous model's chronic. All same starting state, 20 weeks, perfect compliance, msk_coef = 0.85.

ModelWk 5Wk 10Wk 15Wk 20Peak ACWRΔ 20 wk

3 — Parameter Sensitivity (Continuous Model)

Same 30 km/wk start, 20 weeks, perfect compliance. Each line is a different parameter combination. Use this to read off the right K_struct / CEIL combo for your athlete archetype.

ConfigCEILKmskWk 20 kmACWR @ 20Δ %

4 — Proposed K_struct-by-Volume Schedule

The current rule says "sub-80 km gets a faster J-H-R cycle." The literature doesn't support a volume-based cycle-length break, but the underlying intuition is sound: at lower absolute volumes, the same percentage growth produces less absolute MSK load, so the tissue can absorb faster. Express that via K_struct (smaller K → faster growth), not via discrete cycle structure.

Established athlete, chronic volumeK_structCEILRationale
< 30 km/wk41.30Low absolute load tolerates faster headroom drain. Honours the "sub-30 absorbs fast" intuition.
30 – 60 km/wk41.30Sub-elite range. Same logic as the existing sub-80 cycle override but expressed continuously.
60 – 100 km/wk61.30"Established" comfortable range. Tendon stiffness becomes the limiting tissue (Bohm 2024).
100 – 150 km/wk81.30Each percent is a bigger absolute load. Default tendon-window territory.
> 150 km/wk101.25Elite. Absolute swings dominate; even small headroom = lots of km/wk.
Tuning note. An earlier draft of this schedule had K = 6–8 at low volumes and was dismissing the cycle's faster trajectory as unsafe. That was wrong (peak ACWR 1.21 is green, not orange). The schedule above is tuned to honor the "sub-80 absorbs faster" evidence — K = 4 below 60 km/wk produces ~+20 % over 20 weeks, much closer to the cycle's spirit, while keeping WoW under 7 % and ACWR well in green.

Plus the age & injury-history modifiers from the main research doc: 40-49 adds +2 weeks to K, 50+ adds +4. Injury history flagged → step one row more conservative.

What this schedule produces across volumes

Each line starts at a different volume and uses the K_struct from the schedule above. Notice the growth percentages are similar across volumes — that's the design intent: the rule produces proportionally similar progression for everyone, with absolute increments scaling with volume.

StartKWk 5Wk 10Wk 20Δ %ACWR @ 20

5 — How the Continuous Model Handles a Missed Week

Athlete trains normally for 7 weeks, gets sick in week 8 (runs only 40% of plan). No reset rule, no establishment-ratio gate — the EWMA dynamics absorb the disruption automatically. The growth rate temporarily increases (more headroom because acute dropped faster than chronic), target volume drops below week 7's level, and the system rejoins steady state by week 12.

6 — The J-H-R Cycle, Honestly

The J-H-R cycle at 30 km/wk gets a runner to 68 km chronic in 20 weeks. That's aggressive, but by our own ACWR thresholds it's not unsafe — peak ACWR is 1.205, well inside the green zone (caution starts at 1.30). Where the cycle pays its bill is in the week-over-week jumps after every reduce week: +37 % returns that exceed Nielsen 2014's 30 % threshold for distance-related injury in novices. Both charts below tell the same story — the cycle's ACWR is fine, its WoW deltas are where the genuine risk lives.

ACWR with zone bands

Cycle peaks at 1.205 (top of green); continuous never leaves the 1.00–1.04 band. Neither crosses the orange (1.30) caution line.

Week-over-week % change in target

Cycle: 6 of 20 weeks exceed +30 % (Nielsen 2014). Continuous: max +6.8 % at K = 4, never close to the threshold.

Reading this chart. Both models live in safe ACWR territory. The cycle's advantage is reaching higher chronic faster; its cost is concentrated risk in 6 specific weeks per cycle (the return-from-reduce weeks). The continuous model trades raw growth rate for spread-out risk. If you can tolerate occasional +30 % weeks, the cycle gets you further; if you want a smooth ramp where every week looks like the last, the continuous model is the right shape.

7 — Option C: Hybrid (cycle below 60 km, continuous above)

The hybrid runs the discrete J-H-R cycle while chronic volume is below 60 km/wk (where "low-volume absorbs faster" applies and the cycle's bigger steps are defensible), then hands off to continuous EWMA-headroom control (K = 6) once chronic crosses 60 km/wk. This honours the research at both ends.

WeekPure cyclePure continuous (K=4 sub-60, K=6 above)HybridHybrid mode

How it works

Why we'd still ship Option B first. Two systems = two bugs. The cycle's discrete state, establishment-ratio gate, and 65 % reconciliation rule have to live alongside the continuous spine. Option B (aggressive K) gets ~70 % of the cycle's behaviour with 0 % of the discrete machinery — if its slower sub-80 trajectory turns out to under-train motivated athletes in practice, that's the moment to add Option C.

8 — Takeaways

  1. The cycle is faster but spikier, not unsafe. J-H-R at 30 km gets to ~68 km chronic in 20 weeks with peak ACWR 1.205 — still in the green zone (caution starts at 1.30). The genuine cost is post-reduce week-over-week jumps of +37 %, above Nielsen 2014's 30 % threshold. The continuous model is slower but smoother; pick your trade-off honestly.
  2. The "sub-80 absorbs faster" research is real, and the K schedule honours it. K = 4 below 60 km/wk produces +20 %/20wk. Not as aggressive as the cycle's +127 %, but in the same spirit — and without the post-reduce spikes that exceed Nielsen's threshold.
  3. The continuous model fundamentally can't match the cycle's growth. Even K = 2 only gets to +44 %/20wk vs the cycle's +127 %. That's because the cycle anchors V_target to a discrete `established_level` that sits above chronic, while the continuous model anchors to chronic directly. Different bets, both defensible.
  4. Option C (hybrid) is the way to get both. Run the discrete cycle below 60 km/wk where the absorption-is-fast argument is strongest, then hand off to continuous control where absolute MSK load makes the EWMA constraint sensible. Adds complexity; revisit only if Option B's slower sub-80 trajectory turns out to under-train motivated athletes.
  5. Illness needs no special handling. The continuous math handles missed weeks by definition: lower acute → bigger headroom → smaller target → graceful re-entry. No "65 % reconciliation rule," no cycle reset.
  6. Layer 2 (Frandsen L30 single-session cap) is the missing protection in either model. None of these trajectories model session-level spikes — that's the orthogonal axis the L30 rule covers. See main research doc § 3.2.

Companion to jhhr-cycle-evidence-and-continuous-formula.md. Builds on continuous_volume_progression.md.