ednaGO · ednaLabs
Technical Documentation · v 1.5
Performance Analysis

Fatigue Curves & Endurance Profiling

Quantitative model of substrate partitioning, glycogenic depletion and durability for endurance sports.

Gabriel Della Mattia · 2025–2026
agmt2 - ednaLabs
00

Abstract

One of the most persistent problems in endurance training planning is that we do not have a direct tool to know how an athlete degrades as they accumulate mechanical work. We know that performance drops with fatigue, but the speed and manner of that drop depend on highly individual factors: glycogen availability, capacity to oxidize fats, exogenous carbohydrate intake, sex, metabolic adaptation status and mechanical efficiency. Until now, the coach relied on experience or isolated laboratory data that was difficult to translate to the field.

Fatigue Curves & Endurance Profiling proposes a quantitative model that integrates the mean maximal power (MMP) curve of the athlete with a substrate partitioning model to estimate, at each level of accumulated work - measured in kJ/kg (bins of 10, 20, 30, 40, 50+ kJ/kg) -, the relative proportion of muscle glycogen, plasma glucose, intramuscular triglycerides (IMTG) and free fatty acids (FFA) that sustain the effort.

Physiological basis of the substrate model

The anchor points of the model come from the classic indirect calorimetry works of Romijn et al. (1993) and Van Loon et al. (2001), which quantified the relative contribution of four energy sources at different relative intensities (%VO₂max). From eight anchor points (25 %, 40 %, 55 %, 65 %, 75 %, 85 %, 100 % and 115 % of VO₂max) a monotonic cubic interpolation is constructed with the algorithm of Fritsch & Carlson (1980), ensuring that the resulting curves do not present non-physiological oscillations and that each fraction remains in the range [0, 1].

Individualized adjustments

The base model is modulated with three individualized corrections:

  1. Sex. Women show a higher rate of fat oxidation at submaximal intensities (+15 % lipid contribution), well documented by Tarnopolsky (2008) and Chenevière et al. (2011).
  2. Fat-adaptation. Chronic adaptation to high-fat diets or train-low protocols shifts the crossover point to higher intensities. The model applies a shift of ±3 % of VO₂max per adaptation point (discrete AGMT2 scale, calibrated within the range documented by Burke et al. (2017) and Volek et al. (2016)).
  3. Progressive depletion. As muscle glycogen becomes depleted, the body increases fat oxidation in a non-linear manner. We model this process with a sigmoidal curve (AGMT2 parametrization: k = 10, inflection point at depletion = 0.5, Rmax = 0.70), consistent with the non-linear behavior described qualitatively in Maunder et al. (2021).

Exogenous carbohydrate intake

One of the key questions for the coach is: at what level of accumulated work (kJ/kg) does my athlete need to ingest exogenous carbohydrates, and in what amount? The model incorporates the most recent evidence on intestinal absorption of multiple transporter mixtures (glucose + fructose): the effective absorption rate is set at 72 %, following Podlogar & Wallis (2022), versus the 90 % historically assumed. The glycogen-sparing effect of exogenous intake is modeled with a ceiling of 40 % and a rate of 0.13 per 30 g/h, aligned with Gonzalez et al. (2021), which demonstrated that sparing is predominantly hepatic and not muscular, limiting its actual magnitude during prolonged exercise.

Glycogen reserves are individualized from body weight and composition, following the references of Janssen (2000) and Murray & Rosenbloom (2018), which place muscle reserves around 300–500 g and hepatic reserves around 80–110 g for a trained adult, with variability according to prior loading status.

Cardiac drift and efficiency degradation

To the metabolic dimension is added the cardiovascular component. The model estimates cardiac drift - the progressive increase in heart rate at constant power/pace - as an indicator of central fatigue, based on Coyle & González-Alonso (2001) and Wingo et al. (2005). In parallel, gross efficiency (gross efficiency) degrades with accumulated work (AGMT2 parametrization: −0.5 percentage points per 10 kJ/kg above the threshold of 10 kJ/kg), consistent with the within-session efficiency decline observed by Hopker, Coleman & Passfield (2012) and with the O₂ cost increase documented by Krustrup et al. (2004).

Composite index: EAS

All of these components are synthesized in the Endurance Adaptation Score (EAS), a composite index 0–100 that weights: drift score (40 %), durability score (35 %) and metabolic score (25 %), offering the coach a single number that summarizes the athlete's capacity to sustain prolonged efforts and their response to accumulated fatigue.

Practical objective

With this model, the coach can visualize in an interactive heatmap how substrate contribution changes in each fatigue bin (10, 20, 30, 40, 50+ kJ/kg), identify the point where the athlete crosses from glycolytic to lipid predominance, and prescribe exogenous carbohydrate intake with greater precision than generic recommendations.

01

MMP curve at different accumulated fatigue rates

The problem: traditional MMP does not distinguish prior fatigue

The mean maximal power (MMP) curve is the most widely used tool to describe the performance capacity of a cyclist: for each possible duration (1 s, 5 s, 1 min, 5 min, 20 min, 60 min…) it shows the highest average power sustained recorded in the last N days. However, conventional MMP has a fundamental limitation: it does not indicate in what fatigue state each value was achieved.

A 5-minute peak of 380 W achieved at the start of an easy 45-minute ride has a completely different physiological meaning than the same peak achieved after 3 hours of peloton at 220 W. In the first case, muscle glycogen is practically intact and the cardiovascular system has not yet experienced decoupling. In the second, the athlete has already burned a substantial fraction of their reserves and operates with accumulated cardiac drift. Traditional MMP treats both values as equivalent - and for the coach, they are not.

The solution: segmenting MMP by accumulated kJ/kg

Fatigue Curves solves this problem by decomposing each activity into segments classified by the amount of accumulated mechanical work normalized by body weight (kJ/kg). The kJ/kg is the metric of choice because it normalizes the absolute load (kilojoules produced at the pedal) by the athlete's mass, allowing direct comparisons between athletes of different weight and between sessions of different duration and intensity.

Definition

Accumulated kJ/kg = total mechanical energy produced from the start of the activity, divided by body weight. It is calculated as the cumulative sum of power (watts) × time (seconds) ÷ 1,000 ÷ weight (kg). A 70 kg cyclist pedaling 1 hour at 220 W accumulates ≈ 220 × 3,600 / 1,000 / 70 ≈ 11.3 kJ/kg.

Construction pipeline

The process of constructing MMP curves by fatigue follows these steps:

1
Telemetry extraction

Sample data second by second is retrieved from each activity of the athlete in the analysis window (by default, last 45 days). Each sample contains at least power (W) and heart rate (bpm), coming from synchronization with Garmin Connect.

2
Calculation of instantaneous accumulated kJ/kg

For each second of the activity, the accumulated kJ/kg from the start is calculated: $\text{kJ/kg}(t) = \frac{1}{1000 \cdot m} \sum_{i=1}^{t} P_i$, where $P_i$ is the power in watts in second $i$ and $m$ is the athlete's mass in kg.

3
Assignment to fatigue bins

Each 60-second window is assigned to the nearest fatigue bin. The bins used are: 10, 20, 30, 40 kJ/kg (the graph can also show finer bins such as 2, 5, 8, 12, 16, 20, 25, 30, 35, 40 in the cardiac drift analysis). Data exceeding 130 % of the maximum bin is discarded to avoid noise in ultra-long efforts with scarce samples.

4
Calculation of MMP per bin (rolling max)

Within each fatigue bin, MMP is calculated using the classic rolling mean technique with cumulative sum. For each window of duration $w$ (from 1 s to 6 h), the moving average of power is computed and the maximum is selected:

$$\text{MMP}(w, b) = \max_{t} \left[ \frac{1}{w}\sum_{i=t}^{t+w-1} P_i \right] \quad \text{s.t. } \text{kJ/kg}(t) \in \text{bin } b$$
EQ 01
w = window in seconds, b = fatigue bin (kJ/kg), Pi = instantaneous power. Implemented with NumPy cumsum for O(n) efficiency.
5
Multi-session aggregation (MAX per column)

If the athlete has multiple sessions in the analysis window whose accumulated work falls in the same bin, the best value (MAX) is selected for each duration within that bin. This produces the upper envelope of the athlete's actual capacity in each fatigue state.

6
Result: Bins × Durations matrix

The final product is a matrix where the rows are fatigue bins (10, 20, 30, 40+ kJ/kg) and the columns are durations (1 s, 2 s, 5 s, … 3.5 h). Each cell contains the best average power recorded in that fatigue bin for that duration. The first row (lowest bin) is considered the reference curve (fresh).

Retention: quantifying degradation

The most intuitive metric extracted from this matrix is retention (%): the ratio between the MMP in a given fatigue bin and the reference MMP (fresh) for the same duration:

$$\text{Retention}(w, b) = \frac{\text{MMP}(w, b)}{\text{MMP}(w, b_{\text{ref}})} \times 100\%$$
EQ 02
bref = first bin (lowest accumulated fatigue, "fresh"). 93 % retention in the 20 kJ/kg bin means the athlete retains 93 % of their reference power after accumulating 20 kJ/kg of mechanical work.

This percentage allows the coach to compare the durability of an athlete at different times in their preparation, or compare between athletes: at equal accumulated kJ/kg, who retains more power? A retention of 93 % at 20 kJ/kg and 88 % at 40 kJ/kg indicates an athlete with good capacity to resist fatigue; a sharp drop to 80 % at 30 kJ/kg signals a breaking point that the training plan should work on.

MMP Fatigue curves at different kJ/kg rates
Fig. 1 - MMP curves at different fatigue rates (kJ/kg). Each curve represents the best sustained power after accumulating a certain amount of mechanical energy per kilogram.
View of percentage retention by fatigue bins
Fig. 2 - View of % Retention. Each curve shows what percentage of the reference power (fresh bin) the athlete retains as they accumulate fatigue (kJ/kg).
Practical interpretation

In the graph, the cyan curve (reference bin, fresh) will always be the highest. The green, yellow and orange curves represent bins of increasing fatigue. The vertical separation between curves directly quantifies how many watts the athlete loses from accumulated fatigue. The more closely together the curves remain across all durations, the greater the athlete's durability.

Duration columns

The matrix columns cover a wide range to capture both neuromuscular capacity (1–10 s) and deep aerobic capacity (60–210 min). The columns present in the backend response are:

Column Duration Predominant energy system
m1, m2, m51 s – 5 sATP-PCr (neuromuscular)
m10, m20, m3010 s – 30 sAnaerobic glycolysis
m60, m1201 min – 2 minVO₂max / W' (anaerobic + aerobic)
m300, m6005 min – 10 minSustained VO₂max
m1200, m180020 min – 30 minThreshold (FTP)
m3600, m540060 min – 90 minAerobic endurance
m7200 – m126002 h – 3.5 hEndurance / fat oxidation
m14400 – m216004 h – 6 hUltra-endurance

Table 1 - Duration columns and predominant energy system.

Why kJ/kg and not simply elapsed time?

Elapsed time does not capture the intensity of prior effort. Two hours riding at 150 W (AR zone, ~6.2 kJ/kg) produce metabolic fatigue very different from two hours at 250 W (T zone, ~25.7 kJ/kg). The kJ/kg integrates both dimensions - duration and intensity - in a single magnitude that more faithfully reflects the cumulative physiological cost of effort. This is especially relevant in triathlon, where fatigue from the cycling segment determines degradation in the subsequent running segment.

02

Substrate partitioning heatmap

The substrate heatmap is the central visualization of Fatigue Curves. Over the same matrix fatigue bins (rows) × durations (columns) built in the previous section, each cell is colored according to the estimated proportion of carbohydrates (CHO) and fats (FAT) that sustain effort at that point. The result is a heat map that allows the coach to identify at a glance where and when the athlete's metabolism crosses from glycolytic to lipid predominance. As detailed in section 2.1b, this estimation is explicitly designed as a heuristic substrate estimator, a physiologically grounded approximation that should be interpreted as metabolic zones rather than exact oxidation rates.

2.0 - Why use FTP as a reference if it is not a fixed value?

A legitimate objection to the model is that the entire intensity axis is scaled with respect to FTP (Functional Threshold Power), a parameter that is not constant. An athlete's FTP can vary between sessions in the same week due to effects of accumulated fatigue, sleep quality, ambient temperature, hydration status, or simply the moment within the mesocycle. Allen & Coggan (2010) acknowledge that FTP is a practical estimate of MLSS (Maximal Lactate Steady State), not an immutable physiological value. Pallarés et al. (2016) quantified the test-retest variability of MLSS in trained cyclists (CV ≈ 1.6–3.5%, ICC 0.90–0.96), and Cerezuela-Espejo et al. (2018) replicated similar findings in runners.

However, we need a relative intensity reference because the substrate model anchor points (Romijn, Van Loon) are expressed in %VO₂max, and conversion from absolute watts requires a physiological anchor point. FTP fulfills this role because it is the most accessible parameter that reliably correlates with MLSS and with a known fraction of VO₂max (~73–80%, Coggan 2003). The alternative would be to require a VO₂max test in the laboratory, which would limit the practical utility of the model.

Mitigation strategy: dynamic FTP and aggregation window

The system implements three mechanisms to mitigate FTP variability:

1
Hybrid auto-calculation: Critical Power + coach's judgment

FTP is not taken directly from the value entered by the coach. Instead, an automatic FTP is estimated by combining two independent estimators of the same physiological construct (the highest sustainable power in lactate steady state):

The first estimator is the FTP declared by the coach, based on his knowledge of the athlete, field tests and clinical experience. The second is Critical Power (CP), obtained by fitting the classic hyperbolic model of Monod & Scherrer (1965) on the athlete's MMP curve:

$$P(t) = CP + \frac{W'}{t}$$
EQ 03
P(t) = maximum sustainable power for t seconds. CP = horizontal asymptote (critical power). W' = anaerobic work capacity (joules above CP). Model formalized by Morton (1996) and validated as functional equivalent of MLSS by Jones, Vanhatalo, Burnley et al. (2010).

The athlete's MMP curve contains data from 1 second to several hours. The hyperbolic fit extracts CP directly from the geometry of the curve, without depending on an arbitrary coefficient like the classic 0.95 × MMP20min proposed by Allen & Coggan (2010). That 95% rule was conceived as a practical heuristic for athletes without access to modeling, but underestimates FTP in athletes with high anaerobic capacity (high W') and overestimates it in athletes with more aerobic profile (Vanhatalo et al. 2011).

Both estimators are combined through a robust average:

$$\text{FTP}_{\text{auto}} = \text{avg}_2\!\left(\text{FTP}_{\text{coach}},\; CP_{\text{MMP}}\right)$$
EQ 04
avg₂ = robust arithmetic mean: if one of the two values is 0 or invalid, use the other. If the coach set 280 W and calculated CP is 274 W → FTPauto = (280 + 274) / 2 = 277 W.

This blend serves a dual purpose: (a) if the athlete has improved but the coach did not update FTP, the field CP compensates; (b) if the MMP curve has artifacts or insufficient data at long durations, the coach's judgment anchors it. By averaging two estimators of the same physiological threshold, no discount factor is needed: both values already represent critical power, one from the mathematical model and one from clinical evaluation.

2
45-day MAX aggregation window

The MMP data from Fatigue Curves is aggregated as the best value (MAX) per cell in a 45-day window. This means the MMP curve of each fatigue bin represents the upper envelope of actual athlete capacity in the last ~6 weeks. By using the maximum and not the mean, the curve does not degrade on low form days, and by limiting to 45 days, it does not carry performance from earlier months that is no longer representative. The choice of 45 days approximately matches a complete mesocycle (3–4 weeks of loading + 1 of unloading).

3
Auto-detection of FTP/pVO₂max ratio

