diff --git a/docs/.~lock.Interactive_Training_Plans.ods# b/docs/.~lock.Interactive_Training_Plans.ods# new file mode 100644 index 0000000..cd5d536 --- /dev/null +++ b/docs/.~lock.Interactive_Training_Plans.ods# @@ -0,0 +1 @@ +,default,sistarte,05.12.2024 19:33,file:///home/default/.config/libreoffice/4; \ No newline at end of file diff --git a/docs/Interactive_Training_Plans.xlsx b/docs/Interactive_Training_Plans.xlsx new file mode 100644 index 0000000..24063c8 Binary files /dev/null and b/docs/Interactive_Training_Plans.xlsx differ diff --git a/docs/README_concept2_predictions.md b/docs/README_concept2_predictions.md index aa8be00..a1db20e 100644 --- a/docs/README_concept2_predictions.md +++ b/docs/README_concept2_predictions.md @@ -33,9 +33,12 @@ From [Stumpy](https://thestumpyrower.wordpress.com/rowing-on-the-concept-2-ergom *s.min-1 is scientific notation for strokes/minute -**%2k (w) is the % of power output, measured in watts of a 2000m test – from this it is possible to calculate pace (time/500m) +**%2k (w) is the % of power output, measured in watts of a 2000m test – from +this it is possible to calculate pace (time/500m) -***HRR% is Heart Rate Reserve %. When resting and maximum heart rates are know it is possible to calculate the heart rate at which one should train to have the most appropriate effect on the body’s systems. +***HRR% is Heart Rate Reserve %. When resting and maximum heart rates are know +it is possible to calculate the heart rate at which one should train to have +the most appropriate effect on the body’s systems. ## Example 1 @@ -52,3 +55,20 @@ UT2 power range is 15% (60% minus 45%) so 132 bmp should be 4 fifths into that 15% = 12% so expected power is 110W/(45%+12%) = 193W + +## Example 2 + +### Take the result of example 1 and a zone and provide a suitable training session. + +Given zone: UT2 is midpoint of range: + 0.5*(45+60) = 52.5% of 192W = 101.3W + +Given zone: AT: + 0.5*(70+80) = 75% of 193W = 144.7W + +### Examples 3 + +### Return a training zone from a [training table](Interactive_Training_Plans.xlsx) Level 5 | 8 sessions | 26 weeks + +Given a level 1-5 and a week number and a session number return the associated +session eg 3x16'UT1 diff --git a/docs/concept2_prediction.py b/docs/concept2_prediction.py index 19aa4b4..c92d988 100644 --- a/docs/concept2_prediction.py +++ b/docs/concept2_prediction.py @@ -4,7 +4,7 @@ def calculate_wattage(resting_heart_rate, maximum_heart_rate, heart_rate, base_p zone = ((heart_rate - resting_heart_rate) / HRR) * 100 return round(zone, 2) - + def get_hrr_range(zone): if zone <= 65: return (0, 65) @@ -42,14 +42,14 @@ def calculate_wattage(resting_heart_rate, maximum_heart_rate, heart_rate, base_p else: print("AN Zone") return (105, 115) - + zone_percentage = get_zone_percentile(heart_rate, resting_heart_rate, maximum_heart_rate) print("Zone: " + str(zone_percentage)) min_power, max_power = get_power_range(zone_percentage) print("Min power: " + str(min_power)) print("Max power: " + str(max_power)) - + min_hrr, max_hrr = get_hrr_range(zone_percentage) print("Min hrr: " + str(min_hrr)) print("Max hrr: " + str(max_hrr)) @@ -60,7 +60,7 @@ def calculate_wattage(resting_heart_rate, maximum_heart_rate, heart_rate, base_p hrr_range = max_hrr - min_hrr print("HRR range: " + str(hrr_range)) print("Zone minus min hrr: " + str(zone_percentage - min_hrr)) - + # Calculate percentage of hrr range hrr_percentage = ((zone_percentage - min_hrr) / hrr_range) print("hrr %: " + str(hrr_percentage)) @@ -72,7 +72,7 @@ def calculate_wattage(resting_heart_rate, maximum_heart_rate, heart_rate, base_p # Add base power output # predicted_power = power_percentage + base_power_output predicted_power = base_power_output / power_percentage - + return round(predicted_power, 0) # Example usage diff --git a/docs/lu8096no9e9.tmp b/docs/lu8096no9e9.tmp new file mode 100644 index 0000000..e69de29 diff --git a/docs/lu8749o4fzi.tmp b/docs/lu8749o4fzi.tmp new file mode 100644 index 0000000..e69de29