Banner

SportTracks 3.0 - plugin: Calculated Fields

SportTracks 3.0 - plugin: Calculated Fields

1
SportTracks 3.0 - plugin: Calculated Fields

Frisch aus der Presse, ein vollkommen neuartiges Plugin, das die "benutzerdefinierten Felder" bei STs 3.0 anspricht. Man kanns schlecht erklären, da es bisher einzigartig ist. Man kann damit eigene Formeln nutzen und die wildesten Berechnungen ausführen und die Ergebnisse dann in Listen oder charts darstellen.

Die Sache ist recht ungewöhnlich, aber genau deshalb sicher für so einige hier interessant.

Das plugin ist donationware (also freiwillig) und "open source".


Infos & download: SportTracks : Calculated Fields

weitere Infos: calculatedfields - Project Hosting on Google Code

Diskussion im STs Forum & Formel Beispiele: View topic - Calculated Fields plugin: Formulas pool


gruss hennes

2
Hi Hennes,

danke für den Tipp. Dat ist ein klasse Tool :daumen: , mit dem man sich diverse Variablen und Ergänzungen selbst definieren kann. So habe ich mir jetzt z.B., da ich öfter den Laufsensor parallel zum GPS des Fr im Einsatz habe, Felder und Auswertungen für die Schrittweite und Schrittfrequenz definiert. Die Schrittweite wurde bisher von ST nicht ausgerechnet, und die Kadenz musste man immer in Gedanken mit zwei multiplizieren, um die Schrittweite zu haben. Ich bastle zur Zeit ein wenig an der Lauftechnik, und habe unter anderem die übersichtliche Darstellung und Historie der Schrittweite und Schrittfrequenz in ST vermisst.

Auch andere neue Funktionalitäten, wie der Einsatz von "RollingsSumms" (zum Beispiel die Anzeige der Gesamt-KM der letzten 30 Tage usw.) und spezielle Berechnungen, wie die des negativen/positiven Splits für ein Rennen, sind jetzt möglich und in Grafiken und Tabellen darstellbar. Ich kann nur jedem empfehlen, der bestimmte Felder oder Funktionen vermisst, sich das Tool näher anzuschauen.


Grüße aus Kiel, Kuki :hallo:
Hardware: 50 Jahre alt / 191 cm / 85 kg +-3 kg- - PBs: 10 KM 46:53 (2011) / HM 1:48:05 (2011) / M 3:58:38 (2012)

Bild
___
Bild

3
Kuki hat geschrieben:Hi Hennes,

danke für den Tipp. Dat ist ein klasse Tool :daumen: , mit dem man sich diverse Variablen und Ergänzungen selbst definieren kann. So habe ich mir jetzt z.B., da ich öfter den Laufsensor parallel zum GPS des Fr im Einsatz habe, Felder und Auswertungen für die Schrittweite und Schrittfrequenz definiert. Die Schrittweite wurde bisher von ST nicht ausgerechnet, und die Kadenz musste man immer in Gedanken mit zwei multiplizieren, um die Schrittweite zu haben. Ich bastle zur Zeit ein wenig an der Lauftechnik, und habe unter anderem die übersichtliche Darstellung und Historie der Schrittweite und Schrittfrequenz in ST vermisst.

Auch andere neue Funktionalitäten, wie der Einsatz von "RollingsSumms" (zum Beispiel die Anzeige der Gesamt-KM der letzten 30 Tage usw.) und spezielle Berechnungen, wie die des negativen/positiven Splits für ein Rennen, sind jetzt möglich und in Grafiken und Tabellen darstellbar. Ich kann nur jedem empfehlen, der bestimmte Felder oder Funktionen vermisst, sich das Tool näher anzuschauen.


Grüße aus Kiel, Kuki :hallo:
Na endlich hat mal einer das Teil entdeckt - ja, es ist einfach genial und wird fast im Stundentakt weiter entwickelt.

"ist fast wie STs 4.0" :daumen:


gruss hennes

4
kann mich nur anschließen, Calculated Fields eröffnet endlich einmal die Möglichkeit ALLES mit den Daten zu analysieren.
Ich habe mir aus der aktuellen Version mal die Berechnung der VDOT angesehen. Bei mir berechnet der bei 10km und 51:50 min einen VDOT von 42.4.. das halte ich für arg daneben.. Laut Daniels wären es nicht einmal 40..
Habt Ihr eine Idee was an der Formel nicht stimmt? Habe leider gerade kein ST zur Hand um die hier mal zu posten..
"Schwitzen ist, wenn Muskeln lachen" (Horst Evers)