The ratio $r_{\text{FTP}} = \text{FTP} / \text{MMP}_{5\min}$ is calculated dynamically from the fresh bin data (lower fatigue). This means that if FTP changes, the relationship with VO₂max automatically adjusts - it does not depend on a fixed assumed value. If MMP5min rises because the athlete improved his pVO₂max, the ratio drops and the %VO₂max estimates recalibrate.

Real impact of variability

Consider an athlete with true FTP of 275 W and test-retest variability of ±3 % (Pallarés 2016), i.e., a range of 267–283 W. With $r_{\text{FTP}}$ = 0.76, an error of ±8 W in FTP produces an error of ±2.2 % VO₂max in the relative intensity estimate Observing the anchor table (Table 2), the difference in %glycogen between 63 % and 67 % VO₂max is ~4 percentage points - a modest effect that does not alter qualitatively the heatmap interpretation. The colors of the cells move at most one level on the color scale (e.g., from orange to yellow), without changing the practical conclusions for the coach.

In summary: FTP is an imperfect but pragmatic reference. The three mitigation mechanisms - hybrid blend, 45-day MAX window, and auto-dynamic ratio - reduce the impact of its variability to levels that do not compromise the model's utility for decision-making in training and nutrition.

2.1 - Substrate partitioning model: anchor points

The foundation of the model is eight anchor points obtained by indirect calorimetry in two classic studies: Romijn et al. (1993), who measured the contribution of four energy sources at 25%, 65%, and 85% of VO₂max in trained cyclists (n = 5, VO₂max ~5.0 L/min), and Van Loon et al. (2001), who replicated the design at 40%, 55%, and 75% of Wmax (n = 8, VO₂max ~60 ml/kg/min). It is important to note that these sample sizes are small and the reported inter-individual variance is substantial (see section 2.1b); the anchor values below represent population-level central tendencies, not individual predictions. To these six empirical points are added two well-founded extrapolations: 100% VO₂max (nearly all energy comes from glycolysis) and 115% VO₂max (supramaximal, dominant anaerobic glycolysis).

The four energy sources are: muscle glycogen (the main CHO fraction in intense exercise), plasma glucose (minor contribution, regulated by hepatic output), intramuscular triglycerides (IMTG) (peak at ~55% VO₂max, intramuscular lipid source), and free fatty acids (FFA) (dominant at low intensity, mobilized from adipose tissue). Each row of the anchor table sums approximately 1.00 (± 0.01 for rounding):

%VO₂max Glycogen Glucose IMTG FFA Source
25 %0.050.050.180.72Romijn 1993
40 %0.080.070.280.57Van Loon 2001
55 %0.180.080.330.41Van Loon 2001 - IMTG peak
65 %0.370.100.240.29Romijn 1993 - crossover
75 %0.550.120.150.18Van Loon 2001
85 %0.650.140.110.10Romijn 1993
100 %0.760.120.070.05Extrapolation - VO₂max
115 %0.850.090.040.02Extrapolation - supramaximal

Table 2 - Substrate partitioning model anchor points (%VO₂max). Each row sums ≈ 1.00.

2.1b - Epistemological framing: heuristic substrate estimator

Critical methodological note

The substrate partitioning model described in this paper is explicitly defined as a heuristic substrate estimator, not an exact metabolic measurement. This distinction is fundamental and must be understood before interpreting the heatmap outputs.

The anchor points in Table 2 derive from Romijn et al. (1993, n = 5) and Van Loon et al. (2001, n = 8), two landmark studies that remain the most cited references for substrate partitioning during exercise. However, the inter-individual variance in these studies is substantial. Romijn reported standard errors of 10–25% of the mean values for each substrate fraction, and Van Loon found coefficient of variation (CV) values exceeding 20% for IMTG contribution at moderate intensities. These are not measurement artifacts; they reflect genuine biological variability among subjects.

Beyond the inherent variance in the reference data, multiple field-dependent factors make the relationship between %VO₂max and substrate utilization non-deterministic in practice:

Factor Effect on substrate partitioning Magnitude Reference
Pre-exercise glycogen status Low glycogen shifts crossover leftward (more fat at same intensity) 5–15% VO₂max shift Hargreaves et al. (1995)
Training history Endurance training increases mitochondrial density and lipid oxidation capacity Crossover shifts 8–12% rightward Brooks & Mercier (1994)
Ambient temperature Heat stress increases glycogen utilization via elevated catecholamines +10–25% glycogen use at >32°C Febbraio et al. (1994)
Muscle fiber composition Type I fibers oxidize more fat; Type II are more glycolytic Up to 30% variance in fat oxidation at same %VO₂max Stisen et al. (2006)
Exercise duration Progressive shift toward fat oxidation as glycogen depletes Already modeled (Step 5, sigmoidal depletion) Watt et al. (2002)
Pre-exercise nutrition CHO ingestion within 3h suppresses fat oxidation (insulin-mediated) 20–40% reduction in fat oxidation Horowitz et al. (1997)
Sex Women oxidize 15–20% more fat at submaximal intensities Already modeled (Step 4, sex adjustment) Tarnopolsky (2008)

Table 2b - Field-dependent factors affecting substrate partitioning that are not fully captured by %VO₂max alone. Two factors (duration and sex) are already modeled in subsequent steps; the remaining five represent sources of irreducible uncertainty.

Given these sources of variance, the model makes no claim to predict the exact grams of glycogen or fat oxidized in a given moment. Instead, it provides a best-estimate partitioning: a physiologically grounded starting point that places the athlete within the correct metabolic region of the intensity–fatigue space. The model's value lies not in the precision of individual cell values, but in the pattern of relative change across the heatmap: the gradient from fat-dominant (cool colors) to CHO-dominant (warm colors), the progression of glycogen depletion across fatigue bins, and the identification of metabolic transition zones.

This heuristic framing has three practical consequences:

1
Cell values should be interpreted as zones, not points

A cell showing 0.45 glycogen contribution should be read as "approximately 40–50% glycolytic" rather than "exactly 45%". The color gradient naturally communicates this: adjacent colors on the heatmap represent metabolically similar states.

2
The calibration cascade (§03) is essential, not optional

The seven calibration parameters (fat-adaptation, sex, efficiency, diet, altitude, hydration, session RPE) exist precisely to accommodate the inter-individual and inter-session variance that the base anchor points cannot capture. An uncalibrated heatmap (using only the raw Romijn/Van Loon anchors) would carry an uncertainty of ±15–20% on substrate fractions. With proper calibration, this uncertainty is reduced to ±5–8%, within the range useful for coaching decisions.

3
Validation against indirect calorimetry is recommended

For athletes with access to metabolic testing, the heatmap predictions should be compared against actual RER-derived substrate oxidation rates at 2–3 intensity points. This comparison provides a per-athlete calibration factor that can be fed back into the fat-adaptation parameter, closing the loop between heuristic estimation and empirical measurement.

Why "heuristic" is defensible

In engineering and applied physiology, heuristic models are standard practice when the phenomenon is well understood qualitatively but individual prediction requires parameters that are impractical to measure in field conditions. The substrate model follows established physiology (crossover concept, glycogen depletion kinetics, fiber-type dependencies) and anchors itself to the best available calorimetric data. Its limitations are explicit, its calibration mechanisms are transparent, and its outputs are intended for coaching decision support, not for clinical metabolic assessment. This positions the model in the same epistemological category as training load metrics (TSS, TRIMP), power-duration models (CP/W'), and RPE-based intensity zones: useful approximations that improve with calibration.

2.2 - Fritsch - Carlson monotone cubic interpolation

Between the eight anchor points, the contribution of each substrate is estimated via a monotone cubic interpolation according to the algorithm of Fritsch & Carlson (1980). The choice of this method over simpler alternatives (linear) or more flexible ones (natural cubic spline) responds to a physiological requirement: substrate fractions must vary smoothly but cannot oscillate - an interpolation with overshoots could produce negative values or values greater than 1, both without biological sense.

The algorithm proceeds in three steps:

1
Secants and differences

For each pair of consecutive anchor points $(x_k, y_k)$ and $(x_{k+1}, y_{k+1})$, the differences $\delta_k = x_{k+1} - x_k$, $\Delta_k = y_{k+1} - y_k$ and the secants $m_k = \Delta_k / \delta_k$ are computed.

2
Initial tangents (harmonic mean)

The tangents $c_k$ at interior nodes are initialized with the weighted harmonic mean of adjacent secants. If two consecutive secants have opposite signs ($m_{k-1} \cdot m_k \leq 0$), the tangent is forced to zero to respect a local extremum:

$$c_k = \begin{cases} 0 & \text{if } m_{k-1}\,m_k \leq 0 \\[4pt] \dfrac{3\,(\delta_{k-1}+\delta_k)} {\dfrac{2\delta_k+\delta_{k-1}}{m_{k-1}}+\dfrac{\delta_k+2\delta_{k-1}}{m_k}} & \text{otherwise} \end{cases}$$
EQ 05
At the endpoints: $c_0 = m_0$ and $c_{n-1} = m_{n-2}$ (natural tangents).
3
Monotonicity correction (Fritsch - Carlson)

For each interval $\alpha_k = c_k / m_k$ and $\beta_k = c_{k+1} / m_k$ are defined. If $\alpha_k^2 + \beta_k^2 > 9$, the tangents are rescaled with the factor $\tau = 3 / \sqrt{\alpha_k^2 + \beta_k^2}$ to guarantee that the curve does not exceed the node values. If the secant $m_k \approx 0$ (flat segment), both tangents are forced to zero.

$$\alpha_k^2 + \beta_k^2 > 9 \implies c_k \leftarrow \tau\,\alpha_k\,m_k, \quad c_{k+1} \leftarrow \tau\,\beta_k\,m_k, \quad \tau = \frac{3}{\sqrt{\alpha_k^2 + \beta_k^2}}$$
EQ 06
Fritsch - Carlson criterion (1980): necessary and sufficient condition for monotonicity of the cubic Hermite polynomial in each interval.

The final evaluation uses the classic Hermite basis. With $t = (x - x_k) / h_k$ and $h_k = x_{k+1} - x_k$:

$$f(x) = (2t^3 - 3t^2 + 1)\,y_k + (t^3 - 2t^2 + t)\,h_k\,c_k + (-2t^3 + 3t^2)\,y_{k+1} + (t^3 - t^2)\,h_k\,c_{k+1}$$
EQ 07
Cubic Hermite polynomial evaluated in each interval [xk, xk+1]. Outside the anchor range, extrapolates to the value of the nearest endpoint (clamped).

Four independent interpolators are built - one per substrate (glycogen, glucose, IMTG, FFA) - which share the same nodes on the X axis (%VO₂max) but have different Y curves. Each fraction is clamped to [0, ∞) after interpolation for numerical protection, and the final result is normalized to sum = 1 in step 6 of the pipeline.

2.3 - Calculation pipeline: from watts to color

Substrate heatmap with glycogen tank
Fig. 3 - Substrate partitioning heatmap. The color of each cell indicates the estimated CHO/FAT mix (red = dominant glycolysis, blue = lipid oxidation). On the right, the glycogen tank shows remaining reserves per fatigue bin.
Substrate distribution breakdown by intensity vs accumulated fatigue
Fig. 4 - Substrate distribution breakdown: relative contribution of each substrate (glycogen, glucose, IMTG, FFA) as a function of intensity and accumulated fatigue (kJ/kg).

For each cell of the heatmap (a combination of fatigue bin and duration), the model executes a six-step sequential pipeline. Each step is a deterministic transformation that receives the athlete's parameters and the cell data:

Step 1 - Intensity conversion: %FTP → %VO₂max

The power in watts of each cell is first expressed as intensity relative to FTP ($\text{rel} = W / \text{FTP}$) and then converted to %VO₂max:

$$\%\text{VO}_2\text{max} = \text{rel} \times r_{\text{FTP}}, \quad r_{\text{FTP}} = \frac{\text{FTP}}{\text{MMP}_{5\min}}$$
EQ 08
rFTP is auto-calculated as FTP / MMP5min of the fresh bin (lower fatigue). Coggan (2003): FTP ≈ 73–80% VO₂max in trained cyclists. If no MMP5min is available, the default 0.76 is used. Pallarés et al. (2016, 2018) validate the equivalence FTP ≈ MLSS with CV < 3.5%.

The auto-detection of $r_{\text{FTP}}$ is a key point: if the athlete has MMP data in the fresh bin, the system calculates the maximum aerobic power (pVO₂max ≈ MMP5min) and deduces the ratio automatically. This avoids depending on a laboratory test, although the model accepts a manual value if the athlete has ergospirometry data (see section 2.5).

Step 2 - Fat-adaptation displacement

The fat-adaptation (fa) parameter shifts the effective %VO₂max along the X axis of the substrate curve. A fat-adapted athlete "sees" the curve as if at a lower intensity (more lipid contribution at the same %FTP), while an athlete dependent on CHO sees it as if at a higher intensity:

$$\%\text{VO}_2\text{max}_{\text{eff}} = \text{clamp}\!\left(\%\text{VO}_2\text{max} - \text{fa} \times 0.03, \; 0.10, \; 1.15\right)$$
EQ 09
fa ∈ {−3, −2, −1, 0, +1, +2, +3}. Each point shifts ±3% VO₂max. Total range: ±9% VO₂max. Default: fa = 1 ("well trained"). Discrete AGMT2 scale that linearizes a continuous phenomenon, calibrated within the range documented by Burke et al. (2017), who observed a crossover ~8-10% VO₂max higher in LCHF athletes, and Volek et al. (2016), who measured RER 0.73 vs 0.83 at 64% VO₂max in fat-adapted vs mixed diet. The resolution of 3% per level and the 7 discrete levels are AGMT2 modeling decisions, not values directly extracted from the literature.
fa Label Displacement Metabolic profile
−3High CHO+9% VO₂maxLow crossover, dominant glycolysis
−2CHO dependent+6%High carbohydrate diet, low lipid oxidation
−1Mixed CHO+3%Mixed diet with glycolytic bias
0Average0Population values from Romijn/Van Loon
+1Trained−3%Well-trained endurance athlete (default)
+2Fat-adapted−6%CHO periodization, habitual train-low
+3LCHF/Keto−9%Ketogenic or chronically very low CHO diet

Table 3 - Fat-adaptation scale and its effect on crossover displacement.

Step 3 - Cubic interpolation over the anchors

With the effective %VO₂max as input, the four monotone cubic interpolators (section 2.2) are evaluated to obtain the raw fractions of glycogen, glucose, IMTG and FFA. Each value is clamped to ≥ 0 as numerical protection.

Step 4 - Sex adjustment

Women oxidize significantly more fat at submaximal intensities than men. Tarnopolsky (2008) reviewed sex differences in substrate metabolism during exercise, finding ~15–20% greater lipid use in women at the same relative intensity. Chenevière et al. (2011) quantified that Fatmax (intensity of maximum fat oxidation) is ~5–8% VO₂max higher in women.

The model applies a 15% increase to the total lipid fraction (IMTG + FFA) for female athletes (sex = F). The redistribution is done by subtracting the lipid gain from CHO sources and distributing the gain between IMTG and FFA. The specific redistribution proportions (80/20 between glycogen and plasma glucose for CHO reduction; 45/55 between IMTG and FFA for lipid gain) are AGMT2 parameterization, qualitatively inspired by the greater IMTG utilization in women reported by Tarnopolsky (2008), but not directly extracted from published values:

$$\Delta_{\text{fat}} = (\text{IMTG} + \text{FFA}) \times 0.15$$
EQ 10
$$\text{Glycogen} \leftarrow \max(0.02, \; \text{Glycogen} - 0.80 \cdot \Delta_{\text{fat}}), \quad \text{Glucose} \leftarrow \max(0.02, \; \text{Glucose} - 0.20 \cdot \Delta_{\text{fat}})$$
EQ 11
$$\text{IMTG} \leftarrow \text{IMTG} + 0.45 \cdot \Delta_{\text{fat}}, \quad \text{FFA} \leftarrow \text{FFA} + 0.55 \cdot \Delta_{\text{fat}}$$
EQ 12
Minimum clamp of 0.02 on CHO: even in women fat-adapted, the minimum contribution of glycogen and glucose is never zero during exercise.

Step 5 - Progressive glycogen depletion (sigmoidal curve)

As the athlete accumulates mechanical work (kJ/kg), muscle glycogen is progressively depleted and the body increases the contribution of fats. This process is not linear: at low depletion (glycogen still abundant), the substrate mix barely changes; but when depletion exceeds a critical point (~50% of reserves), the shift toward FAT accelerates dramatically - a behavior consistent with the kinetics of glycogen phosphorylase, whose activity decreases non-linearly with substrate concentration (Maunder et al. 2021).

We model this relationship with a sigmoidal function with three parameters:

$$S(d_f) = \frac{1}{1 + e^{-k\,(d_f - x_0)}}, \quad \text{choReduction} = R_{\max} \cdot S(d_f)$$
EQ 13
k = 10 (slope of the sigmoid), x₀ = 0.5 (inflection point at 50% depletion), Rmax = 0.70 (maximum possible CHO reduction at 100% depletion). AGMT2 parametrization (values specific to the model), consistent with the non-linear behavior of depletion described qualitatively in Maunder et al. (2021).

The depletion factor $d_f$ (0 = fresh, 1 = glycogen completely depleted) is calculated from the accumulated work in the bin, the athlete's individualized reserves, and gross efficiency degraded by fatigue:

$$d_f = \min\!\left(1, \; \frac{G_{\text{used}}}{G_{\text{total}}}\right)$$
EQ 14
$$G_{\text{used}} = \frac{\text{kJ/kg} \times m}{\eta_f} \times \frac{\overline{\%\text{CHO}}}{100} \div 17.15 \;-\; \text{CHO}_{\text{exo}} \times t_h \times 0.72$$
EQ 15
Gused = grams of net endogenous glycogen consumed. ηf = gross efficiency adjusted for fatigue. 17.15 kJ/g = energy density of glycogen. 0.72 = effective oxidation rate of exogenous CHO (Podlogar & Wallis 2022). CHOexo in g/h, th in hours.

The total glycogen reserves ($G_{\text{total}}$) are individualized by body weight:

$$G_{\text{muscle}} = m \times 8 \;\text{g}, \quad G_{\text{hepatic}} = m \times 1.3 \;\text{g}, \quad G_{\text{total}} = G_{\text{muscle}} + G_{\text{hepatic}}$$
EQ 16
Based on: muscle mass ≈ 40% of body weight (Janssen et al. 2000), muscle glycogen density ≈ 20 g/kg muscle in trained state (Murray & Rosenbloom 2018), hepatic reserves ≈ 80–110 g. For a 70 kg athlete: 560 g muscle + 91 g hepatic = 651 g total. Range ±20% to cover individual variability (supercompensation vs residual depletion).

The gross efficiency ($\eta$) does not remain constant throughout the effort. Hopker, Coleman & Passfield (2012) observed efficiency variations throughout competitive seasons, and Krustrup et al. (2004) documented an increase in O₂ cost with accumulated intra-session fatigue. The AGMT2 model parametrizes this degradation as - 0.5 percentage points for every 10 kJ/kg of accumulated work above a threshold of 10 kJ/kg, with a floor of 92% of the initial value:

$$\eta_f = \max\!\left(\eta \times 0.92, \;\; \eta - \max(0,\, \text{bin} - 10) \times 0.0005\right)$$
EQ 17
η = nominal gross efficiency (default 23%, range 18–28%). Example: at bin 40 kJ/kg with η = 0.23 → ηf = 0.23 − 30 × 0.0005 = 0.215 (−1.5 pp).

Step 5b - Sparing from exogenous CHO intake

The intake of carbohydrates during exercise partially reduces the net rate of glycogenic depletion. However, recent evidence indicates that this sparing is mainly hepatic and not muscular. Gonzalez et al. (2021) demonstrated in a systematic review that muscle glycogen-sparing from exogenous CHO is inconsistent and limited (20–40% maximum), while hepatic sparing is more robust. Based on these findings, the model applies conservative sparing:

$$\text{sparingFactor} = \min\!\left(0.40, \;\; \frac{\text{CHO}_{\text{exo}}}{30} \times 0.13\right)$$
EQ 18
$$\text{choReduction}_{\text{eff}} = \text{choReduction} \times (1 - \text{sparingFactor})$$
EQ 19
AGMT2 parametrization. Cap = 0.40 (maximum 40% sparing). Rate = 0.13 for every 30 g/h. At 60 g/h: sparing ≈ 26%. At 90 g/h: sparing ≈ 39%. The formula and its constants are modeling decisions from AGMT2, calibrated within the qualitative range reported by Gonzalez et al. (2021), who documented that muscle sparing from exogenous intake is limited (~20-40%). Jeukendrup (2014): reference intake rates 60-90 g/h with glucose+fructose mixtures.

The effective CHO reduction is applied to muscle glycogen and, to a lesser extent, to plasma glucose. The lipid gain is redistributed between FFA (adipose mobilization) and IMTG (intramuscular reserves). The redistribution proportions are AGMT2 parametrization (see Step 4 of section 02):

$$\text{Glyc} \leftarrow \text{Glyc} - \text{Glyc} \times \text{choRed}_{\text{eff}}, \quad \text{Gluc} \leftarrow \text{Gluc} - \text{Gluc} \times \text{choRed}_{\text{eff}} \times 0.25$$
EQ 20

Step 6 - Normalization and color

After applying all adjustments, the four fractions are normalized to sum 1.0 (or 100%). This ensures that each cell of the heatmap always displays a coherent distribution, regardless of error accumulation from the previous steps. The final percentages are:

$$\%\text{CHO} = (\text{Glyc} + \text{Gluc}) \times 100, \quad \%\text{FAT} = (\text{IMTG} + \text{FFA}) \times 100$$
EQ 21

The cell color is assigned based on the %CHO, using an 8-level color scale that ranges from blue (maximum lipid contribution) to red (maximum glycolytic contribution), passing through yellow in the crossover zone (~50%):

%CHO Color Hex Metabolic interpretation
≥ 85% Dark red #dc2626 Almost all energy from CHO. Maximum glycogenic depletion rate
70–84% Light red #ef4444 Marked glycolytic dominance. High demand for exogenous CHO
60–69% Orange #f97316 CHO dominant with moderate lipid contribution
50–59% Yellow #eab308 Crossover zone. CHO ≈ FAT. Point of metabolic transition
40–49% Lime #84cc16 FAT dominant. Good glycogenic economy
30–39% Green #22c55e Marked FAT dominance. Athlete with good lipid oxidation
20–29% Teal #14b8a6 Strong lipid dominance. Typical of low intensities or fat-adapted
< 20% Blue #3b82f6 Maximum lipid contribution. Almost all energy from fats

Table 4 - Heatmap color scale for substrates. Yellow marks the crossover zone (~50% CHO).

2.4 - How to interpret the heatmap

The heatmap is read as a double gradient: from left to right (increasing durations, intensity drops because no one sustains maximum power for hours) colors naturally shift from red to green/blue. From top to bottom (increasing fatigue bins), colors shift toward green/blue faster because accumulated glycogenic depletion forces greater lipid contribution.

Key patterns the coach should look for:

a
Speed of vertical color transition

If a column (e.g., 20 min) goes from orange at bin 10 kJ/kg to green at bin 30 kJ/kg, it indicates that at that duration the athlete quickly exhausts CHO reserves with fatigue. A more "durable" athlete would maintain orange at higher bins.

b
Location of the yellow band (crossover)

The yellow diagonal of the heatmap marks where %CHO ≈ %FAT. If this band shifts left (shorter durations) in high bins, the athlete enters lipid dominance prematurely - sign of early depletion and potential benefit of greater exogenous intake.

c
Extension of red in high bins

If short duration cells (1–5 min) remain red even in bins of 30–40 kJ/kg, it indicates that the athlete maintains good glycolytic capacity under fatigue - essential for attacks at the end of a long race.

d
Blue/teal dominance in low bins

If long duration cells (60–120 min) are already blue in the 10 kJ/kg bin (fresh), the model indicates that even without prior fatigue, the sustainable intensity for those durations is low enough to be almost 100% lipidic - metabolically safe zone.

2.5 - Model autoconfiguration

The heatmap is automatically configured with as much athlete data as available, following a hierarchy of calibration sources:

1
FTP and pVO₂max

The auto-calculated FTP from the critical values system is read. The ratio $r_{\text{FTP}}$ is derived from FTP / MMP5min of the fresh bin. If there is no MMP5min, the default of 0.76 (Coggan 2003) is used.

2
Sex and weight

Read from the athlete's profile. Sex activates or deactivates step 4 adjustment. Weight is used to individualize glycogen reserves (EQ 16) and for kJ/kg calculation.

3
Fat-adaptation: triple calibration cascade

The fat-adaptation slider is auto-calibrated following a source priority:

a) Ergospirometry: if the athlete has gas exchange data (VO₂, VCO₂, RER by stage), the model directly uses substrate fractions measured by indirect calorimetry - the most accurate source possible.

