swim high CTL / TSB

231 views
Skip to first unread message

Mark Henrickson

unread,
Apr 1, 2020, 8:13:42 AM4/1/20
to golden-cheetah-users
I am getting results from a swim with what I think are quite high values for this, despite thinking that i've set my pace correctly. can someone help me sort out what is going on? what can I share here which would make it easy to track down the issue?

thanks!

m.

Ale Martinez (Please don't email or cc me)

unread,
Apr 1, 2020, 8:51:11 AM4/1/20
to golden-cheetah-users
This a recurrent issue, there is a recent thread in this forum and a FAQs section on the wiki you may find useful.

But the first step to solve this is to understand CTL/ATL/etc. are cumulative metrics whose value for a day depends on the history of previous activities, not just the one on that day, so focusing on them is not very helpful, it is far better to look at the underlying training load metric, which is TriScore in this case.

Summarizing:
1) Identify activities with abnormally high TriScore, a filter s.t. TriScore > 500 may help
2) fix the data on those activities, this may help: https://github.com/GoldenCheetah/GoldenCheetah/wiki/FAQ-RUNNING-&-SWIMMING#how-to-fix-runs-and-swims
3) CTL/ATL/TSB will be recomputed automatically, no need to worry about

Holger

unread,
Jun 24, 2020, 2:17:13 PM6/24/20
to golden-cheetah-users
I also get to high values.

I figured out, the "Duration", "Time Recording" and "Distance" are ok. But the "Time Moving" is much too low, mostly round about the half time. So there are too many Speed fields filled with zeros (0).
Filling these Speed fields with a specific value - in my case round about 0.25, take from fields before - corrects the "Time Moving", so it is equal to "Time Recording".
So the other values will change to "normal" values.

But i do not swim the same speed all the time, so replacing the same speed value all over the swim, can't be the solution.
While importing the file there may be be some issues, or the tcx swim files of Polar are corrupt.

An example is in the Attachment.

Thx in advance...

2020-02-11_17-30-21_TrainingLDW10S2k2.tcx
Message has been deleted

Holger

unread,
Jun 24, 2020, 2:36:18 PM6/24/20
to golden-cheetah-users
this was a pool swim - length 25m
i think the speed values starting with 3.7... are the direction changes on the pool wall. Later i have been slower the the direction change speed is about 2.4... . 

the speed values round about 45.5 i have no clue...


Ale Martinez (Please don't email or cc me)

unread,
Jun 24, 2020, 2:56:27 PM6/24/20
to golden-cheetah-users
That file has distance each second, the values for time, distance and HR are imported directly, you can view the in Editor and check in the tcx if you want since it is a text file.

Speed is computed from distance over time, since the distance is not reported regularly you see those strange values.

The first option would be to try to get other file format, may be a fit file, with better distance information.

If these files are the only option, some post import processing will be necessary, some options you can try, in increasing order of complexity:

0) Remove the speed column from Editor
1) Use Edit > Fix Speed from Distance playing with the smoothing parameter
2) Develop a custom data processor to compute average speed per 25m segment, which is what the watch is really measuring.

Holger

unread,
Jul 11, 2020, 12:20:12 PM7/11/20
to golden-cheetah-users
Thanks Ale,

for my Polar Files "Fix Speed from Distance" is a good solution. (Parameter for swims 85, runs 12 and bike 5).

Using
postprocess("Fix Speed from Distance", Sport CONTAINS "Swi")
"filters" away all activities. 

Searching a bit around in git "Fix Speed": https://github.com/GoldenCheetah/GoldenCheetah/blob/6e5fb4217194d4b896e7db680cf8e40f14d11c1c/src/FileIO/FixSpeed.cpp

Tried to postprocess for all swims with following filter
postprocess("Fix Speed", Sport CONTAINS "Swi")

What it does is filtering, but does not postprocess these swims with the smoothing paramter.

I also pressed the Enterkey after entering the command, but nothing happens....

