From 0f71ee94811d742a6b765504c175ce0b59552413 Mon Sep 17 00:00:00 2001 From: Sander Roosendaal Date: Tue, 27 Jun 2017 04:10:53 +0200 Subject: [PATCH] using upper limit for OTW breakthrough detection --- rowers/dataprep.py | 2 +- rowers/datautils.py | 1 + rowers/forms.py | 2 +- rowers/interactiveplots.py | 2 +- rowers/models.py | 1 + rowers/templates/otwrankings.html | 5 +++-- rowers/utils.py | 4 +++- rowers/views.py | 21 ++++++++++++++------- rowsanda_107501 | Bin 512000 -> 593920 bytes 9 files changed, 25 insertions(+), 13 deletions(-) diff --git a/rowers/dataprep.py b/rowers/dataprep.py index 982733b7..01557032 100644 --- a/rowers/dataprep.py +++ b/rowers/dataprep.py @@ -428,7 +428,7 @@ def save_workout_database(f2,r,dosmooth=True,workouttype='rower', isbreakthrough = False if workouttype == 'water': delta,cpvalues,avgpower = datautils.getsinglecp(row.df) - if utils.isbreakthrough(delta,cpvalues,r.p0,r.p1,r.p2,r.p3): + if utils.isbreakthrough(delta,cpvalues,r.p0,r.p1,r.p2,r.p3,r.cpratio): isbreakthrough = True res = datautils.updatecp(delta,cpvalues,r) diff --git a/rowers/datautils.py b/rowers/datautils.py index 7c1d9136..298280d4 100644 --- a/rowers/datautils.py +++ b/rowers/datautils.py @@ -27,6 +27,7 @@ def updatecp(delta,cpvalues,r): r.p1 = p1[1] r.p2 = p1[2] r.p3 = p1[3] + r.cpratio = res[3] r.save() diff --git a/rowers/forms.py b/rowers/forms.py index 4e57a619..8b1e7622 100644 --- a/rowers/forms.py +++ b/rowers/forms.py @@ -131,7 +131,7 @@ class PredictedPieceForm(forms.Form): ) pieceunit = forms.ChoiceField(required=True,choices=unitchoices, initial='t',label='Unit') - value = forms.IntegerField(initial=10,label='Value') + value = forms.FloatField(initial=10,label='Value') class Meta: fields = ['value','pieceunit'] diff --git a/rowers/interactiveplots.py b/rowers/interactiveplots.py index 7200497e..b1c7bada 100644 --- a/rowers/interactiveplots.py +++ b/rowers/interactiveplots.py @@ -687,7 +687,7 @@ def interactive_otwcpchart(powerdf,promember=0): script, div = components(plot) - return [script,div,p1,message] + return [script,div,p1,ratio,message] def interactive_cpchart(thedistances,thesecs,theavpower, theworkouts,promember=0): diff --git a/rowers/models.py b/rowers/models.py index 6922265f..1c305c70 100644 --- a/rowers/models.py +++ b/rowers/models.py @@ -178,6 +178,7 @@ class Rower(models.Model): p1 = models.FloatField(default=1.0,verbose_name="CP p2") p2 = models.FloatField(default=1.0,verbose_name="CP p3") p3 = models.FloatField(default=1.0,verbose_name="CP p4") + cpratio = models.FloatField(default=1.0,verbose_name="CP fit ratio") otwslack = models.IntegerField(default=0,verbose_name="OTW Power slack") diff --git a/rowers/templates/otwrankings.html b/rowers/templates/otwrankings.html index a78330e4..871d79ff 100644 --- a/rowers/templates/otwrankings.html +++ b/rowers/templates/otwrankings.html @@ -164,14 +164,15 @@ Duration - Power + Power (upper) + Power {% for pred in cpredictions %} {% for key, value in pred.items %} - {% if key == "power" %} + {% if key == "power" or key == "upper" %} {{ value }} W {% endif %} {% if key == "duration" %} diff --git a/rowers/utils.py b/rowers/utils.py index 22c4680f..3fd67d94 100644 --- a/rowers/utils.py +++ b/rowers/utils.py @@ -76,11 +76,13 @@ def geo_distance(lat1,lon1,lat2,lon2): return [distance,bearing] -def isbreakthrough(delta,cpvalues,p0,p1,p2,p3): +def isbreakthrough(delta,cpvalues,p0,p1,p2,p3,ratio): pwr = p0/(1+delta/p2) pwr += p1/(1+delta/p3) + pwr *= ratio + res = np.sum(cpvalues>pwr) return res>1 diff --git a/rowers/views.py b/rowers/views.py index 68781044..bef20278 100644 --- a/rowers/views.py +++ b/rowers/views.py @@ -2955,14 +2955,16 @@ def otwrankings_view(request,theuser=0, script = res[0] div = res[1] p1 = res[2] + ratio = res[3] r.p0 = p1[0] r.p1 = p1[1] r.p2 = p1[2] r.p3 = p1[3] + r.cpratio = ratio r.save() paulslope = 1 paulintercept = 1 - message = res[3] + message = res[4] else: script = '' div = '

No ranking pieces found.

' @@ -2977,18 +2979,20 @@ def otwrankings_view(request,theuser=0, clean = form.is_valid() value = form.cleaned_data['value'] hourvalue,value = divmod(value,60) + hourvalue = int(hourvalue) + minutevalue = int(value) + value = int(60*(value-minutevalue)) if hourvalue >= 24: hourvalue = 23 - rankingdurations.append(datetime.time(minute=value,hour=hourvalue)) + rankingdurations.append(datetime.time(minute=minutevalue, + hour=hourvalue, + second=value)) else: form = PredictedPieceForm() - predictions = [] cpredictions = [] - - for rankingduration in rankingdurations: t = 3600.*rankingduration.hour t += 60.*rankingduration.minute @@ -3000,13 +3004,17 @@ def otwrankings_view(request,theuser=0, pwr = p1[0]/(1+t/p1[2]) pwr += p1[1]/(1+t/p1[3]) + if pwr <= 0: pwr = 50. + if not np.isnan(pwr): + pwr2 = pwr*ratio a = { 'duration':timedeltaconv(t), - 'power':int(pwr)} + 'power':int(pwr), + 'upper':int(pwr2)} cpredictions.append(a) @@ -3017,7 +3025,6 @@ def otwrankings_view(request,theuser=0, {'rankingworkouts':theworkouts, 'interactiveplot':script, 'the_div':div, - 'predictions':predictions, 'cpredictions':cpredictions, 'avgpower':avgpower, 'form':form, diff --git a/rowsanda_107501 b/rowsanda_107501 index c733aeb4ae830f8a27775f42f9acbbd5d90a2827..623c0cb691c450baa63b431f187621f0753c8620 100644 GIT binary patch delta 72886 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 PDH4#qX#5Kxs}=tP_tkUi delta 413 zcmXAj%S%F05Qp!aQIAQ9s7RprfHp-1ffOyGq*dUiO`AZZh$x~zz$k>^Uh7(FUYK3E zh*l9r(B0Igr@eQrrPnHi$kkmn)`9PXGrt*TvXzc(B~lF9-HHN@Qgj&HN9kSkAl4Or zA826%>-cr-x4oc8`kO`NJwL_HX{l99YL*1klEUS8E<(r7FVJ0JZ zvf$cN{$ub_w1_bp%i|8+g+zqfLLw-HYC1PC3v^J%fmp9T&*x>hoB z9oNUHwu$F1C}`8X(4nPhzkq{ODr3-N=gKm8+3+JiMU6&^xI*h8;U&H++}s|e_L>X_ zpbI)64DEl-+|Lsig(cd4l`-;_vEQ64VFp_K`2|kA`B^%Bm4^bJY4J@a$=bqzYM^S^ zRKul%f(iKM35L8?xz_WVsSo=IFgV Gv;6}9dT;Ll