"Bestzeiten":
10km am 11.09.2010 50:50
HM am 24.10.2010 1:52:10

DropBox

5
klemmi86 hat geschrieben:kann mich nur anschließen, Calculated Fields eröffnet endlich einmal die Möglichkeit ALLES mit den Daten zu analysieren.
Ich habe mir aus der aktuellen Version mal die Berechnung der VDOT angesehen. Bei mir berechnet der bei 10km und 51:50 min einen VDOT von 42.4.. das halte ich für arg daneben.. Laut Daniels wären es nicht einmal 40..
Habt Ihr eine Idee was an der Formel nicht stimmt? Habe leider gerade kein ST zur Hand um die hier mal zu posten..
Zu dem Thema gabs/gibts im STs Forum ja auch ne Menge Diskussion - schon mal geguckt?

View topic - Calculated Fields plugin: Formulas pool


gruss hennes

6
klemmi86 hat geschrieben:kann mich nur anschließen, Calculated Fields eröffnet endlich einmal die Möglichkeit ALLES mit den Daten zu analysieren.
Ich habe mir aus der aktuellen Version mal die Berechnung der VDOT angesehen. Bei mir berechnet der bei 10km und 51:50 min einen VDOT von 42.4.. das halte ich für arg daneben.. Laut Daniels wären es nicht einmal 40..
Habt Ihr eine Idee was an der Formel nicht stimmt? Habe leider gerade kein ST zur Hand um die hier mal zu posten..
Stimmt. Ich bin auch fast vom Stuhl gefallen. Die Formel berechnet die gesamte Trainingseinheit einschließlich Warmlaufen, Abkühlen, Pausen bei Intervalls usw. Ersetze mal DISTANCE jeweils durch ACTIVEDISTANCE und TIME jeweils durch ACTIVETIME und schau, ob Dir die Werte dann besser gefallen. Bei mir war es jedenfalls so.

7
aghamemnun hat geschrieben:Ersetze mal DISTANCE jeweils durch ACTIVEDISTANCE und TIME jeweils durch ACTIVETIME und schau, ob Dir die Werte dann besser gefallen. Bei mir war es jedenfalls so.
:peinlich: Vergeßt bloß mein dummes Geschwätz von vorhin! Für eine Trainingseinheit über 5000 m in 19:47 hat mir die Formel eine VDOT von sagenhaften 59,7 ausgespuckt. Ein Blick in die Running Formula hat mich dann unsanft auf den Boden der Tatsachen zurückgestoßen...

Es muß also woanders haken. Wie geht denn eigentlich die Berechnungsformel?

8
Hennes hat geschrieben:Zu dem Thema gabs/gibts im STs Forum ja auch ne Menge Diskussion - schon mal geguckt?

View topic - Calculated Fields plugin: Formulas pool


gruss hennes
genau daher habe ich ja die Idee mit der vorgegebenen Formel. Leider ist diese bei weiten zu hoch! Ich habe die Formel mal in Excel zusammengestellt, wie sie auch in den "Daniel's Tables" verwendet wird:
http://dl.dropbox.com/u/10352327/vdot1.PNG

Probiere mal, wie ich das in ST bekomme..
"Schwitzen ist, wenn Muskeln lachen" (Horst Evers)

"Bestzeiten":
10km am 11.09.2010 50:50
HM am 24.10.2010 1:52:10

DropBox

10
Hennes hat geschrieben:Vergleich mal Deine Formel hiermit
http://students.mimuw.edu.pl/~js248396/ ... -9f-00.xls

gruss hennes
Hi Hennes,

habe meine Formel genau von dort.. In Excel funktioniert die auch wunderbar. Liegt aber daran, dass Excel die Umrechnung von hh:mm:ss in decimal selber erledigt. Für 0:50:56 wären das nämlich 0,0353703703703704. Ich habe nun ein Problem, dass ST das Zeitformat nicht in Decimal angibt.. wenn ich das hinbekommen habe sollte die Formel passen.
"Schwitzen ist, wenn Muskeln lachen" (Horst Evers)

