thomaschampagne/elevate

[Desktop][Feat] Add stress scores to keep form equal and below overload

Opened this issue · 0 comments

Is your feature request related to a problem? Please describe.
I want to know day by day what my stress score should be to keep my form steady or the maximum before I go into overload. I can then look at the stress scores of previous activities to see how hard of a ride/swim/run/... I can do.

The formula for the stress score to keep your form equal is:
(Form(Day) - Fitness(Day-1) * e^(-1/42) + Fatigue(Day-1) * e^(-1/7)) / (e^(-1/7) - e^(-1/42) )

The formula for the maximum stress score before overload is:
(-30 - Fitness(Day-1) * e^(-1/42) + Fatigue(Day-1) * e^(-1/7)) / (e^(-1/7) - e^(-1/42) )

Note that the max stress score can be negative if you are already in overload, and you would not have fully recovered into the optimal zone by the next day.

Describe the solution you'd like
I have already implemented this in a local version, it looks like this (top right corner):

image

So in this scenario to keep my form at -35 I need to do an activity with stress score 80. If I want to make sure that I'm in the optimal zone tomorrow, my activity cant have a stress score higher than 35.3.

Describe alternatives you've considered
These metrics can be placed wherever, like in the popup box if you hover over the graph.

It's also possible to take into account the already performed activity (in case you are doing multiple activities in one day):
equal: (Form(Day) - Fitness(Day) + Fatigue(Day)) / (e^(-1/7) - e^(-1/42) )
max: (-30 - Fitness(Day) + Fatigue(Day)) / (e^(-1/7) - e^(-1/42) )