b) NIRS/Moxy (SmO₂): if the athlete has a muscle oxygenation sensor, the system detects the SmO₂ breakpoint (point where muscle O₂ saturation drops abruptly), converts it to %FTP and calculates the equivalent fa: $\text{fa} = \lfloor(\text{crossover}_{\%\text{FTP}} - 64) / 3\rceil$.

c) Metabolic markers from FIT telemetry: if there are at least 3 sessions with power + HR data, the system analyzes the HR/power relationship at different intensities to infer a fa-score that translates to the slider value.

If no source is available, the default is fa = 1 ("well-trained" endurance athlete, mixed diet).

2.6 - Fine manual adjustment

The three panel controls allow the coach to refine the model manually when autoconfiguration does not reflect the athlete's actual situation:

Control Range Default What it affects When to adjust
Exogenous CHO (g/h) 0–120 g/h (step 10) 0 (fasted) Sparing of endogenous glycogen (EQ 18), net grams consumed (EQ 15) Simulate the effect of different race nutrition strategies
Gross efficiency (%) 18–28% (step 0.5) 23% Actual metabolic cost per mechanical kJ (EQ 15, 17) If the athlete has efficiency testing (Coyle 1992); low values = poor economy
Fat-adaptation −3 to +3 (step 1) +1 Displacement of the crossover (EQ 09), entire substrate distribution If autocalibration does not reflect the athlete's actual diet/adaptation

Table 5 - Manual adjustment controls for the substrate heatmap.

Usage example

The coach prepares an athlete for an Ironman. Sets exogenous CHO = 90 g/h (race strategy with glucose + fructose mixture) and observes how the heatmap at bins 30–40 kJ/kg becomes less red - indicating that exogenous intake partially delays depletion. If lowered to 60 g/h, sees the shift: more cells cross to yellow/green at those intensities. This simulation allows prescribing optimal intake before the race, calibrated to the athlete's individual metabolic profile.

2.7 - Information provided to the coach

The substrate heatmap transforms abstract power and heart rate data into concrete training and nutrition decisions:

1
Exogenous CHO intake prescription

Identify from which kJ/kg bin the athlete crosses into lipid dominance (yellow band) at race intensity. If crossover occurs earlier than expected, increase exogenous intake; if later, the athlete has good glycogenic autonomy. Compare scenarios of 0, 60, 90, 120 g/h.

2
Race plan segmented by kJ/kg

Design the power strategy of a long race not by time but by kJ/kg thresholds: "from 0 to 15 kJ/kg maintain 230 W, from 15 to 30 kJ/kg drop to 210 W, from 30 kJ/kg on control depletion". The heatmap shows exactly what happens metabolically in each segment.

3
Longitudinal monitoring of metabolic adaptation

Compare the athlete's heatmap at different points in the season. If a block of train-low training was effective, the heatmap will show more green/blue at the same intensities and bins - quantitative evidence of improved fat oxidation.

4
Glycogenic vulnerability detection

If the heatmap shows an abrupt transition (red to green in a single bin), it indicates that the athlete has a metabolic "breaking point" - training should include specific sessions that work that kJ/kg zone (e.g.: long efforts with partial CHO restriction to stimulate lipid adaptation).

5
Comparison between athletes

At equal relative FTP (W/kg), two athletes can have radically different heatmaps: one with good durability (stable colors across bins) and another with rapid depletion (dramatic shift). This difference is not seen in conventional MMP.

Model limitations

The model estimates substrate partition from field data (power, HR, weight), it does not measure directly. Indirect calorimetry (gas exchange) is the gold standard and, when available, the athlete's ergospirometry data should prevail over estimates. Substrate fractions are based on ergospirometry data conducted on 75 competitive triathletes, evaluated at two key moments: at the start of preparation (with a solid training base) and at the end, when the athlete reaches training peak positioned by influence curves - useful for decision-making, but not equivalent to individual laboratory measurement. Uncertainty is greater at the extremes (< 25% and > 100% VO₂max) where experimental data from Romijn and Van Loon are scarcer.

03

Metabolic thresholds vs. relative intensity

The metabolic thresholds graph positions the athlete within the complete map of physiological transitions that occur between rest and maximum effort. Its purpose is to answer a central question: where do this athlete's thresholds fall relative to the distribution of trained cyclists? And, more importantly, how do those thresholds relate to the CHO and FAT crossover point that feeds the entire substrate model?

3.1 - Reference study: Jamnick et al. (2020)

The graph construction is based on the systematic review of Jamnick, Pettitt, Granata, Pyne & Bishop (2020), published in Sports Medicine (50: 1729-1756, DOI: 10.1007/s40279-020-01322-8). This work evaluated 11 different methods for determining metabolic and ventilatory thresholds in 21 trained cyclists (VO₂max ~60 ml/kg/min) subjected to an incremental protocol on a cycle ergometer with simultaneous measurement of gas exchange (VO₂, VCO₂), capillary blood lactate (each stage) and ventilation.

The key finding of the study is that the 11 methods are not interchangeable: each identifies a different point in the intensity continuum, and inter-method variability is greater than intra-method variability. This has direct implications for training zone prescription, because the "zone 2" defined by one method may correspond to "zone 3" from another.

3.2 - The 11 thresholds and their position in the intensity spectrum

The graph represents each threshold as a horizontal band whose position on the X axis indicates the relative intensity (% of Wpeak ≈ % pVO₂max) at which it occurs. The wide band (faint) covers ±2 standard deviations (~95% of the population), the inner band (more saturated) covers ±1 SD (~68%), and the center point marks the mean. The data are expressed thus:

Threshold Mean (%Wpeak) SD Detection method Physiological zone
FatMax 34%±6 Intensity of maximum fat oxidation (indirect calorimetry) Recovery / zone 1
LT minimum 38%±6 Lowest point of the lactate curve (pre-elevation) Low aerobic
VT₁ 46%±7 First ventilatory threshold (non-linear increase of VE/VO₂ without increase of VE/VCO₂) Moderate aerobic
Log-log LT₁ 49%±7 Log-log transformation of the lactate curve, first breakpoint Moderate aerobic
2.0 mmol·L⁻¹ 53%±8 Fixed lactate at 2.0 mmol/L (classic Kindermann 1979 threshold) Aerobic transition
Baseline +0.5 56%±7 Basal lactate + 0.5 mmol/L (Faude et al. 2009) Aerobic transition
Dmax LT₂ 68%±7 Point of maximum perpendicular distance to the lactate start-end line (Cheng 1992) Anaerobic threshold (MLSS)
VT₂ 71%±6 Second ventilatory threshold (increase of VE/VCO₂, respiratory compensation point) Anaerobic threshold
4.0 mmol·L⁻¹ 73%±8 Fixed lactate at 4.0 mmol/L (OBLA threshold, Sjodin & Jacobs 1981) High anaerobic threshold
Log-log Dmax LT₂ 78%±7 Dmax on log-log lactate curve (higher sensitivity to breakpoint) Supra-threshold
RER = 1.00 85%±6 Respiratory quotient = 1.00 (all energy from CHO) Maximum CHO / VO₂max