"Bestzeiten":
10km am 11.09.2010 50:50
HM am 24.10.2010 1:52:10

DropBox

11
klemmi86 hat geschrieben:Hi Hennes,

habe meine Formel genau von dort.. In Excel funktioniert die auch wunderbar. Liegt aber daran, dass Excel die Umrechnung von hh:mm:ss in decimal selber erledigt. Für 0:50:56 wären das nämlich 0,0353703703703704. Ich habe nun ein Problem, dass ST das Zeitformat nicht in Decimal angibt.. wenn ich das hinbekommen habe sollte die Formel passen.
schreib das doch mal in den "pool" thread - da gibts ne Menge schlaue Leute die da helfen werden.

gruss hennes

12
Hennes hat geschrieben:schreib das doch mal in den "pool" thread - da gibts ne Menge schlaue Leute die da helfen werden.

gruss hennes
Bin ganz zuversichtlich, dass ich das gleich hinbekomme. Ansonsten werde ich es dort mal posten.

Grüße
"Schwitzen ist, wenn Muskeln lachen" (Horst Evers)

"Bestzeiten":
10km am 11.09.2010 50:50
HM am 24.10.2010 1:52:10

DropBox

13
klemmi86 hat geschrieben:Bin ganz zuversichtlich, dass ich das gleich hinbekomme. Ansonsten werde ich es dort mal posten.

Grüße
immer ganz gut, wenn man als Vorgabe das Ergebnis schon kennt :D :daumen:

gruss hennes

14
Hallo,

habe das auch schon im forum bei sport tracks reingeschrieben, ich kalkuliere Vdot oder V02 in ml/kg/min nicht pro Lauf, sondern ich möchte ja meine VO2max wissen, daher habe ich den Cooper/Balke test genommen:

Mit folgender Formel die größte Distanz in 12/15 minuten für jeden Lauf finden:

Feldname: Cooper
{MAXPEAKTIME(Distance,720)}
Feldname: Balke
{MAXPEAKTIME(Distance,900)}

Dann Suche ich das beste Resultat des letzten Jahres (oder was ihr auch immer nehmen wollt) und berechne nach Cooper/Balke die VO2 in ml/kg/min. Die u.a. Formel liefert nicht den Wert dieses Laufes, sondern die VO2max der letzten 356 Tage!

Cooper:
Feldname: VO2max
({Cooper(Max,356)}- 504.9) / 44.73

Balke:
Feldname: VO2max
(-4.60 + 0.182258 * ({Balke(Max,356)}/15) + 0.000104 * Math.Pow(({Balke(Max,356)}/15), 2)) / (0.8 + 0.1894393 * Math.Exp(-0.012778 * ({Balke(Max,356)}/15)) + 0.2989558 * Math.Exp(-0.1932605 * ({Balke(Max,356)}/15)))


Beide Möglichkeiten die VO2max zu berechnen geben recht ähnliche Resultate, ist glaub' ich ne Glaubensfrage. Wer sich nicht entscheiden kann:

Feldname: VO2max
(((-4.60 + 0.182258 * ({Balke(Max,356)}/15) + 0.000104 * Math.Pow(({Balke(Max,356)}/15), 2)) / (0.8 + 0.1894393 * Math.Exp(-0.012778 * ({Balke(Max,356)}/15)) + 0.2989558 * Math.Exp(-0.1932605 * ({Balke(Max,356)}/15))))+(({Cooper(Max,356)}- 504.9) / 44.73))/2

;)


Damit kann ich dann zum Beispiel die Kalorien für jeden Lauf unter Berücksichtigung von VO2max und durchschnittlicher Herzfrequenz berechnen:

Männer:
({TIME}/60)*((-59.3954 + (-36.3781 + 0.271 * {ATHLETEAGE} + 0.394 * {ATHLETEWEIGHT} + 0.404 * {V02max} + 0.634 * {AVGHR}))/4.184)

Frauen:
({TIME}/60)*((-59.3954 + (0.274 * {ATHLETEAGE} + 0.103 * {ATHLETEWEIGHT} + 0.380 * {V02max} + 0.450 * {AVGHR})) / 4.184)


Das ganze gibt recht gute Resultate.

%VO2max des Laufes:

mit der Cooper Formel:
(100*((((12/({ACTIVEAVGPACE}/60))*1000)-504.9)/44.73))/{V02max}

