This discussion has been locked.
You can no longer post new replies to this discussion. If you have a question you can start a new discussion

Calcolo velocità in file .tcx Speed calculation in .tcx file

Former Member
Former Member

Analizzando i valori registrati nei files tcx, non capisco come viene calcolata la velocità. Prendendo due punti successivi, calcolo la distanza percorsa e divido per il tempo impiegato: non ottengo il valore registrato nel file. Non è neppure la velocità media del Lap fino a quel punto. Come viene calcolata?

Analyzing the values recorded in the tcx files, I don't understand how the speed is calculated. Taking two successive points, I calculate the distance traveled and divide by the time taken: I don't get the value recorded in the file. It's not even the average lap speed up to that point. How is it calculated?

  • How is it calculated?

    Depends on the Activity, and the device. For example at the Treadmill activity, the speed is derived from the cadence. And some devices, like the Edge may have speed sensors. I do not know how it is calculated at the standard Run Activity though - you are right that it does not seem to match the speed calculated from the two closests nodes (only very approximatively). I only know that the speed is in meters per second - that's described in the definition file at https://www8.garmin.com/xmlschemas/TrackPointExtensionv2.xsd 

    It could be perhaps the immediate speed reported by the GPS chip, but that would assume it samples the position with higher rate than the recording rate. I do not know whether it is true. I was thinking about an estimate from the accelerometer, but you cannot estimate the speed without gyroscope data with the accelerometer alone, in 3D space. And my Instinct does not have gyro.

    <xsd:element name="speed" type="MetersPerSecond_t" minOccurs="0"/>
    <xsd:simpleType name="MetersPerSecond_t">
    <xsd:annotation>
    <xsd:documentation> This type contains a speed measured in meters per second. </xsd:documentation>
    </xsd:annotation>
    <xsd:restriction base="xsd:double"/>
    </xsd:simpleType>