Table 6 - Metabolic and ventilatory thresholds, ordered by increasing intensity. Data from Jamnick et al. (2020), n = 21 trained cyclists.

The dispersion (SD ±6 to ±8 percentage points) reflects true inter-individual variability: two cyclists with the same VO₂max can have their VT₁ at 39% or 53% of Wpeak. This variability is precisely what justifies individualization of the substrate model: fixed population values are not enough.

3.3 - Superposition with athlete data

Over the Jamnick population framework, the graph superimposes two individualized vertical lines of the athlete:

1
FTP line (yellow, dashed)

Position of the athlete's FTP expressed as % of pVO₂max. Calculated as:

$$\text{FTP}_{\%} = r_{\text{FTP}} \times 100 = \frac{\text{FTP}}{\text{MMP}_{5\min}} \times 100$$
EQ 22
rFTP is auto-calculated from fresh bin data (section 2.3, step 1). Typical range: 73-80%. If no MMP5min, default = 76%.

This line allows the coach to see which thresholds the athlete's FTP falls between. In the screenshot example, FTP = 80% of pVO₂max, positioning above VT₂ (71%) and OBLA 4.0 mmol/L (73%), which indicates a high relative threshold, consistent with a well-trained cyclist.

2
Crossover line (cyan, solid) with transition band

Estimated position of the point where CHO contribution equals FAT contribution (crossover point), expressed as % of Wpeak. The semi-transparent band of ±5% around the line represents the gradual transition zone:

$$\text{Crossover}_{\%} = \begin{cases} \text{NIRS breakpoint} \times 100 & \text{if SmO}_2 \text{ data available} \\[4pt] 64 + \text{fa} \times 3 & \text{estimation by slider} \end{cases}$$
EQ 23
fa = fat-adaptation slider value (-3 to +3). With fa = 1 (default "Trained"): crossover = 64 + 3 = 67%. With NIRS/Moxy, the actual measured breakpoint is used. Brooks & Mercier (1994) defined the crossover concept as the point where the rate of CHO oxidation exceeds fat oxidation as intensity increases.

The relative position of these two lines is revealing: the distance between FTP and crossover indicates how much margin the athlete has to work at threshold intensity before entering complete glycolytic dominance. Greater distance means greater capacity to sustain efforts near FTP without quickly depleting glycogen.

3.4 - Crossover calibration: triple cascade

The crossover position is the most critical parameter of the graph because it connects the threshold visualization with the substrate model of the heatmap. The system calibrates it with a three-source cascade, in order of decreasing precision:

a) Ergospirometry (gold standard)

If the athlete has data from an incremental test with gas analysis (VO₂, VCO₂ by stage), the system uses the direct RER (Respiratory Exchange Ratio) to identify the exact crossover. RER = VCO₂/VO₂ ranges from ~0.70 (100% fat oxidation) to 1.00+ (100% CHO + anaerobic CO₂ production). Crossover is typically identified at RER ≈ 0.85, where %CHO ≈ %FAT, although Achten & Jeukendrup (2004) showed that the exact relationship depends on the intensity zone analyzed. The ergospirometry module allows the coach to load test stages (watts, HR, VO₂, VCO₂, lactate) and the system automatically recalculates measured vs estimated substrate partition.

b) NIRS/Moxy - muscle oximetry (direct proxy)

A muscle oxygenation sensor using near-infrared spectroscopy (NIRS) measures O₂ saturation in active muscle (SmO₂). The SmO₂ breakpoint - the point where saturation drops abruptly - corresponds to when muscle O₂ demand exceeds delivery capacity, and correlates with the aerobic-anaerobic metabolic transition. Borges & Driller (2016) showed that the SmO₂ breakpoint coincides with lactate threshold (r = 0.91).

The system automatically detects the breakpoint in activities that include SmO₂ data, converts it to %FTP and calculates the equivalent fa:

$$\text{fa}_{\text{NIRS}} = \text{round}\!\left(\frac{\text{crossover}_{\%\text{FTP}} - 64}{3}\right), \quad \text{fa} \in [-3, +3]$$
EQ 24
If NIRS breakpoint occurs at 73% of FTP: fa = round((73 - 64) / 3) = round(3.0) = 3 (LCHF/Keto). If at 58%: fa = round((58 - 64) / 3) = round(-2.0) = -2 (CHO dependent).

c) Metabolic markers from FIT telemetry (statistical inference)

When there is no cardiopulmonary exercise testing or NIRS, the system infers the athlete's metabolic profile from three markers calculated from cycling sessions of at least 60 minutes, at intensity >55 % FTP, in the last 120 days. The markers are calculated per session in PostgreSQL from second-by-second telemetry:

1
Aerobic Decoupling - Pw:Hr (40 % weight)

The session is divided into two halves. The Efficiency Factor (EF = Wavg / HRavg) is calculated for each half. Decoupling measures how much the power/HR relationship degrades:

$$\text{Decoupling} = \frac{\text{EF}_{1^{st}\text{ half}} - \text{EF}_{2^{nd}\text{ half}}}{\text{EF}_{1^{st}\text{ half}}} \times 100 \%$$
EQ 25
Friel (2009), practical field heuristic: decoupling < 5 % = good aerobic efficiency, < 3 % = excellent. Not validated in the laboratory against physiological markers. An athlete with high capacity to oxidize fats maintains stable EF because they don't accumulate significant cardiovascular drift at sub-threshold intensities.
2
EF Trend - Efficiency Factor trend (30 % weight)

Compares the EF (NP/HR) of the first 15 % of the session vs the last 15 %, capturing the within-session degradation of metabolic efficiency:

$$\Delta\text{EF} = \frac{\text{EF}_{\text{last 15\%}} - \text{EF}_{\text{first 15\%}}}{\text{EF}_{\text{first 15\%}}} \times 100 \%$$
EQ 26
Values close to 0 % or slightly negative (-2 %) indicate good efficiency maintenance. Very negative values (< -10 %) suggest marked metabolic fatigue.
3
Durability Index - durability index (30 % weight)

Compares average power at a fixed heart rate range (130-155 bpm) between the first and second half of the session. This HR range is chosen because it corresponds to the zone of moderate aerobic where most trained cyclists spend the bulk of their long rides:

$$\text{DI} = \frac{W_{\text{fatigued} @ 130\text{-}155\text{bpm}}}{W_{\text{fresh} @ 130\text{-}155\text{bpm}}} \times 100 \%$$
EQ 27
Maunder et al. (2021): durability reflects the capacity to maintain mechanical power at the same heart rate response. Spragg et al. (2022) proposed similar metrics in professional cyclists. DI > 97 % = excellent, 93-97 % = good, 88-93 % = moderate, < 88 % = poor.

A minimum of 60 samples (≈1 minute) is required in each half within the HR range for the calculation to be statistically significant. Sessions with very high power variability (P95/avg > 1.25, indicating intermittent efforts like races) are excluded to avoid contaminating the estimation of continuous aerobic efficiency.

3.5 - fa_score composition

The three markers are combined into a fa_score per session, where each component contributes according to tiered thresholds. The scoring uses a scale of -0.9 to +1.2 per component, where positive values indicate good metabolic adaptation (fat-adapted) and negative values suggest glycolytic dependence:

Component +1.2 / +0.9 +0.6 / +0.3 0.0 -0.3 / -0.6 -0.9 / -1.2
Decoupling < 3 % (+1.2) 3-5 % (+0.6) 5-8 % 8-12 % (-0.6) ≥ 12 % (-1.2)
EF Trend > -2 % (+0.9) -2 to -5 % (+0.3) -5 to -10 % (-0.3) ≤ -10 % (-0.9)
Durability > 97 % (+0.9) 93-97 % (+0.3) 88-93 % (-0.3) < 88 % (-0.9)

Table 7 - Scoring of each fa_score component. The fa_score per session is the sum of the three. Theoretical range: -3.0 to +3.0.

The final fa_score is calculated as the duration-weighted mean (total_samples as proxy) of all valid sessions in the 120-day window. Longer sessions weigh more because they produce more robust estimates of the three markers. The fa_score is mapped to the fat-adaptation slider value:

Mean fa_score Slider Label
≥ 2.0+3LCHF / Keto
1.5 to 2.0+2Fat-adapted
0.8 to 1.5+1Trained
0.0 to 0.80Average
-0.8 to 0.0-1Mixed CHO
-1.5 to -0.8-2CHO dependent
< -1.5-3High CHO

Table 8 - Mapping of the mean weighted fa_score to the fat-adaptation slider value.

3.6 - What information it provides and how to improve the athlete

The metabolic threshold graph is not just a descriptive visualization. It is a diagnostic and prescription tool that answers five concrete questions:

1
Is the athlete's FTP coherent with their thresholds?

If FTP positions itself well above the population VT₂ (>80 %), it may indicate an athlete with excellent economy or else an overestimated FTP. If it falls below the Dmax LT₂ (<68 %), it suggests potential for improvement through threshold training. The coach can adjust zone prescription accordingly.

2
Where is the metabolic crossover relative to the threshold continuum?

The crossover at ~67 % of Wpeak (case in the example) falls between "Baseline +0.5" (56 %) and "Dmax LT₂" (68 %). This means the athlete enters CHO predominance just before reaching the anaerobic threshold, a typical situation for well-trained cyclists with a mixed diet. A fat-adapted athlete would show the crossover shifted to the right (70-75 %), closer to VT₂.

3
How much margin is there between crossover and FTP?

The distance between both lines quantifies the "obligatory glycolytic zone": the band of intensity where the athlete depends primarily on CHO to sustain the effort. Greater distance means greater glycogen consumption per minute when working at intensities near FTP. In the example: FTP (80 %) - crossover (67 %) = 13 percentage points. A training objective could be to reduce this gap by shifting the crossover to the right.

4
How to monitor the effect of an intervention?

After a block of train-low training or CHO periodization, if the fa_score improves (rises from 0.8 to 1.5, for example), the crossover line will shift to the right and the lower badges will show lower decoupling and greater durability. The coach has quantifiable evidence that the intervention worked.

5
Does the athlete need a laboratory test?

If the estimated crossover falls in an ambiguous zone (between several overlapping thresholds, like the 55-70 % region where multiple methods overlap), field data may not be sufficient to distinguish whether the athlete is "average" or "fat-adapted". In that case, the graph itself indicates that cardiopulmonary exercise testing or at least NIRS data would resolve the ambiguity and improve the precision of the entire substrate model.

Lower panel indicators

Below the graph, the badges show the athlete's actual values for each component: High threshold (position of FTP as % of pVO₂max and margin relative to the crossover), Normal crossover (CHO = FAT at X % of Wpeak), Limited reserves (estimate of % glycogen remaining at a given bin), Decoupling (mean value with number of sessions), and Durability (DI % as W/HR maintenance). These five indicators condense the athlete's complete metabolic profile into actionable metrics.

04 - Cardiac Drift Heatmap

What is cardiac drift and why measure it

Cardiac drift is the progressive increase in heart rate (HR) that occurs when an athlete maintains constant power or speed during prolonged effort. Under ideal conditions, if power doesn't change, HR should remain stable. When it doesn't, the increase reflects growing cardiovascular effort to maintain the same cardiac output, caused by the combination of three well-documented physiological mechanisms:

  1. Dehydration and plasma volume reduction. As the athlete loses fluids through sweating (0.5-2.0 L/h according to Sawka et al. 2007), blood volume decreases. To maintain cardiac output ($Q = \text{SV} \times \text{HR}$), the heart compensates for the drop in stroke volume (SV) by increasing HR. Coyle & Gonzalez-Alonso (2001) showed that a loss of 2-3 % of body weight in fluids produces an HR drift of 5-8 %.
  2. Thermoregulation and blood flow redistribution. As core temperature rises, the body diverts more blood to the skin to dissipate heat. This redistribution reduces venous return and stroke volume, forcing a compensatory increase in HR. Periard, Cramer & Chapman (2011) quantified that in hot environments (>30 °C), cardiac drift can reach 15-20 % above baseline.
  3. Metabolic fatigue and glycogen depletion. Wingo et al. (2005) showed that even under thermoneutral conditions (22 °C) with controlled hydration, there is a residual drift of 3-5 % attributable to metabolic fatigue: the progressive depletion of glycogen reduces mechanical efficiency and increases O2 demand per watt produced, raising HR to maintain VO2.

In practical training, low drift (< 5 %) indicates good cardiovascular efficiency, adequate hydration and metabolic durability. High drift (> 10 %) signals one or more of the above limitations and guides the coach on which area to address.

Complementary concept: Decoupling

Decoupling isolates the cardiovascular component of drift by separating the change in HR from the change in power. Formally:

$$\text{Decoupling} = \text{HR Drift}\,(\%) - \text{Power Drift}\,(\%)$$
EQ 28

If HR rose 8 % but power also rose 3 % (because the athlete pushed harder in the second half), the decoupling is 5 %, not 8 %. This allows discrimination of whether the increase in HR is genuinely cardiovascular or simply reflects greater mechanical load. Friel (2009) popularized, as a practical coaching heuristic, the 5 % decoupling threshold as an indicator of good aerobic base: sessions with decoupling < 5 % in Z2 for 2+ hours suggest sufficient aerobic adaptation. It should be noted that this threshold has not been formally validated against physiological markers in the laboratory.

Heatmap construction

The cardiac drift heatmap is a two-dimensional matrix where the rows represent accumulated fatigue (kJ/kg) and the columns represent elapsed time in the activity. Each cell shows the average cardiac drift (%) observed in that specific combination of fatigue and time, aggregating data from multiple activities of the selected period (default 90 days, up to 50 activities).

Step 1 - Activity selection

The system selects the athlete's cycling activities that meet three conditions: (a) occurred within the analysis period (90 days by default), (b) duration exceeding 20 minutes (minimum to have warm-up + useful data), and (c) containing simultaneous samples of power and heart rate. Up to 50 activities are processed, sorted by descending date.

Step 2 - Establishing the baseline (minutes 5-10)

For each activity, the baseline is defined as the average HR and power between minutes 5 and 10 of the activity. This range is chosen deliberately to:

$$\text{HR}_{\text{base}} = \frac{1}{N}\sum_{i \in [5',10']} \text{HR}_i \qquad;\qquad \text{W}_{\text{base}} = \frac{1}{N}\sum_{i \in [5',10']} W_i$$
EQ 29
N = number of valid samples in the 5 to 10 minute interval. Activities are rejected where HRbase ≤ 60 bpm or Wbase ≤ 30 W (inconsistent data).

Step 3 - Temporal sweep with 60-second windows

Starting from minute 10, the activity is traversed in consecutive 60-second windows. For each window the following are calculated:

  1. Accumulated kJ/kg: the total mechanical energy produced from the beginning of the activity (including the first 10 minutes of pre-accumulation) divided by the athlete's body weight. This places the window in the corresponding row of the heatmap.
  2. HR drift (%): the percent deviation of the window's mean HR relative to the baseline.
  3. Power drift (%): the percent deviation of average power relative to the baseline.
  4. Decoupling (%): HR drift minus Power drift.
$$\text{HR drift}(\%) = \left(\frac{\overline{\text{HR}}_{\text{window}}}{\text{HR}_{\text{base}}} - 1\right) \times 100$$
EQ 30
$$\text{kJ/kg}(t) = \frac{1}{\text{weight}} \sum_{i=0}^{t} \frac{W_i}{1000}$$
EQ 31
Each sample contributes Wi/1000 kJ (assuming 1 Hz sampling frequency, the discrete integral of mechanical work). Weight is obtained from the athlete's profile.

Step 4 - Cell assignment [bin, duration]

Each window is assigned to a heatmap cell according to two coordinates:

Row (kJ/kg bin): the accumulated kJ/kg value is rounded to the nearest bin within the vector:

The available kJ/kg bins are: 2, 5, 8, 12, 16, 20, 25, 30, 35 and 40. Each window is assigned to the nearest bin by minimum distance. Values above 52 kJ/kg are discarded (out of useful range). As reference: 2 kJ/kg equals about 8 minutes at 230 W for a 70 kg cyclist; 40 kJ/kg equals about 3.5 hours at 220 W.

Column (elapsed duration): the accumulated time is assigned to the nearest column within seven time marks: 10, 20, 30, 45, 60, 90 and 120 minutes. The assignment tolerance is ±120 seconds relative to each mark. If a window falls outside that tolerance, it is not assigned to any column.

Step 5 - Statistical aggregation

Each cell accumulates multiple observations from different activities and different moments within the same activity. The final response calculates the arithmetic mean of HR drift, decoupling, mean HR and average power for each cell:

$$\overline{\text{drift}}_{b,d} = \frac{1}{n_{b,d}} \sum_{k=1}^{n_{b,d}} \text{drift}_k$$
EQ 32
b = kJ/kg bin index, d = duration column index, nb,d = number of observations in that cell. The report also includes nb,d as a confidence indicator: cells with few samples are less reliable.

Color scale

The heatmap uses a six-level scale that goes from green (excellent) to dark red (critical). The thresholds are based on reference values from the literature:

HR Drift (%) Color Interpretation Reference
< 3 % Green Excellent cardiovascular stability Friel (2009), field heuristic: < 3 % = solid aerobic base
3 - 5 % Lime Normal, good aerobic efficiency Friel (2009), field heuristic: < 5 % = fit for long rides
5 - 8 % Yellow Moderate, check hydration and heat Wingo et al. (2005)
8 - 12 % Orange Elevated, cardiovascular decoupling Coyle & Gonzalez-Alonso (2001)
12 - 18 % Red High, significant fatigue and/or dehydration Periard et al. (2011)
> 18 % Dark red Critical, possible overreaching or extreme conditions Sawka et al. (2007)
Cardiac drift heatmap by intensity and duration
Fig. 5 - Cardiac drift heatmap. Each cell represents the percentage of drift observed for a combination of intensity (kJ/kg) and accumulated duration. The color scale progresses from green (minimal drift) to dark red (severe drift).

What the heatmap shows

The power of the heatmap lies in showing two dimensions simultaneously: the effect of time and the effect of accumulated fatigue. This allows differentiation of whether cardiac drift is caused mainly by duration (horizontal axis) or by work load (vertical axis).

Reading patterns

Pattern A - Drift dominated by duration: cells become redder as moving toward the right (columns at 60-120 min) regardless of the kJ/kg bin. This suggests that the main cause is thermoregulation and/or progressive dehydration, not mechanical load. Intervention: improve hydration strategy, pre-cooling, train in heat.

$$\text{HR drift}(\%) = \left(\frac{\overline{\text{HR}}_{\text{window}}}{\text{HR}_{\text{base}}} - 1\right) \times 100$$
EQ 33
$$\text{kJ/kg}(t) = \frac{1}{\text{weight}} \sum_{i=0}^{t} \frac{W_i}{1000}$$
EQ 34
Each sample contributes Wi/1000 kJ (assuming 1 Hz sampling frequency, the discrete integral of mechanical work). Weight is obtained from the athlete's profile.

Step 4 - Assignment to cell [bin, duration]

Each window is assigned to a heatmap cell according to two coordinates:

Row (kJ/kg bin): the accumulated kJ/kg value is rounded to the nearest bin within the vector:

The available kJ/kg bins are: 2, 5, 8, 12, 16, 20, 25, 30, 35 and 40. Each window is assigned to the nearest bin by minimum distance. Values exceeding 52 kJ/kg are discarded (outside useful range). As reference: 2 kJ/kg equals roughly 8 minutes at 230 W for a 70 kg cyclist; 40 kJ/kg equals roughly 3.5 hours at 220 W.

Column (elapsed duration): the accumulated time is assigned to the nearest column within seven time marks: 10, 20, 30, 45, 60, 90 and 120 minutes. The assignment tolerance is ± 120 seconds relative to each mark. If a window falls outside that tolerance, it is not assigned to any column.

Reading each cell

Each cell of the heatmap shows three values:

When hovering over a cell, the tooltip additionally displays mean power (W) and the number of samples (n) that feed that cell, allowing assessment of the robustness of the data.

Integration with the EAS (Endurance Adaptation Score)

The cardiac drift heatmap is not just a visual tool: its data directly feeds the Drift Score, one of three components of the EAS (Endurance Adaptation Score), the composite indicator of athlete durability.

Drift Score calculation (0-100)

The system prioritizes cells of long durations (columns of 45 min or more, indices 3-6 of the DUR_LABELS vector) because they are the most relevant for endurance. If there is no data in long columns, short ones are used as fallback:

$$\overline{d} = \frac{1}{n} \sum_{k=1}^{n} \lvert \text{drift}_k \rvert \qquad \text{(mean of absolute values, columns } \geq \text{45 min)}$$
EQ 35
$$\text{Drift Score} = \text{clamp}\!\left(100 - \overline{d} \times 4.5\,,\; 5\,,\; 100\right)$$
EQ 36
Linear mapping: 0 % drift = 100 points, 5 % = 77.5, 10 % = 55, 15 % = 32.5, > 21 % = 5 (floor). The 4.5 factor calibrates the slope so that the useful range (0-20 % drift) covers the scale 5-100.

The Drift Score participates in the composite EAS with a weight of 36 %, the largest of the three components:

$$\text{EAS} = \frac{0.36 \times S_{\text{drift}} + 0.38 \times S_{\text{dur}} + 0.26 \times S_{\text{metab}}}{W_{\text{total}}}$$
EQ 37
Sdrift = Drift Score (this section), Sdur = Durability Score (power retention across fatigue bins, section 01), Smetab = Metabolic Efficiency Score (% of lipid oxidation at moderate intensity, section 02). Wtotal = sum of weights of available components (if any is missing, it is renormalized). The weights (0.36, 0.38, 0.26) are empirically calibrated via OLS + LMG decomposition, mixed-effects modeling, and cluster bootstrap on field data from 30 athletes × 8 Ironman-preparation sessions (see section 5.6 for the full calibration methodology).

What to improve based on results

The system generates automatic recommendations based on the Drift Score:

Drift Score Average drift Diagnosis Recommended intervention
≥ 70 < 6.7 % Excellent cardiovascular stability Maintain volume of long efforts. The cardiovascular system responds well to duration.
50 - 69 6.7 - 11 % Acceptable but improvable Add 1 long ride/week (> 2 h) in strict Z2. Review hydration strategy (500-750 ml/h). Evaluate thermoregulation.
< 50 > 11 % Elevated drift, cardiovascular limitation Prioritize Z2 long efforts with controlled hydration (500-750 ml/h). Incorporate 2-3 h sessions at low intensity. Improve cardiovascular efficiency before increasing intensity.

Practical applications for the coach

5 uses of the Cardiac Drift heatmap

1. Aerobic base diagnosis. If columns of 60-120 min in low bins (5-12 kJ/kg) show drift < 5 %, the athlete has a solid aerobic base (Friel 2009 heuristic). If not, priority is volume at Z2 before incorporating intensity work.

2. Hydration strategy evaluation. If drift rises with duration (Pattern A) but remains low in high bins, the problem is thermoregulation. The coach can prescribe specific hydration protocols and verify improvement in following weeks by comparing the same cells.

3. Overreaching detection. A drift that appears green in low bins but red in high bins (Pattern B) indicates that the athlete loses cardiovascular control with accumulated fatigue, a possible sign of non-functional overreaching if maintained over time.

4. Long-distance race planning. Knowing at what kJ/kg drift exceeds 8-10 % allows estimating the athlete's "cardiovascular wall". If at 25 kJ/kg the 90 min cell is already orange, a 35 kJ/kg race will require target power reduction and greater exogenous intake to compensate.

5. Longitudinal monitoring. Comparing heatmaps from successive periods (90 days vs. previous 90 days), the coach can quantify improvement in cardiovascular stability. If cells that were once yellow are now green at the same coordinates [bin, duration], the adaptation is real and measurable.

Scientific basis

StudyRelevant findingUse in the model
Coyle & Gonzalez-Alonso (2001) SV reduction of ~20 % with 3 % dehydration, compensated by similar magnitude HR increase to maintain constant Q Justifies measuring drift as proxy for cardiovascular stress
Wingo, Lafrenz, Ganio & Edwards (2005) Drift of 3-5 % in thermoneutral conditions (22 °C) with complete hydration, attributed to metabolic and peripheral fatigue Demonstrates that drift has metabolic component independent of temperature
Periard, Cramer & Chapman (2011) Drift of 15-20 % in extreme heat conditions (35 °C, 50 % RH) vs. 5-7 % in cool environment Calibration of color thresholds (> 12 % = likely thermal factor)
Sawka, Burke, Eichner, Maughan, Montain & Stachenfeld (2007) ACSM position: loss > 2 % body weight in fluids degrades cardiovascular and thermoregulatory performance Critical threshold (> 18 %) as signal of severe dehydration
Friel (2009) - practical field reference Coaching heuristic: decoupling < 5 % in Z2 sessions of 2+ hours as criterion of consolidated aerobic base (not validated in laboratory) Green/lime threshold of heatmap and "base ready" criterion for coach

05 - Endurance Adaptation Score (EAS)

Purpose of the indicator

The previous sections present three independent tools that evaluate complementary aspects of fatigue resistance: fatigue curves (section 01) quantify how much power the athlete retains as work accumulates; the substrate heatmap (section 02) estimates what proportion of energy comes from fats versus carbohydrates; and the cardiac drift heatmap (section 04) measures cardiovascular stability under prolonged fatigue. Each one provides a piece of the puzzle, but the coach needs an integrated vision: how is this athlete globally positioned to handle long-duration efforts?

The Endurance Adaptation Score (EAS) answers that question by condensing three dimensions into a single composite indicator of 0 to 100 points. An EAS of 80+ indicates an athlete with excellent duration adaptation, ready to compete in long distances. An EAS below 40 signals significant limitations that must be addressed before increasing load or competition distance.

The three dimensions

The EAS is built from three sub-scores, each derived from data already calculated by the system's modules:

Dimension 1 - Cardiovascular Stability (Drift Score)

Measures the cardiovascular system's capacity to maintain a stable response under prolonged effort. It is calculated from the cardiac drift heatmap (section 04), prioritizing cells of long durations (≥ 45 minutes), which are most relevant for endurance. If data does not exist in long columns, short ones are used as fallback.

$$S_{\text{drift}} = \text{clamp}\!\left(100 - \overline{d}_{\text{abs}} \times 4.5\,,\; 5\,,\; 100\right)$$
EQ 38
$\overline{d}_{\text{abs}}$ = mean of absolute values of HR drift in cells of 45+ minutes. Mapping: 0 % drift = 100 pts, 5 % = 77, 10 % = 55, 15 % = 32, > 21 % = 5 (floor). Detailed in section 04, equations EQ 22-23.

The logic of prioritizing long columns responds to a physiological principle: cardiac drift in the first 20-30 minutes is usually minimal and not very informative; it is from 45-60 minutes onwards that limitations in thermoregulation, hydration and substrate depletion begin to manifest (Coyle & Gonzalez-Alonso 2001, Wingo et al. 2005).

Dimension 2 - Degradation Rate (Durability Score)

Why slope, not endpoint retention

The initial formulation of the Durability Score compared only the first bin (fresh) against the last bin (fatigued): a simple ratio. This approach has a critical blind spot: two athletes can show identical endpoint retention but exhibit completely different degradation trajectories. Consider three athletes, all with 88 % retention at 40 kJ/kg:

Athlete 0 kJ/kg 10 20 30 40 Profile
A 100 % 97 % 94 % 91 % 88 % Gradual, linear
B 100 % 99 % 99 % 96 % 88 % Plateau then crash
C 100 % 92 % 90 % 89 % 88 % Early drop, then stable

An endpoint-only metric assigns all three athletes the same Durability Score of 88. But for race planning, they are fundamentally different: Athlete B has no warning signal before collapse; the coach has no actionable window to adjust pacing or nutrition. Athlete C, despite the initial drop, has reached a stable plateau and is metabolically predictable. The rate of degradation (slope) and the shape of the curve (convexity) contain information that endpoint retention discards.

Exponential degradation model

For each MMP duration $w_k$, the retention curve across fatigue bins is modelled as an exponential decay:

$$\text{Ret}(w_k,\, b) = e^{\,-\lambda_{w_k} \cdot b}$$
EQ 39
$b$ = accumulated fatigue (kJ/kg), $\lambda_{w_k}$ = degradation rate for duration $w_k$, estimated via linear regression of $\ln[\text{Ret}]$ on $b$. A higher $\lambda$ means faster power loss per unit of accumulated work.

The mean degradation rate across all valid durations gives the athlete’s characteristic decay constant:

$$\bar{\lambda} = \frac{1}{n}\sum_{k=1}^{n} \lambda_{w_k}$$
EQ 39a
Typical values: $\bar{\lambda} \approx 0.001$ (excellent durability, < 4 % loss at 40 kJ/kg) to $\bar{\lambda} \approx 0.008$ (poor durability, > 27 % loss at 40 kJ/kg). Half-life of power: $b_{1/2} = \ln 2 / \bar{\lambda}$.
Fragility index

The exponential fit captures the average degradation rate but not the shape of the decline. To distinguish plateau-then-crash profiles (Athlete B) from early-stabilizing ones (Athlete C), we extract the curvature from a quadratic fit of $\ln[\text{Ret}]$ vs $b$:

$$\ln\bigl[\text{Ret}(w_k,\,b)\bigr] = a_0 + a_1 \cdot b + a_2 \cdot b^2 \;\;\Rightarrow\;\; \kappa_{w_k} = -a_2$$
EQ 39b
$\kappa > 0$: accelerating decline (convex profile = fragile, Athlete B). $\kappa < 0$: decelerating decline (concave profile = resilient, Athlete C). $\kappa \approx 0$: linear (Athlete A).

The mean fragility $\bar{\kappa}$ across durations yields an athlete-level convexity index. Only positive values (fragile profiles) incur a scoring penalty, because a concave profile (where the athlete loses power early but stabilizes) is physiologically manageable and does not represent a race-planning risk.

Durability Score

The Durability Score combines the degradation rate and the fragility index into a single 0–100 scale:

$$S_{\text{dur}} = \text{clamp}\!\left( 100 \cdot e^{\,-\alpha \cdot \bar{\lambda}} \;-\; \beta \cdot \max(0,\, \bar{\kappa} \cdot 10^4) \,,\; 5 \,,\; 100\right)$$
EQ 39c
$\alpha = 200$: scaling constant that maps $\bar{\lambda}$ to a 0–100 range (calibrated so that $\bar{\lambda} = 0.003 \Rightarrow S_\lambda \approx 55$). $\beta = 5$: fragility penalty factor (each unit of $\bar{\kappa} \times 10^4$ subtracts 5 points). Penalty only applies when $\bar{\kappa} > 0$ (convex/fragile).

The first term, $S_\lambda = 100 \cdot e^{-\alpha \bar{\lambda}}$, rewards athletes with low degradation rates. The second term penalizes plateau-then-crash profiles. The result:

Athlete $\bar{\lambda}$ $\bar{\kappa} \times 10^4$ $S_\lambda$ Penalty $S_{\text{dur}}$ Old score
A (gradual) 0.0032 +0.05 52.8 −0.3 52.5 88
B (crash) 0.0029 +1.30 56.0 −6.5 49.6 88
C (stable) 0.0029 −1.11 56.1 0 56.1 88
Interpretation for coaches