mit der Balke Formel:
(100*((-4.60 + 0.182258 * (1000/({ACTIVEAVGPACE}/60)) + 0.000104 * Math.Pow((1000/({ACTIVEAVGPACE}/60)), 2)) / (0.8 + 0.1894393 * Math.Exp(-0.012778 * (1000/({ACTIVEAVGPACE}/60))) + 0.2989558 * Math.Exp(-0.1932605 * (1000/({ACTIVEAVGPACE}/60))))))/{V02max}

Grüße,

Andre

15
Ehe ich es vergessen, auch hier noch mal der Hinweis dass man die "custom fields" auch mit dem plugin: "find the best" von Vonni auswerten kann: SportTracks : Find The Best

Man muss diese Felder allerdings erst in den settings aktivieren - sonst wirds zu unübersichtlich.

gruss hennes

16
Hennes hat geschrieben:immer ganz gut, wenn man als Vorgabe das Ergebnis schon kennt :D :daumen:

gruss hennes
Das hilft ungemein! Mein Problem war aber eher, dass ich auf die Schnelle nicht mit der Decimalumrechnung von c# klarkam..

Habe es nun hinbekommen:
1. Ein Virtuelles Feld anlegen (VDOT2.PNG)
2. Ein benutzerdefiniertes Feld für den VDOT-Wert anlegen (VDOT3.PNG)
3. Die Formel eintragen (VDOT4.PNG)

Da die Formel etwas länger ist, habe ich sie hier nochmal reinkopiert:
(-4.60 + 0.182258 * ({DISTANCE}/{TODEC}/1440) + 0.000104 * Math.Pow({DISTANCE}/{TODEC}/1440, 2)) / (0.8 + 0.1894393 * Math.Exp(-0.012778 * {TODEC}*1440) + 0.2989558 * Math.Exp(-0.1932605 * {TODEC}*1440))
"Schwitzen ist, wenn Muskeln lachen" (Horst Evers)

"Bestzeiten":
10km am 11.09.2010 50:50
HM am 24.10.2010 1:52:10

DropBox
Dateianhänge
VDOT4.PNG VDOT4.PNG 496 mal betrachtet 36.17 KiB
VDOT3.PNG VDOT3.PNG 466 mal betrachtet 13.08 KiB
VDOT2.PNG VDOT2.PNG 485 mal betrachtet 42.36 KiB

17
Bevor ich es vergesse:

natürlich kann man statt
{TIME} auch {ACTIVETIME} und statt
{DISTANCE} auch {ACTIVEDISTANCE} nehmen

Allerdings würde das wohl auch ein wenig gegen Daniel's Auffassung von der VDOT sprechen.
"Schwitzen ist, wenn Muskeln lachen" (Horst Evers)

"Bestzeiten":
10km am 11.09.2010 50:50
HM am 24.10.2010 1:52:10

DropBox

18
Noch mal die VO2 Formeln zusammengefasst und noch ein paar weitere, die ich gefunden habe:

Daniels and Gilbert zur Benutzung mit Balke Test:
VO2 Max=(-4.60 + 0.182258 * velocity + 0.000104 * velocity^2)/(0.8 + 0.1894393 * e^(-0.012778 * time) + 0.2989558 * e^(-0.1932605 * time))
[where velocity is in metres per minute; and time in minutes]

Frank Horwill zur Benutzung mit Balke Test:
VO2 = 0.172 x (metres/15 - 133) + 33.3

Bruno Balke zur Benutzung mit Balke Test:
VO2 = 6.5 + 5 x laps covered.

Cooper zur Benutzung mit Cooper Test:
VO2 max = (Distance in metres - 504.9) / 44.73

Alle diese Formeln sind zur Bestimmung der VO2max anhand des Balke oder Cooper testes. Diese Formeln sind nicht dafür gedacht die Vdot oder %VO2max eines Laufes zu berechnen! Daher werden die Ergebnisse bei dieser Zweckentfremdung nie ganz stimmen.

19
Xiaoan hat geschrieben:Hallo,

habe das auch schon im forum bei sport tracks reingeschrieben, ich kalkuliere Vdot oder V02 in ml/kg/min nicht pro Lauf, sondern ich möchte ja meine VO2max wissen, daher habe ich den Cooper/Balke test genommen:

Mit folgender Formel die größte Distanz in 12/15 minuten für jeden Lauf finden:

Feldname: Cooper
{MAXPEAKTIME(Distance,720)}
Feldname: Balke
{MAXPEAKTIME(Distance,900)}

Dann Suche ich das beste Resultat des letzten Jahres (oder was ihr auch immer nehmen wollt) und berechne nach Cooper/Balke die VO2 in ml/kg/min. Die u.a. Formel liefert nicht den Wert dieses Laufes, sondern die VO2max der letzten 356 Tage!

Cooper:
Feldname: VO2max
({Cooper(Max,356)}- 504.9) / 44.73

Balke:
Feldname: VO2max
(-4.60 + 0.182258 * ({Balke(Max,356)}/15) + 0.000104 * Math.Pow(({Balke(Max,356)}/15), 2)) / (0.8 + 0.1894393 * Math.Exp(-0.012778 * ({Balke(Max,356)}/15)) + 0.2989558 * Math.Exp(-0.1932605 * ({Balke(Max,356)}/15)))


Beide Möglichkeiten die VO2max zu berechnen geben recht ähnliche Resultate, ist glaub' ich ne Glaubensfrage. Wer sich nicht entscheiden kann:

Feldname: VO2max
(((-4.60 + 0.182258 * ({Balke(Max,356)}/15) + 0.000104 * Math.Pow(({Balke(Max,356)}/15), 2)) / (0.8 + 0.1894393 * Math.Exp(-0.012778 * ({Balke(Max,356)}/15)) + 0.2989558 * Math.Exp(-0.1932605 * ({Balke(Max,356)}/15))))+(({Cooper(Max,356)}- 504.9) / 44.73))/2

;)


Damit kann ich dann zum Beispiel die Kalorien für jeden Lauf unter Berücksichtigung von VO2max und durchschnittlicher Herzfrequenz berechnen:

Männer:
({TIME}/60)*((-59.3954 + (-36.3781 + 0.271 * {ATHLETEAGE} + 0.394 * {ATHLETEWEIGHT} + 0.404 * {V02max} + 0.634 * {AVGHR}))/4.184)

Frauen:
({TIME}/60)*((-59.3954 + (0.274 * {ATHLETEAGE} + 0.103 * {ATHLETEWEIGHT} + 0.380 * {V02max} + 0.450 * {AVGHR})) / 4.184)


Das ganze gibt recht gute Resultate.

%VO2max des Laufes:

mit der Cooper Formel:
(100*((((12/({ACTIVEAVGPACE}/60))*1000)-504.9)/44.73))/{V02max}

mit der Balke Formel:
(100*((-4.60 + 0.182258 * (1000/({ACTIVEAVGPACE}/60)) + 0.000104 * Math.Pow((1000/({ACTIVEAVGPACE}/60)), 2)) / (0.8 + 0.1894393 * Math.Exp(-0.012778 * (1000/({ACTIVEAVGPACE}/60))) + 0.2989558 * Math.Exp(-0.1932605 * (1000/({ACTIVEAVGPACE}/60))))))/{V02max}

Grüße,

Andre
Da hat sich ein kleiner Fehler in die VO2max Formel nach Balke eingeschlichen. Ist mir gerade aufgefallen, als ich nochmal die Formel Sammlung durchgelesen habe. Richtig ist folgende Formel für VO2max für den Balke Test nach Daniels und Gilbert:

(-4.60 + 0.182258 * ({Balke(Max,356)}/15) + 0.000104 * Math.Pow(({Balke(Max,356)}/15), 2)) / (0.8 + 0.1894393 * Math.Pow(2.71828, (-0.012778 * 15)) + 0.2989558 * Math.Pow(2.71828, (-0.1932605 * 15)))

oder in kurz:

(-4.60 + 0.182258 * ({Balke(Max,356)}/15) + 0.000104 * Math.Pow(({Balke(Max,356)}/15), 2)) / 0.972864649682536

Die Formel, die ich benutzt habe ist für Vdot des Laufes, nicht für die VO2max.

Grüße,

Andre

20
Noch ein kleiner Fehler:

Bei der Formel für die Kalorien habe ich 0 und O verwechselt in VO2max, also falls die Formel nicht funktioniert.....bitte anpassen
Gesperrt

Zurück zu „Foren-Archiv“