also searched and read some older threads, like:
https://groups.google.com/forum/#!searchin/golden-cheetah-users/postprocess%7Csort:date/golden-cheetah-users/a1nZ7o7Nfmw/aTgbc3HnCQAJ

So i created a new test user and only imported ten swims to have a smaller amount of activities.
Also here nothing is postprocessed...

Changing the filter to 
postprocess("Fix Speed", (isSwim<>0))
did not help, also only filtering to swims is done.

Using the the processor via Edit > Fix Speed from Distance only works when paramater is changed each time i want to use it.
Apply the the processor by hand to a second swim without changing the parameter nothing is done...

Tried with own build from github and with the appimage from 14.06.2020 - Buildnumber 4001 - V3.6-Dev2006 on Ubuntu 20.04.

What am i doing wrong?

Ale Martinez (Please don't email or cc me)

unread,
Jul 11, 2020, 2:12:50 PM7/11/20
to golden-cheetah-users
El sábado, 11 de julio de 2020, 13:20:12 (UTC-3), Holger escribió:
Thanks Ale,

for my Polar Files "Fix Speed from Distance" is a good solution. (Parameter for swims 85, runs 12 and bike 5).

Using
postprocess("Fix Speed from Distance", Sport CONTAINS "Swi")
"filters" away all activities. 

Searching a bit around in git "Fix Speed": https://github.com/GoldenCheetah/GoldenCheetah/blob/6e5fb4217194d4b896e7db680cf8e40f14d11c1c/src/FileIO/FixSpeed.cpp

Yes, the Data Processor name is "Fix Speed", different from the menu name "Fix Speed from Distance" and this may be confusing, I should fix this.

Tried to postprocess for all swims with following filter
postprocess("Fix Speed", Sport CONTAINS "Swi")

What it does is filtering, but does not postprocess these swims with the smoothing paramter.

I also pressed the Enterkey after entering the command, but nothing happens....

also searched and read some older threads, like:
https://groups.google.com/forum/#!searchin/golden-cheetah-users/postprocess%7Csort:date/golden-cheetah-users/a1nZ7o7Nfmw/aTgbc3HnCQAJ

So i created a new test user and only imported ten swims to have a smaller amount of activities.
Also here nothing is postprocessed...

Changing the filter to 
postprocess("Fix Speed", (isSwim<>0))
did not help, also only filtering to swims is done.

Using the the processor via Edit > Fix Speed from Distance only works when paramater is changed each time i want to use it.

The data processor check the computed speed is different from the already present, if they are the same it does nothing. This happens if you run it twice with the same smoothing parameter, or if you run it with smoothing=1 and speed was originally generated in that way. IOW, it doesn't change the file if the change would be trivial.
 
Apply the the processor by hand to a second swim without changing the parameter nothing is done...

Tried with own build from github and with the appimage from 14.06.2020 - Buildnumber 4001 - V3.6-Dev2006 on Ubuntu 20.04.

What am i doing wrong?

When you run a DP automatically (on import or via a filter formula) the parameters used are the ones configured on preferences: https://github.com/GoldenCheetah/GoldenCheetah/wiki/UG_Preferences_Data-Fields#processing

Holger

unread,
Jul 12, 2020, 6:21:51 AM7/12/20
to golden-cheetah-users


On Saturday, July 11, 2020 at 8:12:50 PM UTC+2, Ale Martinez (Please don't email or cc me) wrote:
El sábado, 11 de julio de 2020, 13:20:12 (UTC-3), Holger escribió:
Thanks Ale,

for my Polar Files "Fix Speed from Distance" is a good solution. (Parameter for swims 85, runs 12 and bike 5).

Using
postprocess("Fix Speed from Distance", Sport CONTAINS "Swi")
"filters" away all activities. 

Searching a bit around in git "Fix Speed": https://github.com/GoldenCheetah/GoldenCheetah/blob/6e5fb4217194d4b896e7db680cf8e40f14d11c1c/src/FileIO/FixSpeed.cpp

Yes, the Data Processor name is "Fix Speed", different from the menu name "Fix Speed from Distance" and this may be confusing, I should fix this.

Tried to postprocess for all swims with following filter
postprocess("Fix Speed", Sport CONTAINS "Swi")

What it does is filtering, but does not postprocess these swims with the smoothing paramter.

I also pressed the Enterkey after entering the command, but nothing happens....

also searched and read some older threads, like:
https://groups.google.com/forum/#!searchin/golden-cheetah-users/postprocess%7Csort:date/golden-cheetah-users/a1nZ7o7Nfmw/aTgbc3HnCQAJ

So i created a new test user and only imported ten swims to have a smaller amount of activities.
Also here nothing is postprocessed...

Changing the filter to 
postprocess("Fix Speed", (isSwim<>0))
did not help, also only filtering to swims is done.

Using the the processor via Edit > Fix Speed from Distance only works when paramater is changed each time i want to use it.

The data processor check the computed speed is different from the already present, if they are the same it does nothing. This happens if you run it twice with the same smoothing parameter, or if you run it with smoothing=1 and speed was originally generated in that way. IOW, it doesn't change the file if the change would be trivial.

My fault...
This happens while postprocessing: example
One Activity is selected and it's showing the Summary window.
I go to: Tools -> Options -> Data Fields -> Processing -> Fix Distance from Speed -> Moving Average Seconds -> Change to 85 -> Save
Now using postprocess-command, only the selected Activity is changed (processed).

While doing this, the "postprocess-filter" was still active. If i change to a "normal" filter like Bike, it works on the other selected activity like it is planned.
So i assume if you have the postprocess command in the filter area, the Edit -> Fix Speed - Method will not work.
You have to change the filter to a normal filter or use no filter.
 
 
Apply the the processor by hand to a second swim without changing the parameter nothing is done...

Tried with own build from github and with the appimage from 14.06.2020 - Buildnumber 4001 - V3.6-Dev2006 on Ubuntu 20.04.

What am i doing wrong?

When you run a DP automatically (on import or via a filter formula) the parameters used are the ones configured on preferences: https://github.com/GoldenCheetah/GoldenCheetah/wiki/UG_Preferences_Data-Fields#processing

So i need to import all swims first with parameter 85, then change parameter to 12 for importing runs and afterwards to 5 for importing bike activities.
That means if have the filter activities before importing and set parameter of Fix Speed before importing.

Tried bit around with postprocess filters, has to work anyhow ...

postprocessing of more than one activity with works for me now, when i do it in the following other:
1. pre filter with normal (predefined) filter for swim, bike, run
2. change "Fix Speed from Distance" paramater in Options Dialog (85 for swim, 5 for bike, 12 for run - these values i use mostly for Polar TCX-Files)
3. apply postprocess-filter: postprocess("Fix Speed", Sport CONTAINS "Swi") , postprocess("Fix Speed", Sport CONTAINS "Bik") , postprocess("Fix Speed", Sport CONTAINS "Run") 
4. Athlete -> save all modified activities (while postprocess-filter is still active / is still in filter field)



Holger

unread,
Aug 28, 2021, 4:03:26 PM8/28/21
to golden-cheetah-users

Created new Tile in Overview with the following formulae:
(Duration*60)/(Distance_Swim/100)/60
Start: 210,00
Stop: 105,00
Check Time
Units: mm:ss/100m

This the swim pace, which is nearly the same as in Polar Flow.

Using this SwimPace in amount of Seconds for correcting "Edit->Fix Distance from Speed -> Moving Average Seconds" Time moving is changed to Time of Duration and the Original Swim Pace Tile is filed with the correct value.

For example: new Tile shows 2:30 -> use 60+60+30=150 Seconds for Value in "Moving Average Seconds"

Hope it will help you :)

Reply all
Reply to author
Forward
0 new messages