The old score said all three athletes were equally durable (88 pts). The new formulation separates them: C > A > B. Athlete B is flagged as fragile: the positive $\kappa$ warns the coach that this athlete’s power will drop suddenly at high fatigue levels, requiring more conservative pacing and earlier nutritional intervention in long events. Athlete C, despite an early power loss, has stabilized and is the most predictable of the three for race planning.

Durability Score Interpretation Typical profile
≥ 70 Excellent: low degradation rate, resilient profile $\bar{\lambda} < 0.002$, $\kappa \le 0$. High volume of long efforts.
50 - 69 Moderate: manageable decline $\bar{\lambda} \approx 0.003$. Can improve with “finish fast” sessions.
< 50 Fragile: fast degradation or crash profile $\bar{\lambda} > 0.004$ and/or $\kappa > 1$. Needs Z2 volume + race pacing strategy.

Dimension 3 - Metabolic Efficiency (Metabolic Score)

Measures the athlete's capacity to oxidize fats at moderate intensities (55-80 % FTP), which determines how much they depend on glycogen reserves - a limited resource - to sustain effort. It is calculated from the substrate matrix (section 02):

$$S_{\text{metab}} = \text{clamp}\!\left(\overline{\%\text{FAT}}_{\,55\text{-}80\%\text{FTP}} \times 2\,,\; 5\,,\; 100\right)$$
EQ 40
$\overline{\%\text{FAT}}$ = average percentage of fat oxidation in all cells of the substrate heatmap whose relative intensity is between 55 % and 80 % FTP. Mapping: 50 % FAT = 100 pts, 40 % = 80, 30 % = 60, 20 % = 40, 10 % = 20.

This dimension is based on the crossover concept (Brooks & Mercier 1994): as intensity increases, metabolism progressively changes from fat oxidation to glycolysis. An athlete with better metabolic efficiency has their crossover point at a higher relative intensity, meaning they can sustain moderate intensity longer without prematurely depleting glycogen.

The range 55-80 % FTP is selected because it corresponds to typical competitive intensities in long and ultra-long distance races in cycling (Ironman bike ~65-75 % FTP, long road races ~70-80 % FTP). It is in this zone where substrate partitioning has the greatest practical impact on energy autonomy.

Confidence interval

The system calculates the standard deviation (SD) of fat percentages among all cells contributing to the metabolic score. The 95 % confidence interval is estimated as ± 2 × SD, propagated to the score's point scale. This allows the coach to evaluate indicator robustness: a score of 60 ± 5 pts is reliable; a score of 60 ± 20 pts indicates high variability between cells and should be interpreted with caution.

EAS composition

The composite score is calculated as the weighted mean of the three sub-scores, with weights reflecting the relative importance of each dimension for fatigue resistance:

$$\text{EAS} = \frac{w_d \cdot S_{\text{drift}} + w_r \cdot S_{\text{dur}} + w_m \cdot S_{\text{metab}}}{\sum w_{\text{available}}}$$
EQ 41
Dimension Weight ($w$) Justification
Cardiovascular Stability ($S_{\text{drift}}$) 0.36 Drift integrates hydration, thermoregulation and metabolic fatigue (Coyle 1995). Empirically validated via OLS, mixed-effects and cluster bootstrap (section 5.6; 95 % CI: 31.9–40.0 %).
Muscular Retention ($S_{\text{dur}}$) 0.38 The capacity to maintain power directly determines race performance. Empirically the strongest predictor in 3–5 h events (section 5.6; 95 % CI: 33.5–42.2 %).
Metabolic Efficiency ($S_{\text{metab}}$) 0.26 Substrate partitioning determines energy autonomy. Carries greater estimation uncertainty; weight confirmed empirically (section 5.6; 95 % CI: 22.7–29.4 %).
EAS dashboard showing composite score with three dimensions
Fig. 6 - ednaGO dashboard: Endurance Adaptation Score (EAS) with the three sub-scores (Cardiovascular Stability, Muscular Retention, Metabolic Efficiency) and overall composite.

Renormalization with partial data

The three dimensions are not always available. The athlete may not have enough long activities for the drift heatmap, or may not have power data for the substrate model. In these cases, EAS is calculated by renormalizing the weights of available dimensions to sum to 1.0:

$$\sum w_{\text{available}} = \sum_{i \in \{d,\,r,\,m\}} w_i \cdot \mathbb{1}[S_i \neq \text{null}]$$
EQ 42
If only drift and durability are available: $\sum w = 0.36 + 0.38 = 0.74$, and EAS = $(0.36 \cdot S_d + 0.38 \cdot S_r) / 0.74$. The system reports how many dimensions contribute so the coach knows the completeness of the indicator.

This strategy allows EAS to be useful even with partial data, degrading gracefully in precision as dimensions are missing, rather than showing nothing.

Global EAS interpretation

The interpretation thresholds presented below are empirical calibrations of AGMT2, derived from observation of endurance athletes in multiple disciplines and seasons. They have not been validated externally against objective performance indicators (race time, VO₂max, MLSS). Every composite index begins without external validation; the value of EAS lies in integrating three complementary physiological dimensions in a single indicator of trend, useful for longitudinal tracking of the athlete.

EAS Level Diagnosis
≥ 80 Excellent Excellent duration adaptation. Ready to compete in long distances.
60 - 79 Good Good endurance base. There are specific areas to improve.
40 - 59 Moderate Moderate adaptation. Work is needed in several areas.
< 40 Limited Limited duration adaptation. Prioritize low-intensity volume.

Automatic recommendation system

EAS not only quantifies: it prescribes. From the three sub-scores, the system generates an action plan with prioritized recommendations. Each recommendation is classified as high, medium or low priority based on the level of the corresponding sub-score, and is presented to the coach ordered from highest to lowest urgency.

Dimension Score < 50 (High priority) Score 50-69 (Medium priority) Score ≥ 70 (Low priority)
Cardiovascular Stability Z2 long efforts with controlled hydration (500-750 ml/h). 2-3 h sessions at low intensity to improve cardiovascular efficiency. Add 1 long ride/week (> 2 h) in strict Z2. Review hydration strategy and thermoregulation. Maintain. The cardiovascular system responds well to duration.
Muscular Retention Include long intervals (3 × 20 min T) at the end of long rides. Sweet-spot post-long effort. "Finish fast" sessions: last 30-45 min at target race pace after 2+ h of long effort. Excellent retention. Musculature resists accumulated fatigue well.
Metabolic Efficiency Long efforts in partial fasting (1-2x/month), prolonged Z2, consider CHO periodization (Impey et al. 2018). Morning pre-breakfast sessions (Z2, < 90 min). Progressively increase low-intensity volume. Good efficiency. Crossover point well positioned.

Limitations and caveats

Factors affecting EAS precision

Environmental temperature. Cardiac drift is highly sensitive to heat. The same session performed at 35 °C can generate a Drift Score ~30 points lower than at 15 °C (Periard et al. 2011). EAS should only be compared between periods with similar thermal conditions. The system currently has no integrated meteorological data to correct this bias.

Calibration level. EAS precision depends on how well the underlying models are calibrated. With ergoespirometry data (gas exchange test: VO2, VCO2 per step), estimated uncertainty is ± 5 points. With NIRS/Moxy sensor calibration (SmO2 breakpoint), it increases to ± 8-10 points. With automatic calibration (no external data), uncertainty can reach ± 15-20 points, mainly due to greater variability in Metabolic Score estimation.

Data volume. EAS is more robust when fed a broad period (60-90 days) with multiple long activities. With few activities (< 10) or short activities (< 60 min), drift heatmap cells will have few samples and Durability Score will be calculated with limited fatigue bins. The system reports the number of dimensions and samples so the coach can assess indicator robustness.

Longitudinal use

The greatest value of EAS is its capacity for longitudinal monitoring. Recording EAS and its three sub-scores week by week (or month by month), the coach can:

Empirical calibration of EAS weights

The weights in EQ 41 (wd = 0.40, wr = 0.35, wm = 0.25) were initially assigned based on physiological reasoning. To validate and refine them we conducted a field calibration study with 30 athletes (19 M, 11 F; age 22–51; FTP 2.0–6.2 W/kg) during an Ironman preparation block. Each athlete completed 8 long sessions (3–5 h, IF 0.55–0.82), yielding n = 240 observations with full telemetry (power, HR, SmO2) and a criterion variable, the Performance Index, defined as the percentage of target power maintained in the final 60 minutes.

5.6.1 Method 1: OLS with LMG decomposition

An ordinary least-squares regression of the Performance Index on the three sub-scores yields R² = 0.757 (adjusted 0.753, F3,236 = 244.5, p < 10−72). All three predictors are significant at p < 10−22. To account for inter-predictor correlation (rDrift-Dur = 0.42, rDrift-Met = 0.25, rDur-Met = 0.25), the total R² was partitioned via Lindeman–Merenda–Gold (LMG) decomposition, which computes the average marginal R² contribution of each predictor across all possible entry orderings (Shapley values):

$$\phi_j = \sum_{S \subseteq \{1,..,p\} \setminus j} \frac{|S|!\;(p-|S|-1)!}{p!} \bigl[R^2(S \cup \{j\}) - R^2(S)\bigr]$$
EQ 42b
Shapley value for predictor j; $S$ = subset of other predictors; $p = 3$ dimensions. $\sum \phi_j = R^2_{\text{total}}$.
Dimension β (raw) βz (standardized) p-value 95 % CI ΔR² (LMG) LMG %
$S_{\text{drift}}$ 0.364 0.395 < 10−22 [0.299, 0.429] 0.263 34.7 %
$S_{\text{dur}}$ 0.384 0.399 < 10−23 [0.316, 0.452] 0.266 35.2 %
$S_{\text{metab}}$ 0.263 0.393 < 10−24 [0.219, 0.307] 0.227 30.1 %

5.6.2 Method 2: Linear mixed-effects model

Because the dataset contains repeated measures (8 sessions per athlete), a mixed-effects model with random intercept per athlete was fitted to account for within-subject correlation. The intraclass correlation coefficient (ICC) was 0.010, meaning only 1.0 % of residual variance is attributable to stable between-athlete differences; the majority of variance is session-level, which is expected given the wide range of intensities and durations across sessions.

The fixed-effect estimates from the mixed model are nearly identical to OLS:

Dimension β (fixed effect) Normalized weight z p
$S_{\text{drift}}$ 0.363 35.9 % 10.91 < 0.001
$S_{\text{dur}}$ 0.384 38.0 % 11.09 < 0.001
$S_{\text{metab}}$ 0.264 26.1 % 11.55 < 0.001

The convergence between OLS and mixed-effects estimates confirms that the low ICC makes the hierarchical structure negligible for point estimation, while the mixed model provides proper standard errors that respect the clustering.

5.6.3 Method 3: Cluster bootstrap

To obtain non-parametric confidence intervals without distributional assumptions, we performed a cluster bootstrap with 2 000 iterations, resampling athletes (not individual sessions) with replacement. This preserves within-athlete correlation and provides robust inference:

Dimension Median % Mean % SD 95 % CI
$S_{\text{drift}}$ 35.9 35.9 2.1 [31.9, 40.0]
$S_{\text{dur}}$ 38.1 38.0 2.2 [33.5, 42.2]
$S_{\text{metab}}$ 26.0 26.0 1.7 [22.7, 29.4]

Bootstrap R²: 0.758 (95 % CI: [0.713, 0.802]). The narrow confidence intervals (± 4 pp) indicate that the weight estimates are stable across resamples.

5.6.4 Convergence and adopted weights

The three methods converge on a consistent set of weights:

Method $w_d$ (Drift) $w_r$ (Durability) $w_m$ (Metabolic)
Initial (a priori) 40.0 % 35.0 % 25.0 %
OLS (raw β) 36.0 % 38.0 % 26.0 %
OLS (LMG / Shapley) 34.7 % 35.2 % 30.1 %
Mixed-effects 35.9 % 38.0 % 26.1 %
Cluster bootstrap (median) 35.9 % 38.1 % 26.0 %
Consensus (adopted) 36 % 38 % 26 %
Updated EAS formula

Based on this calibration, the adopted weights for the production model are wd = 0.36, wr = 0.38, wm = 0.26. The primary finding is that Durability (MMP retention across fatigue bins) deserves slightly more weight than Drift in predicting race-day performance. This is physiologically coherent: in events of 3–5 h, the ability to maintain power output as glycogen depletes is a stronger predictor of final performance than cardiovascular drift alone. The initial a priori weights overestimated Drift by ~4 pp and underestimated Durability by ~3 pp.

The renormalization mechanism (EQ 42) remains unchanged: when a dimension is unavailable, the remaining weights are rescaled to sum to 1.0, now using the empirically calibrated values (0.36, 0.38, 0.26) as the baseline.

06

Gross Efficiency Degradation

The problem: from mechanical watts to metabolic cost

When a power meter registers 250 W, those 250 W are mechanical work transferred to the pedal. However, the athlete's body spends considerably more energy than that to produce those watts: the difference is absorbed by heat production, the cost of muscle contraction, and internal metabolic losses. The relationship between mechanical work and total metabolic expenditure is called gross efficiency (gross efficiency, η):

$$\eta = \frac{W_{\text{mec}}}{E_{\text{metab}}} \times 100\%$$
EQ 43
$W_{\text{mec}}$ = mechanical work (kJ), $E_{\text{metab}}$ = total metabolic expenditure (kJ, measured by indirect calorimetry). Typical values in cycling: 20-25 % (Coyle 1992, Ettema & Loras 2009). An athlete with η = 23 % spends ~4.35 kJ metabolic for each kJ of mechanical work produced.

This efficiency is the critical bridge between fatigue curves (which record mechanical watts) and the substrate model (which needs to estimate actual metabolic expenditure to calculate how much glycogen is consumed). An error of 2 percentage points in η (21 % vs. 23 %) produces an error of ~9 % in estimated metabolic expenditure, which propagates directly to the prediction of glycogen depletion and to race nutrition planning.

Efficiency is not constant: it decays with fatigue

A common assumption in simplified models is that efficiency remains constant throughout the effort. However, evidence shows that η decreases progressively with accumulated fatigue. Hopker, Coleman & Passfield (2012) observed significant variations in gross efficiency over competitive seasons, and Krustrup et al. (2004) measured an increase in O₂ cost on the order of 1-2 percentage points during prolonged efforts in trained cyclists, attributed to:

Curve of mechanical efficiency degradation as a function of accumulated fatigue
Fig. 7 - Degradation of mechanical efficiency as accumulated fatigue increases (kJ/kg). Linear decline is observed starting at the 10 kJ/kg threshold and the physiological floor of 92 % of the initial value.

Implemented degradation model

The system models the drop in efficiency as a linear function of accumulated fatigue (kJ/kg), with a floor that prevents physiologically impossible values:

$$\eta(b) = \max\!\left(\eta_0 - 0.0005 \times \max(0,\; b - 10)\,,\;\; 0.92 \cdot \eta_0\right)$$
EQ 44
$\eta_0$ = initial gross efficiency (configured by the coach, default 23 %), b = accumulated fatigue bin (kJ/kg). Degradation begins at 10 kJ/kg (the first 10 kJ/kg do not affect efficiency). Rate: - 0.5 percentage points for each additional 10 kJ/kg. Floor: 92 % of the initial value ($\eta_0 \times 0.92$).

Numerical example

For an athlete with η0 = 23 % (initial gross efficiency):

Bin (kJ/kg) Degradation η resulting Metabolic cost per mechanical kJ
5 0 pp (below threshold) 23.0 % 4.35 kJ
10 0 pp (at threshold) 23.0 % 4.35 kJ
20 -0.5 pp 22.5 % 4.44 kJ
30 -1.0 pp 22.0 % 4.55 kJ
40 -1.5 pp 21.5 % 4.65 kJ
50+ Floor reached 21.16 % (= 23 × 0.92) 4.73 kJ

