diff --git a/rowers/dataprep.py b/rowers/dataprep.py index 76572c25..fb58aee3 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -1521,7 +1521,10 @@ def save_workout_database(f2, r, dosmooth=True, workouttype='rower', cntr = Workout.objects.filter(user=r, workouttype__in=otwtypes, startdatetime__gt=tz.now()-tz.timedelta(days=42), duplicate=False).count() - new_value = (cntr*r.running_wps_erg + row.df['driveenergy'].mean())/(cntr+1.0) + try: + new_value = (cntr*r.running_wps_erg + row.df['driveenergy'].mean())/(cntr+1.0) + except TypeError: + new_value = r.running_wps if not (math.isnan(new_value) or math.isinf(new_value) or new_value == 0): r.running_wps = new_value elif not (math.isnan(r.running_wps) or math.isinf(r.running_wps) or r.running_wps == 0): diff --git a/rowers/tests/testdata/testdata.tcx.gz b/rowers/tests/testdata/testdata.tcx.gz index 4b65b85a..1e672f9b 100644 Binary files a/rowers/tests/testdata/testdata.tcx.gz and b/rowers/tests/testdata/testdata.tcx.gz differ diff --git a/rowers/utils.py b/rowers/utils.py index f6aa06bd..8a2ed490 100644 --- a/rowers/utils.py +++ b/rowers/utils.py @@ -833,6 +833,7 @@ def step_to_time_dist(step, avgspeed=3.2, ftp=200, ftspm=25, ftv=3.7, powerzones avgpower = targetpower if valuelow != 0 and valuehigh != 0: # pragma: no cover avgpower = (valuelow+valuehigh)/2. + targetpower = ftp*0.6 if avgpower < 10 and avgpower > 0: targetpower = ftp*0.6 elif avgpower > 10 and avgpower < 1000: