FAQ METRICS - GoldenCheetah/GoldenCheetah GitHub Wiki

METRICS

What is the difference between xPower, NP and Daniels EqP?

They all serve the same purpose -- to express the variable power you have generated over a given period of time as a single value. This is so you can quantify the intensity of the ride and therefore the training stress of the ride.

In practice, NP and xPower are largely the same, whilst Daniels EqP place much higher emphasis on upper intensity work. For more info on xPower see Dr Skiba's paper on BikeScore

What is the difference between CP and FTP?

CP represents the power an athlete can sustain for a very long time, without fatigue, in theory. It is calculated using a model and time to exhaustion tests between 2-3 and 12-15 minutes. Functional Threshold Power (FTP) is an estimate of the power an athlete can sustain for about 60 minutes or a 40km TT. There is no formal model or protocol for establishing it, most people use rules of thumb like FTP is 95% of 20 minute power, or they use the best power from a 40km TT.

In practice, CP and FTP are usually close to each other. But since it is very difficult for an athlete to maintain the desired intensity FTP 'reality' tends to result in a number that is much lower than CP 'theory'. Often users will consider the two as the same.

In GC we compute TSS and BikeScore using your 'CP' value, but from v3.3 you can maintain separate values for CP and FTP in the athlete power zones settings. If you do that, the 'Coggan' metrics will use FTP and not CP to calculate.

If you are running a version prior to v3.3 your CP value will be used to calculate 'Coggan' and all other metrics.

Why does my CP chart show higher watts for a longer duration?

A higher power average for a longer time is possible if an effort has been "book ended". If, for example, you did a massive 30 second effort, followed by freewheeling for 29:30 then another massive 30 second effort, then your best average for a continuous 30 minutes would in fact be lower that your best average for a continuous 30minutes and 30 seconds. (Thanks for Jon Hill from the Golden Cheetah Users mailing list for this example).

Can I set a different CP/FTP for different reasons e.g. CP/FTP on a trainer ?

We allow you to override the CP value for a specific ride by setting the "CP" field to the value you wish to use for the ride in question. If you have deleted the "CP" field in the Activity>Summary>Metric menu, follow these steps to create it (you can follow exactly the same steps for "FTP" field):

  • Go to Tools > Options.
  • Then select Data Fields.
  • Select the Fields pane.
  • Click the plus symbol (down and right).
  • In the new row you have created: -- Double click Screen Tab column and write Metric. -- Double click Field column and write CP. -- Click Type drop down menu and select Double. When you change CP value, always right click on the activity for which you have changed CP value and select Save Changes. Alternatively, you can select Activity>Save Activity from the top menu.

We do not have a concept of 'separate' Cps for different purposes -- you will need to specify the CP when the data is imported into GC. But this allows you to make manual adjustments.

We provide this functionality at user request -- we do not endorse the concept of multiple CP values. But we do recognise the ongoing debate regarding physiological stress from working on a trainer vs on the road.

How do I seed the CTL for my PMC?

You can seed the starting CTL (we call it LTS, for long term stress) when you define a season. That way it is re-usable in a number of places. To do this you edit the season (date range) in the Home View and can set the Starting LTS.

Why is elevation different in GoldenCheetah to my other training software / website?

Different programs will use different hysteresis values to smooth the small changes in altitude. In GC we use a hysteresis value of 3m.

If this is of great concern you can adjust the hysteresis value in preferences under the general tab (minimum value is 0.1m), or create a user metric to fit your preferences.

Some head units don't report altitude for the first few samples, which are stored a zeros and, if you start from a significantly higher altitude point, they can inflate elevation gain, so you may need to review and fix your data in that case.

Why is a metric e.g. TSS or average power different in GoldenCheetah to Garmin Connect?

The algorithms for calculating TSS, AP etc are static. They are implemented exactly the same way in GoldenCheetah, Garmin Connect, TrainingPeaks etc. The algorithms are extremely simple and not prone to difficulty in implementation.

However, how each application treats pauses and stops or loss of data accounts for most differences. In GoldenCheetah we always calculate AP,TSS etc including stop time. Other applications choose to ignore or smooth segments of short duration.

In addition, if there are anomalies in your data, with large gaps or even time going backwards, this will drastically affect GoldenCheetah's calculations.

We NEVER attempt to interpret data anomalies -- if the results are not as you would expect you will need to correct the data. We do not 'silently' fix the data for you. There is no secret sauce in GoldenCheetah, we are open and transparent with your data.

Tools are available to fill missing data by interpolation: Smart Recording checkbox and Threshold in Options/Preferences to enable automatic filling on import and download, and Edit->Fix Gaps... for afterwards processing.

How do I set the metrics shown for intervals in the various summaries?

In the GoldenCheetah preference pane under the Metrics tab you can choose the metrics that will be shown in the ride summary charts and the metrics that will be shown in the interval summary in the analysis sidebar.

How do I add a metric to the details screen (so I can override it) ?

If the metric you want (e.g. TSS) is not shown then you will need to add it via the GoldenCheetah preferences pane. On Mac this is from the menu option GoldenCheetah->Preferences whilst on Windows and Linux it is under Tools->Options.

You will need to select 'Data Fields' option from preferences toolbar and then the 'fields' tab. You will see a list of fields that are associated with a particular screen tab. If you scroll down you should find entries for the 'Metrics' screen tab, you can insert a new entry here with the '+' button. You should make sure the new entry is called exactly the same thing as the metric in question.

For 'TSS' this is relatively straight forward. For others, e.g. 'Average Heart Rate' you must make sure that the name includes spaces etc. Once your metric has been added to the configuration you should save that and return to the details screen where you can now maintain it.

If you are creating a manual entry then there is no 'details' tab in the dialog. Once you have created the entry (and again in this case TSS can be entered in the dialog) you should go to the details tab to maintain any other specific fields. The manual entry dialog is designed to be simple and accept only the most common of entries.

Can you calculate gradient, virtual power or other derived series from the ride data?

We have implemented virtual power, slope and some other derived series from v3.2 and v3.3 includes the ability to define user series in the ride plot. From v3.4 custom metrics can be defined too (based upon all ride data).

Can I export metrics or access the metric database GC uses?

Yes. You can use Export Metrics as .CSV to export the available metrics data for all activities as a .CSV file for external processing.

From v3.3 we also have an API to access almost all data within GC, see the special topic on the Restful API. (https://github.com/GoldenCheetah/GoldenCheetah/wiki/UG_Special-Topics_REST-API-documentation)

Why TSS, IF and NP are not available anymore?

Training Peaks have asked that their trademarks are removed, so starting with v3.5 the 3 metrics in question were renamed:

  • TSS -> BikeStress (its only relevant to Bike rides, not all training)
  • IF -> BikeIntensity (its only relevant to Bike rides)
  • NP -> IsoPower (its relevant to all power)

For backward compatibility the original names still work for existing charts but, for new ones, it is recommended to use the new names or to switch to Skiba's BikeScore, RelativeIntensity and xPower which are similar by design.

Can I use hrTSS or a similar HR based stress metric when my rides don't have power data?

hrTSS is not directly available but there is a HR based metric (TRIMP Zonal Points) which gives similar results and even be customized to your taste using the Trimp k coefficients for each zone in Options/Preferences.

If you want to use a power based stress metric when power data is present, but automatically fallback to HR based stress metric otherwise, you can use TriScore which will use BikeScore when it is greater than zero and TRIMP Zonal Points otherwise.

To use TRIMP Zonal Points as BikeScore/BikeStress approximation, the Trimp k coefficients in Athlete Options > HR Zones > Default can be changed according to Friel's guidelines:

Z1	0.50
Z2	0.92
Z3	1.17
Z4	1.33
Z5	2.00

If you prefer TSS/BikeStress instead of BikeScore, a similar logic can be setup in a total type Custom Metric with this formula:

{
    value { BikeStress ?: TRIMP_Zonal_Points; }
}

Why my Stress metrics (TSS/TriScore/TRIMPS/etc.) are zero?

Stress metrics depend on some measure of intensity (Power, Pace, HR, etc.) and some intensity reference (CP, CV, LTHR, etc.), they can be zero due to the lack of the data required (this can be verified at the Editor tab) or due to the lack of reference settings for the date of the activity, which typically happens when activities older than the first zone range are added (See https://github.com/GoldenCheetah/GoldenCheetah/wiki/UG_Preferences_Athlete_Training-Zones).

Why Peak Speed/Pace metrics/intervals don’t match Average Speed/Pace?

The most common reason are pauses and gaps in recording, which are skipped to compute Average Speed/Pace to match the common practice in devices and user's expectations, but included in Peak Speed/Pace intervals and metrics.

Additionally Peak Speed/Pace metrics/intervals are computed using Speed data series while Average Speed/Pace are computed from Time and Distance data series, so they can be different if the series imported from your device don’t match. This can be fixed using Fix Speed from Distance tool to recreate Speed data series from Time and Distance data series, either from Edit menu or automatically on import.