Private
Public Access
1
0

Merge branch 'release/v14.58'

This commit is contained in:
Sander Roosendaal
2020-11-24 20:31:53 +01:00
2 changed files with 38 additions and 18 deletions

View File

@@ -1594,20 +1594,35 @@ def fitnessfit_chart(workouts,user,workoutmode='water',startdate=None,
dates.append(datetime.datetime.combine(w.date,datetime.datetime.min.time()))
testpower.append(powertest)
fatigues.append(np.nan)
fitnesses.append(np.nan)
# create Fitness and Fatigue number
fatigue = 0
fitness = 0
previousworkouts = Workout.objects.filter(user=user.rower,date__lte=w.date,
date__gte=startdate)
for ww in previousworkouts:
delta = (w.date-ww.date).days
weight = getattr(ww,metricchoice)
fatigue += weight*math.exp(-delta/kfatigue)
fitness += weight*math.exp(-delta/kfitness)
fatigues.append(fatigue)
fitnesses.append(fitness)
allworkouts = Workout.objects.filter(user=user.rower,date__lte=enddate,
date__gte=startdate,
duplicate=False,
)
for w in allworkouts:
# create Fitness and Fatigue number
fatigue = 0
fitness = 0
previousworkouts = Workout.objects.filter(user=user.rower,date__lte=w.date,
date__gte=startdate,
duplicate=False)
for ww in previousworkouts:
delta = (w.date-ww.date).days
weight = getattr(ww,metricchoice)
fatigue += weight*math.exp(-delta/kfatigue)
fitness += weight*math.exp(-delta/kfitness)
fatigues.append(fatigue)
fitnesses.append(fitness)
testpower.append(np.nan)
dates.append(
datetime.datetime.combine(
w.date,datetime.datetime.min.time())
)
@@ -1623,16 +1638,19 @@ def fitnessfit_chart(workouts,user,workoutmode='water',startdate=None,
df['form'] = df['fitness']-df['fatigue']
df.sort_values(['date'],inplace=True)
#df = df.fillna(0)
df = df.groupby(['date']).max()
df['date'] = df.index.values
df['testdup'] = df['testpower'].shift(1)
df['testpower'] = df.apply(lambda x: np.nan if abs(x['testpower'] - x['testdup']) < 4 \
else x['testpower'],axis=1)
#df = df.fillna(-100)
#print(df)
source = ColumnDataSource(
data = dict(

View File

@@ -1581,10 +1581,12 @@ def fitness_from_cp_view(request,userid=0,mode='rower',
workouts = Workout.objects.filter(user=therower,date__gte=startdate,
date__lte=enddate,
workouttype__in=mytypes.otwtypes)
workouttype__in=mytypes.otwtypes,
duplicate=False)
if mode == 'rower':
workouts = Workout.objects.filter(user=therower,date__gte=startdate,
date__lte=enddate,workouttype__in=mytypes.otetypes)
date__lte=enddate,workouttype__in=mytypes.otetypes,
duplicate=False)