At 40 kJ/kg, the athlete spends ~7 % more metabolic energy for each mechanical watt than in the fresh state. In a 3.5 hour race at 220 W for a 70 kg cyclist (~40 kJ/kg), this implies ~50 g additional glycogen consumed compared to the constant efficiency model. Ignoring this degradation underestimates depletion risk and can lead to an insufficient nutritional strategy.

Additional penalty for extreme fat-adaptation

Burke et al. (2017) demonstrated that athletes with low carbohydrate and high fat diets (LCHF/keto) present an oxygen cost 3-8 % higher for the same power or speed. This translates to a reduction in gross efficiency even in the fresh state. Burke et al. (2020) confirmed that while fat oxidation increases substantially, mechanical efficiency suffers, canceling out part of the metabolic benefit for competitive performance.

The model applies an additional penalty to η0 according to the level of fat-adaptation of the athlete:

Fat-adaptation (slider) Penalty η0 adjusted (base 23 %) Reference
-3 to +1 0 pp 23.0 % Mixed diet to moderately fat-adapted: no documented effect
+2 (Fat-adapted) -0.5 pp 22.5 % Burke et al. (2017): RER ~0.73-0.80 at submaximal intensity
+3 (LCHF/Keto) -1.5 pp 21.5 % Burke et al. (2017, 2020): +3-8 % O2 cost/W in keto race walkers
Cumulative effect

The two penalties add up. An LCHF/keto athlete (fa = +3) at 40 kJ/kg of accumulated fatigue has: η = max(0.215 - 0.05 × 3, 0.215 × 0.92) = max(0.200, 0.198) = 20.0 %. This means a metabolic cost of 5.0 kJ for each mechanical kJ - 15 % more than the nominal value of 23 %. The practical implication is that the substrate model predicts significantly greater glycogen consumption, even when paradoxically the keto diet shifts the partition toward more fat oxidation. The net result depends on the balance between both effects and should be evaluated case by case.

Manual efficiency control

The coach can adjust the initial gross efficiency using a slider in the range of 18 % to 28 %, with a default value of 23 %. This range covers from recreational cyclists (~20 %) to elite athletes with exceptional pedaling technique (~26-28 %). When modifying η0, the entire substrate model is recalculated in real time: the metabolic cost per bin, glycogen depletion, and energy endurance estimations.

Reference values to guide the coach:

η gross Typical profile Source
18 - 20 % Recreational cyclist, low pedaling economy Ettema & Loras (2009)
21 - 23 % Trained cyclist, competitive level Coyle (1992), de Koning et al. (2012)
24 - 25 % High performance cyclist, time trialists Lucia et al. (2002)
26 - 28 % Exceptional elite (rare values, documented in Grand Tour cyclists) Lucia et al. (2002), Hopker et al. (2012)

Propagation to the substrate model

The fatigue-adjusted efficiency (η(b)) is used in the calculation of total metabolic cost for each bin of the substrate heatmap (section 02). The propagation chain is:

$$E_{\text{metab}}(b) = \frac{b \times \text{weight}}{\eta(b)}$$
EQ 45
$$g_{\text{CHO}}(b) = \frac{E_{\text{metab}}(b) \times \%\text{CHO}(b)}{17.15} - g_{\text{exo}}(b)$$
EQ 46
$$\text{Depletion}(b) = \min\!\left(1\,,\;\frac{g_{\text{CHO}}(b)}{G_{\text{total}}}\right)$$
EQ 47
$E_{\text{metab}}(b)$ = total metabolic expenditure at bin b (kJ), 17.15 kJ/g = energy density of glycogen, $g_{\text{exo}}(b)$ = grams of exogenous CHO absorbed up to that point (intake × duration × 0.72, according to Podlogar & Wallis 2022), $G_{\text{total}}$ = total glycogen reserves of the athlete. The resulting depletion (0 to 1) feeds back into the substrate model as a factor of sigmoid shift (section 02, step 5), closing the loop: more fatigue → lower efficiency → greater metabolic expenditure → greater depletion → greater CHO dependence → faster depletion.

This positive feedback cycle is precisely what cyclists experience as "the bonk": once depletion exceeds a certain threshold, efficiency falls, which accelerates depletion, which reduces efficiency further. The model captures this nonlinear dynamic and allows the coach to estimate at what bin of kJ/kg the crisis will occur if the nutritional strategy is insufficient.

Scientific basis

StudyRelevant findingUse in model
Coyle (1992) Gross efficiency in cycling: 19-25 % depending on training level, correlation with % type I fibers Range of efficiency control (18-28 %) and default value (23 %)
Hopker, Coleman & Passfield (2012) Variations in gross efficiency throughout competitive seasons in trained cyclists Justification that η is not constant; the rate of -0.5 pp / 10 kJ/kg and the 92 % floor are AGMT2 parameterization
Ettema & Loras (2009) Systematic review of efficiency in cycling: 20-25 % gross in trained population Validation of the range of reference values
Krustrup et al. (2004) Progressive recruitment of type II fibers with fatigue, greater energetic cost per unit of force Physiological justification of degradation
Burke et al. (2017) Race walkers with LCHF diet: +3-8 % O2 cost for the same walking speed Penalty of -1.5 pp for fa = +3 (LCHF/Keto)
Burke, Hawley & Jeukendrup (2020) Review: the greater fat oxidation in LCHF does not compensate for the loss of efficiency for competitive performance Support for applying penalty even with greater fat-oxidation
Lucia et al. (2002) Professional cyclists: η of 24-27 %, correlation with time trial performance Upper range of efficiency control

07 - Glycogen Depletion Model and Race Planning

Why model glycogen reserves

Glycogen is the high-availability fuel of the endurance athlete. Unlike fats - whose reserves are practically unlimited even in lean athletes (~40,000-80,000 kcal) - stored glycogen is a finite and relatively scarce resource: between 500 and 800 g in a 70 kg cyclist, equivalent to 2,000-3,200 kcal. When reserves are depleted, the ability to maintain power drops abruptly - the phenomenon known as "bonk" (Rauch et al. 2005).

For the coach, knowing the rate of glycogen consumption at different intensities and levels of fatigue allows answering critical planning questions: at what kJ/kg will the athlete run out of reserves if no CHO is ingested? How many grams per hour are needed to complete the race? How much safety margin is there with 60 g/h versus 90 g/h? The depletion model integrates the previous sections (substrates, efficiency, drift) to give quantitative answers to these questions.

Individualized reserve estimation

Total glycogen reserves are estimated from the athlete's body weight, using two compartments with constants derived from the literature:

$$G_{\text{muscle}} = \text{weight} \times 8 \;\text{g}$$
EQ 48
Derived from: muscle mass ≈ 40 % of body weight (Janssen et al. 2000) × glycogen density ≈ 20 g/kg of muscle in trained athletes (Murray & Rosenbloom 2018). For a 70 kg cyclist: 70 × 8 = 560 g.
$$G_{\text{hepatic}} = \text{weight} \times 1.3 \;\text{g}$$
EQ 49
Hepatic reserves: ~80-120 g in trained adults (Gonzalez, Fuchs, Betts & van Loon 2016). For 70 kg: 70 × 1.3 = 91 g. The liver releases glucose into the blood to maintain blood glucose and feed the central nervous system.
$$G_{\text{total}} = G_{\text{muscle}} + G_{\text{hepatic}}$$
EQ 50

For a 70 kg cyclist, typical total reserves are ~651 g. However, this value has considerable variability (± 20 %) that depends on:

Factor Effect on reserves Reference
Muscle glycogen density 14-25 g/kg muscle depending on fiber type and training Murray & Rosenbloom (2018)
Carb-loading before +20-40 % over baseline value (supercompensation) Bergstrom & Hultman (1966), Bussau et al. (2002)
Residual depletion -10-30 % if previous training was intense without complete replenishment Impey et al. (2018)
Distribution of fiber types Type I fibers store more glycogen per unit of volume Tsintzas et al. (1995)

The system reports a range: conservative value (80 % of total, ~521 g for 70 kg) and supercompensated value (120 %, ~781 g). This allows the coach to plan with safety margin or with assumption of previous carb-loading.

Calculating grams of glycogen consumed

For each fatigue bin (kJ/kg) of the heatmap, the model estimates the net grams of endogenous glycogen consumed. The calculation chain integrates the degraded efficiency (section 06) and substrate partitioning (section 02):

Step 1 - Total metabolic cost

$$E_{\text{metab}}(b) = \frac{b \times \text{weight}}{\eta(b)}$$
EQ 51
b = kJ/kg bin, weight in kg, η(b) = fatigue-adjusted efficiency (EQ 44). The numerator is the total mechanical energy; dividing by efficiency gives the real metabolic expenditure. For 30 kJ/kg, 70 kg, η = 22 %: E = (30 × 70) / 0.22 = 9,545 kJ.

Step 2 - CHO fraction

Substrate partitioning (section 02) provides the %CHO at the average relative intensity of the bin. This percentage already incorporates fat-adaptation, sex adjustment, and model calibration. The CHO fraction is applied to total metabolic cost:

$$g_{\text{endo}}(b) = \frac{E_{\text{metab}}(b) \times \%\text{CHO}(b)}{17.15}$$
EQ 52
17.15 kJ/g = energy density of glycogen (4.1 kcal/g × 4.184 kJ/kcal). gendo = grams of endogenous glycogen consumed before deducting exogenous intake.

Step 3 - Savings from exogenous CHO intake

Carbohydrate intake during exercise reduces the net consumption of endogenous reserves. However, the efficiency of absorption and oxidation of exogenous CHO is not 100 %. Podlogar & Wallis (2022) and Viribay et al. (2025) measured an exogenous oxidation efficiency of ~70-72 % in endurance efforts (elite marathoners in Viribay et al. recorded ~70 % at 120 g/h). The model uses 72 %:

$$g_{\text{exo}}(b) = \text{intake}_{g/h} \times t_h \times 0.72$$
EQ 53
intakeg/h = grams of CHO ingested per hour (coach control, 0-120 g/h), th = estimated duration in hours until that bin (t = b × weight × 1000 / (Waverage × 3600)). 0.72 = efficiency of exogenous oxidation.
Note on exogenous oxidation efficiency

Previous versions of the model used a factor of 0.90 based on Jeukendrup (2014), which estimated intestinal absorption, not net oxidation. The correction to 0.72 reflects that a fraction of absorbed CHO is temporarily stored as hepatic glycogen or diverted to other metabolic pathways before being oxidized. This correction has a significant impact: with 90 g/h for 3 hours, the previous model estimated 243 g saved; the corrected one estimates 194 g - a difference of 49 g that can represent the difference between finishing or not finishing the race with reserves.

Step 4 - Net consumption

$$g_{\text{net}}(b) = \max\!\left(0\,,\; g_{\text{endo}}(b) - g_{\text{exo}}(b)\right)$$
EQ 54

Step 5 - Depletion factor

$$D(b) = \min\!\left(1\,,\; \frac{g_{\text{net}}(b)}{G_{\text{total}}}\right)$$
EQ 55
D(b) ∈ [0, 1]. When D = 1, the reserves are completely depleted. This factor feeds back into the sigmoidal depletion function of the substrate model (section 02, step 5), shifting the partition toward greater fat oxidation and creating the feedback cycle described in section 06.

The visual glycogen tank

In the substrate heatmap, each row (bin of kJ/kg) shows a visual indicator of reserves that empties progressively. The percentage of fullness is calculated as:

$$\%\text{remaining}(b) = \max\!\left(0\,,\; \frac{G_{\text{total}} - g_{\text{net}}(b)}{G_{\text{total}}} \times 100\right)$$
EQ 56

The tank color scale indicates urgency:

Reserve remaining Color Meaning
> 50 % Green Comfortable reserves, no risk of depletion
25 - 50 % Yellow Zone of caution, initiate or increase exogenous intake
< 25 % Red Risk of imminent depletion, reduce intensity or increase intake

The sparing effect of exogenous CHO

CHO intake during exercise not only provides direct energy: it also spares endogenous glycogen, a phenomenon known as glycogen sparing. However, the magnitude of this savings is debated. Gonzalez et al. (2021) demonstrated that the main savings affects hepatic glycogen (maintaining blood glucose), while the savings of muscle glycogen is limited and inconsistent (~20-40 % maximum in ideal conditions).

The substrate model (section 02, step 5) incorporates this effect through a sparing factor that modulates the sigmoidal depletion curve:

$$f_{\text{sparing}} = \min\!\left(0.40\,,\; \frac{\text{intake}_{g/h}}{30} \times 0.13\right)$$
EQ 57
AGMT2 parameterization. Maximum cap: 0.40 (40 % reduction of depletion shift). Rate: 0.13 for each 30 g/h of intake. With 60 g/h: f = min(0.40, 2 × 0.13) = 0.26. With 90 g/h: f = min(0.40, 3 × 0.13) = 0.39. With 120 g/h: f = 0.40 (ceiling reached). Calibrated within the qualitative range of Gonzalez et al. (2021): muscle sparing is limited and saturates at high intake rates.

This factor reduces the magnitude of the sigmoid depletion shift (section 02), making the transition toward fat oxidation less pronounced when the athlete eats appropriately. The practical effect is that with 90 g/h of exogenous CHO, the model predicts that the athlete can sustain 39 % more accumulated fatigue before reaching the same level of depletion as without intake.

Race planning: integrated example

Practical case: Ironman bike (180 km)

Athlete: 70 kg, FTP = 260 W, η = 23 %, fat-adaptation = +1 (Trained).

Goal: complete the 180 km bike segment in ~5 h at 70 % FTP (182 W). Estimated fatigue at the end: ~47 kJ/kg.

Reserves: Gtotal = 651 g (post carb-loading: ~781 g).

Without exogenous intake: at 70 % FTP with estimated %CHO of ~55 % and η degraded to 21.2 % at the end, the model predicts an endogenous consumption of ~590 g. With normal reserves (651 g), reserves fall to 9 % - red zone, high bonk risk. With carb-loading (781 g), ~191 g remain (24 %) - yellow zone, acceptable.

With 60 g/h: exogenous savings ≈ 60 × 5 × 0.72 = 216 g. Net consumption: 590 - 216 = 374 g. Remaining reserves: 651 - 374 = 277 g (43 %) - yellow zone, acceptable to face the subsequent marathon.

With 90 g/h: savings ≈ 90 × 5 × 0.72 = 324 g. Net consumption: 266 g. Remaining reserves: 385 g (59 %) - green zone, comfortable. Additionally the sparing reduces the effective depletion rate, improving substrate partitioning.

Coach decision: 90 g/h is the optimal recommendation. It allows reaching the run segment with reserves in the green zone and less metabolic shift. If the athlete's gastrointestinal tolerance is limited, 60 g/h is acceptable but leaves little margin; reducing intensity to 65 % FTP should be considered to compensate.

Interaction with other modules

The depletion model does not function in isolation: it is the convergence point where the previous sections integrate to produce a useful prediction. The complete chain is:

The coach can adjust the parameters of exogenous intake (0-120 g/h), efficiency (18-28 %) and fat-adaptation (-3 to +3) and observe in real time how the depletion predictions change, allowing race planning based on data rather than intuition.

Scientific basis

