Performs critical speed estimations based on the methods chosen.

critical_speed(
  .data,
  distance_column,
  time_to_exhaustion_column = "TTE",
  method = c("3-hyp", "2-hyp", "linear", "1/time"),
  plot = TRUE,
  reverse_y_axis = FALSE,
  all_combinations = FALSE
)

Arguments

.data

A data frame containing a distance column and their respective time-to-exhaustion.

distance_column

The name of the distance column. This value has to be in meters.

time_to_exhaustion_column

The name of the time-to-exhaustion column. This value has to be in seconds. Default to "TTE".

method

The method for estimating critical speed. It can be one or multiple methods. Default to c("3-hyp", "2-hyp", "linear", "1/time").

plot

A boolean indicating whether to produce a plot from the critical speed estimation. Default to TRUE.

reverse_y_axis

A boolean to indicate whether to plot the Speed (m/s) in the y-axis. It is ignored for the linear methods. Default to FALSE.

all_combinations

A boolean indicating whether to perform the critical speed estimation from all the possible combinations of time-to-exhaustion trials provided. Please, see 'Details' for more information. Default to FALSE.

Value

a tibble containing the following columns:

index

In case all_combinations = TRUE this column indicates the row number of the trials chosen for the critical speed estimation. They correspond to the row numbers in your data.

method

The critical speed method for that estimation.

data

The data you provided.

model

A nls or lm object. The model used in the critical speed fitting.

CS

Critical speed, in meters per second.

CS SEE

Standard error of the estimation of critical speed, in meters per second.

D'

Anaerobic distance capacity, in joules.

D' SEE

Standard error of the estimation of anaerobic work capacity, in joules.

Smax

Maximal instantaneous speed, in meters per second (only available in CP 3-hyp).

Smax SEE

Standard error of the estimation of maximal instantaneous seed, in meters per second (only available in CP 3-hyp).

R2

R-squared.

RMSE

Root mean square error, the units vary depending on the method, as they represent the units of the response (i.e., y-axis): CP3-hyp in seconds, CP2-hyp in seconds, CPlinear in joules, and CP1/time in watts.

plot

The critical power plot.

Details

Please, note that estimations of critical power are highly influenced by the range of time-to-exhaustion trials performed, and the chosen critical power model. Please, see Mattioni Maturana et al. (2018).

A note on the R2 value: Please, note that for the hyperbolic fits (CP 3-hyp and CP 2-hyp) this value is actually a pseudo r-squared, as they are not linear models.

CP 3-hyp

The 3-parameter hyperbolic model is calculated as the following (Morton, 1996):

\[t=\frac{W'}{speed-CS}+\frac{D'}{CS-S_{max}}\]

CP 2-hyp

The 2-parameter hyperbolic model is calculated as the following (Hill, 1993):

\[t=\frac{D'}{speed-CS}\]

CP linear

The linear model is calculated as the following (Moritani et al. 1981):

\[D_{lim}=D'+CP\cdot t\]

CP 1/time

The 1/time linear model is calculated as the following (Whipp et al. 1982):

\[speed=D'\cdot \frac{1}{t}+CS\]

All combinations

When the argument all_combinations = TRUE, the function takes the given data and finds all the possible combinations of the trials given. For example, if 5 trials are provided (i.e., your data contains 5 rows), critical speed will be fitted with all the 5 trials, then all the possible combinations using only 4 trials, and so on. This feature was inspired on our paper Mattioni Maturana et al. (2018).

When all the combinations are fitted, an extra column called "index" appears in the final results. This is the index of the trial number used to fit the model. This corresponds to the row number of your data (e.g., in [1,3,5] trials #1, #3, and #5 are used).

References

Mattioni Maturana, F., Fontana, F. Y., Pogliaghi, S., Passfield, L., & Murias, J. M. (2018). Critical power: How different protocols and models affect its determination. Journal of Science and Medicine in Sport, 21(7), 742-747.

Hugh Morton, R. (1996). A 3-parameter critical power model. Ergonomics, 39(4), 611-619.

Hill, D. W. (1993). The critical power concept. Sports medicine, 16(4), 237-254.

Moritani, T., NAGATA, A., DEVRIES, H. A., & MURO, M. (1981). Critical power as a measure of physical work capacity and anaerobic threshold. Ergonomics, 24(5), 339-350.

Whipp, B. J., Huntsman, D. J., Storer, T. W., Lamarra, N., & Wasserman, K. (1982, January). A constant which determines the duration of tolerance to high-intensity work. In Federation proceedings (Vol. 41, No. 5, pp. 1591-1591). 9650 ROCKVILLE PIKE, BETHESDA, MD 20814-3998: FEDERATION AMER SOC EXP BIOL.

Examples

results <- critical_speed(
 .data = demo_critical_speed,
 distance_column = "Distance",
 time_to_exhaustion_column = "TTE",
 method = c("3-hyp", "2-hyp", "linear", "1/time"),
 plot = TRUE,
 all_combinations = FALSE
)

results
#> # A tibble: 3 × 10
#>   method data             model     CS `CS SEE`  `D'` `D' SEE`    R2  RMSE plot 
#>   <chr>  <list>           <list> <dbl>    <dbl> <dbl>    <dbl> <dbl> <dbl> <lis>
#> 1 2-hyp  <tibble [3 × 3]> <nls>   4.52        0  143.     0.94  1.00  1.43 <gg> 
#> 2 linear <tibble [3 × 3]> <lm>    4.52        0  142.     1     1     0.86 <gg> 
#> 3 1/time <tibble [3 × 3]> <lm>    4.53        0  142.     1.02  1.00  0    <gg>