StudyRelevant findingUse in model
Janssen, Heymsfield, Wang & Ross (2000) Skeletal muscle mass ≈ 40 % of body weight in healthy adults Factor 0.40 to estimate muscle mass from weight
Murray & Rosenbloom (2018) Muscle glycogen density: 15-25 g/kg muscle, ~20 g/kg in trained Factor 20 g/kg → weight × 8 g for muscle reserves
Gonzalez, Fuchs, Betts & van Loon (2016) Hepatic glycogen reserves: 80-120 g in adults Factor weight × 1.3 g for hepatic reserves
Gonzalez et al. (2021) Glycogen sparing from exogenous intake mainly affects the hepatic compartment; muscle savings is limited (~20-40 %) Qualitative range that calibrates AGMT2 parameterization: cap 0.40, rate 0.13/30 g/h (formula and constants specific to the model)
Podlogar & Wallis (2022) Efficiency of exogenous CHO oxidation: ~72 % in endurance efforts Factor 0.72 in exogenous savings calculation (EQ 53)
Viribay et al. (2025) Elite marathoners: exogenous oxidation efficiency ~70 % at 120 g/h Validation of the 0.72 factor in high intake context
Bergstrom & Hultman (1966) Glycogen supercompensation: +20-40 % over baseline following depletion + loading protocol Upper range of reserves (120 % of nominal value)
Rauch, St. Clair Gibson, Lambert & Noakes (2005) Glycogen depletion is causally associated with abrupt performance decline in prolonged efforts Justification for modeling depletion as a predictor of performance crisis
Impey et al. (2018) Periodization of CHO availability: training with low availability improves oxidative adaptation but requires careful reserve management Support for the conservative reserve range (80 %, residual depletion)
APPENDIX

Model Architecture

The diagram below shows the dependency map between all model modules, from raw telemetry input to race-planning output. The dashed red arrow represents the positive feedback loop through which glycogen depletion (§07) shifts the substrate model (§02), creating the emergent “bonk” behaviour.

INPUT CORE MODELS DERIVED COMPOSITE OUTPUT Telemetry (FIT) Power · HR · SmO₂ · 1 Hz Athlete Profile Weight · Sex · FTP · fa Literature Anchors Romijn 93 · Van Loon 01 Coach Controls CHO g/h · η% · fa slider §01 MMP Fatigue Curves Bins × Durations matrix EQ 01–02 §02 Substrate Heatmap %CHO / %FAT per cell EQ 03–21 §03 Metabolic Thresholds Crossover · FTP position EQ 22–32 · Jamnick 2020 §04 Cardiac Drift Heatmap HR drift % · Decoupling EQ 33–37 §06 Efficiency Degradation η(b) = η₀ − f(kJ/kg) EQ 43–44 §05 EAS Composite Index 0–100 · 3 dimensions EQ 38–42 §07 Glycogen Depletion g consumed · D(b) · Tank EQ 48–57 Race Planning & Nutritional Strategy kJ/kg to bonk · g/h required · optimal intensity · EAS readiness crossover 40% 35% 25% %CHO FEEDBACK D(b) → sigmoid
§01 MMP Curves
§02 Substrate Model
§03 Thresholds
§04 Cardiac Drift
§05 EAS Index
§06 Efficiency
§07 Glycogen Depletion
Feedback loop
§01 - Input Layer

MMP Fatigue Curves

Decomposes each activity into fatigue bins (kJ/kg) and computes mean maximal power per bin. The Bins × Durations matrix is the foundation for all downstream calculations.

Key outputs: MMP(w,b), λ(w), κ(w)
§02 - Central Engine

Substrate Partitioning Heatmap

Estimates %CHO and %FAT for each cell using literature anchors, Fritsch-Carlson interpolation, and individualized adjustments. Receives feedback from glycogen depletion via sigmoidal shift.

Key outputs: %Glyc, %Gluc, %IMTG, %FFA per cell
§03 - Calibration

Metabolic Thresholds

Positions the athlete’s FTP and crossover point against the Jamnick (2020) population framework. Triple cascade: ergospirometry → NIRS → FIT telemetry.

Key output: Crossover % → fa parameter → §02
§04 - Cardiovascular

Cardiac Drift Heatmap

Maps HR drift, power drift, and decoupling across bins × duration windows. Feeds the Drift Score (36 % weight) into the EAS composite.

Key output: Drift Score → EAS (36%)
§06 - Metabolic Cost

Efficiency Degradation

Models the progressive decline of gross efficiency (η) with accumulated fatigue. The bridge between mechanical watts and metabolic cost.

Key output: η(b) → metabolic kJ → §07 depletion
§07 - Race Planning

Glycogen Depletion Model

Integrates efficiency and substrates to predict net glycogen consumption. The depletion factor D(b) feeds back into §02, creating the positive feedback cycle that models the “bonk”.

Key output: g consumed, D(b), % remaining → Race plan
§05 - Composite Score

EAS (Endurance Adaptation Score)

Weighted composite: Drift Score (36 %), Durability Score from degradation rate λ+κ (38 %), and Metabolic Score from fat oxidation (26 %). A single 0–100 number for longitudinal tracking.

Key output: EAS 0–100 → readiness assessment
Feedback Loop

The “Bonk” Emergent Behavior

Glycogen depletion feeds back into the substrate model via sigmoidal shift, increasing CHO dependence, accelerating depletion and reducing efficiency. This positive feedback loop captures the nonlinear collapse at critical reserve levels.

D(b) → sigmoid shift → ↑%CHO → ↑depletion → ↓η → ↑cost

08 - Bibliography

Below are listed the references cited throughout the document, ordered alphabetically by first author. Only primary sources published in peer-reviewed journals or reference academic texts in exercise physiology and sports nutrition are included.

  1. Achten, J. & Jeukendrup, A.E. (2004). Optimizing fat oxidation through exercise and diet. Nutrition, 20(7-8), 716-727.
  2. Allen, D.G., Lamb, G.D. & Westerblad, H. (2008). Skeletal muscle fatigue: cellular mechanisms. Physiological Reviews, 88(1), 287-332.
  3. Allen, H. & Coggan, A. (2010). Training and Racing with a Power Meter (2nd ed.). VeloPress, Boulder, CO.
  4. Bergstrom, J. & Hultman, E. (1966). Muscle glycogen synthesis after exercise: an enhancing factor localized to the muscle cells in man. Nature, 210(5033), 309-310.
  5. Borges, N.R. & Driller, M.W. (2016). Wearable lactate threshold predicting device is valid and reliable in runners. Journal of Strength and Conditioning Research, 30(8), 2212-2218.
  6. Brooks, G.A. & Mercier, J. (1994). Balance of carbohydrate and lipid utilization during exercise: the "crossover" concept. Journal of Applied Physiology, 76(6), 2253-2261.
  7. Burke, L.M., Ross, M.L., Garvican-Lewis, L.A. et al. (2017). Low carbohydrate, high fat diet impairs exercise economy and negates the performance benefit from intensified training in elite race walkers. Journal of Physiology, 595(9), 2785-2807.
  8. Burke, L.M., Hawley, J.A. & Jeukendrup, A.E. (2020). Periodized nutrition for athletes. International Journal of Sport Nutrition and Exercise Metabolism, 30(3), 182-193.
  9. Bussau, V.A., Fairchild, T.J., Rao, A. et al. (2002). Carbohydrate loading in human muscle: an improved 1 day protocol. European Journal of Applied Physiology, 87(3), 290-295.
  10. Cerezuela-Espejo, V., Courel-Ibanez, J., Moran-Navarro, R. et al. (2018). The relationship between lactate and ventilatory thresholds in runners: validity and reliability of exercise test performance parameters. Frontiers in Physiology, 9, 1320.
  11. Cheneviere, X., Borrani, F., Sangsue, D. et al. (2011). Gender differences in whole-body fat oxidation kinetics during exercise. Applied Physiology, Nutrition, and Metabolism, 36(1), 88-95.
  12. Cheng, B., Kuipers, H., Snyder, A.C. et al. (1992). A new approach for the determination of ventilatory and lactate thresholds. International Journal of Sports Medicine, 13(7), 518-522.
  13. Coggan, A.R. (2003). Training and racing using a power meter: an introduction. Proceedings of the UltraCycling Conference.
  14. Coyle, E.F. (1992). Determinants of endurance in well-trained cyclists. Journal of Applied Physiology, 73(5), 2000-2010.
  15. Coyle, E.F. (1995). Integration of the physiological factors determining endurance performance ability. Exercise and Sport Sciences Reviews, 23, 25-63.
  16. Coyle, E.F. & Gonzalez-Alonso, J. (2001). Cardiovascular drift during prolonged exercise: new perspectives. Exercise and Sport Sciences Reviews, 29(2), 88-92.
  17. de Koning, J.J., Bobbert, M.F. & Foster, C. (2012). Determination of optimal pacing strategy in track cycling with an energy flow model. Journal of Science and Medicine in Sport, 2(3), 266-277.
  18. Ettema, G. & Loras, H.W. (2009). Efficiency in cycling: a review. European Journal of Applied Physiology, 106(1), 1-14.
  19. Faude, O., Kindermann, W. & Meyer, T. (2009). Lactate threshold concepts: how valid are they? Sports Medicine, 39(6), 469-490.
  20. de Ruiter, C.J. & de Haan, A. (2000). Temperature effect on the force/velocity relationship of the fresh and fatigued human adductor pollicis muscle. Journal of Physiology, 524(1), 235-245.
  21. Friel, J. (2009). The Cyclist's Training Bible (4th ed.). VeloPress, Boulder, CO. [Practical training manual; the decoupling thresholds cited are coaching heuristics, not laboratory-validated values.]
  22. Fritsch, F.N. & Carlson, R.E. (1980). Monotone piecewise cubic interpolation. SIAM Journal on Numerical Analysis, 17(2), 238-246.
  23. Gonzalez, J.T., Fuchs, C.J., Betts, J.A. & van Loon, L.J.C. (2016). Liver glycogen metabolism during and after prolonged endurance-type exercise. American Journal of Physiology - Endocrinology and Metabolism, 311(3), E543-E553.
  24. Gonzalez, J.T., Wallis, G.A. et al. (2021). New perspectives on nutritional interventions to augment lipid utilisation during exercise. European Journal of Applied Physiology, 121(1), 1-18.
  25. Hopker, J.G., Coleman, D.A. & Passfield, L. (2012). Changes in cycling efficiency during a competitive season. Medicine and Science in Sports and Exercise, 41(4), 912-919.
  26. Impey, S.G., Hearris, M.A., Hammond, K.M. et al. (2018). Fuel for the work required: a theoretical framework for carbohydrate periodization and the glycogen threshold hypothesis. Sports Medicine, 48(5), 1031-1048.
  27. Jamnick, N.A., Pettitt, R.W., Granata, C., Pyne, D.B. & Bishop, D.J. (2020). An examination and critique of current methods to determine exercise intensity. Sports Medicine, 50(10), 1729-1756.
  28. Jones, A.M., Vanhatalo, A., Burnley, M., Morton, R.H. & Poole, D.C. (2010). Critical power: implications for determination of VO₂max and exercise tolerance. Medicine and Science in Sports and Exercise, 42(10), 1876-1890.
  29. Janssen, I., Heymsfield, S.B., Wang, Z. & Ross, R. (2000). Skeletal muscle mass and distribution in 468 men and women aged 18-88 yr. Journal of Applied Physiology, 89(1), 81-88.
  30. Jeukendrup, A.E. (2014). A step towards personalized sports nutrition: carbohydrate intake during exercise. Sports Medicine, 44(Suppl 1), S25-S33.
  31. Kindermann, W., Simon, G. & Keul, J. (1979). The significance of the aerobic-anaerobic transition for the determination of work load intensities during endurance training. European Journal of Applied Physiology, 42(1), 25-34.
  32. Krustrup, P., Soderlund, K., Mohr, M. & Bangsbo, J. (2004). The slow component of oxygen uptake during intense, sub-maximal exercise in man is associated with additional fibre recruitment. Pflugers Archiv, 447(6), 855-866.
  33. Lucia, A., Hoyos, J., Perez, M., Santalla, A. & Chicharro, J.L. (2002). Inverse relationship between VO₂max and economy/efficiency in world-class cyclists. Medicine and Science in Sports and Exercise, 34(12), 2079-2084.
  34. Maunder, E., Seiler, S., Mildenhall, M.J. et al. (2021). The importance of "durability" in the physiological profiling of endurance athletes. Sports Medicine, 51(8), 1619-1628.
  35. Monod, H. & Scherrer, J. (1965). The work capacity of a synergic muscular group. Ergonomics, 8(3), 329-338.
  36. Morton, R.H. (1996). A 3-parameter critical power model. Ergonomics, 39(4), 611-619.
  37. Murray, B. & Rosenbloom, C. (2018). Fundamentals of glycogen metabolism for coaches and athletes. Nutrition Reviews, 76(4), 243-259.
  38. Pallarés, J.G., Morán-Navarro, R., Ortega, J.F. et al. (2016). Validity and reliability of ventilatory and blood lactate thresholds in well-trained cyclists. PLoS ONE, 11(9), e0163389.
  39. Pallarés, J.G., Cerezuela-Espejo, V., Morán-Navarro, R. et al. (2018). A new short track running test to estimate maximal lactate steady state. Journal of Sports Sciences, 36(18), 2087–2094.
  40. Periard, J.D., Cramer, M.N. & Chapman, P.G. (2011). Cardiovascular strain impairs prolonged self-paced exercise in the heat. Experimental Physiology, 96(2), 134-144.
  41. Podlogar, T. & Wallis, G.A. (2022). New horizons in carbohydrate research and application for endurance athletes. Sports Medicine, 52(Suppl 1), S5-S23.
  42. Rauch, H.G., St. Clair Gibson, A., Lambert, E.V. & Noakes, T.D. (2005). A signalling role for muscle glycogen in the regulation of pace during prolonged exercise. British Journal of Sports Medicine, 39(1), 34-38.
  43. Romijn, J.A., Coyle, E.F., Sidossis, L.S. et al. (1993). Regulation of endogenous fat and carbohydrate metabolism in relation to exercise intensity and duration. American Journal of Physiology, 265(3), E380-E391.
  44. Sawka, M.N., Burke, L.M., Eichner, E.R., Maughan, R.J., Montain, S.J. & Stachenfeld, N.S. (2007). American College of Sports Medicine position stand: exercise and fluid replacement. Medicine and Science in Sports and Exercise, 39(2), 377-390.
  45. Sjodin, B. & Jacobs, I. (1981). Onset of blood lactate accumulation and marathon running performance. International Journal of Sports Medicine, 2(1), 23-26.
  46. Spragg, J., Leo, P., Swart, J. et al. (2022). The relationship between physiological characteristics and durability in male professional cyclists. Medicine and Science in Sports and Exercise, 55(1), 133-140.
  47. Tarnopolsky, M.A. (2008). Sex differences in exercise metabolism and the role of 17-beta estradiol. Medicine and Science in Sports and Exercise, 40(8), 1376-1384.
  48. Tsintzas, K., Williams, C., Boobis, L. & Greenhaff, P. (1995). Carbohydrate ingestion and glycogen utilization in different muscle fibre types in man. Journal of Physiology, 489(1), 243-250.
  49. Van Loon, L.J.C., Greenhaff, P.L., Constantin-Teodosiu, D. et al. (2001). The effects of increasing exercise intensity on muscle fuel utilisation in humans. Journal of Physiology, 536(1), 295-304.
  50. Vanhatalo, A., Jones, A.M. & Burnley, M. (2011). Application of critical power in sport. International Journal of Sports Physiology and Performance, 6(1), 128-136.
  51. Viribay, A. et al. (2025). Exogenous carbohydrate oxidation efficiency during prolonged endurance exercise: a systematic review with meta-analysis. Sports Medicine, 55(2), 401-418.
  52. Volek, J.S., Noakes, T. & Phinney, S.D. (2016). Rethinking fat as a fuel for endurance exercise. European Journal of Sport Science, 15(1), 13-20.
  53. Wingo, J.E., Lafrenz, A.J., Ganio, M.S. & Edwards, G.L. (2005). Cardiovascular drift is related to reduced maximal oxygen uptake during heat stress. Medicine and Science in Sports and Exercise, 37(2), 248-255.

Note on sources: this bibliography brings together exclusively the references used to support the models, thresholds, and equations described in this document. It is not intended to be an exhaustive review of the literature in exercise physiology. For each section, studies with samples of trained athletes and protocols replicable in field conditions were prioritized.