- Vous êtes ici :
- Accueil
- Forum
- VO2 CYCLING
- ENTRAINEMENT
- Golden Cheetah
Recherche Kunena
Golden Cheetah
- cyclo13
- Hors Ligne
- Membre platinium
- Messages : 2270
- Remerciements reçus 373
petit souci avec golden cheetah,travail de la force max , quand je suis sur "sortie" les pics de puissance ne dépasse pas les 200w alors que dans la colonne a gauche il sont tous a 650 w ,où est le problème ,1° fois que cela se produit,en fait je veux savoir le couple ,mais ça fausse tout
merci
Connexion ou Créer un compte pour participer à la conversation.
- cyclo13
- Hors Ligne
- Membre platinium
- Messages : 2270
- Remerciements reçus 373
simple curiosités a quoi serve température de base m et temp centrale
pour ça tourne autour de 38°.
Connexion ou Créer un compte pour participer à la conversation.
- gillesF78
- Hors Ligne
- Membre platinium
- Messages : 7017
- Remerciements reçus 1805
Excellente question ! Des copains grimpeurs m'ont déjà posé la question.
Alors, c'est une température calculée à partir des donnée de fréquence cardiaque qui approxime la température interne que le corps aurait s'il faisait un exercice d'endurance avec cette FC.
Le modèle de calcul a été établi à partir de 17 militaires qui pratiquaient un entrainement militaire de 24h... Pendant leur entrainement, la température de l'air était de 24 à 36 °C, et l'humidité relative de 42% à 97%. La température corporelle des bidasses était de 36.0 à 40.0°C...
Les chercheurs prétendent que leur modèle est suffisamment précis pour estimer les contraintes thermiques auxquelles les corps humain est soumis pendant l'exercice.
Le modèle est en attente d'un brevet demandé par le Research Institute of Environmental Medicine de l'armée américaine, et les développeurs de GC ont reçu l'autorisation de l'utiliser dans le logiciel.
L'algorithme est disponible sous forme de fonction matlab également : voir + bas
A mon avis, c'est très imprécis en vélo où les conditions sont très différentes de celles dans lesquelles le modèle a été développé (température extérieure, humidité relative, vent, habillement, type de mouvement).
Mark Liversedge dit que le modèle fonctionne bien jusqu'à 675w ( lien )
La conclusion de Mark Liversedge est "on ne peut pas encore dire à quoi ça peut servir" :
Fair enough. I would say I don't think we can say anything about its usefulness right now, good or bad.
experts.umich.edu/en/publications/estimation-of-...uential-heart-rate-o
Buller, M. J., Tharion, W. J., Cheuvront, S. N., Montain, S. J., Kenefick, R. W., Castellani, J., ... Hoyt, R. W. (2013). Estimation of human core temperature from sequential heart rate observations. Physiological Measurement, 34(7), [781]. DOI: 10.1088/0967-3334/34/7/781
function CT = KFModel(HR,CTstart)
%Inputs:
%HR = A vector of minute to minute HR values.
%CTstart = Core Body Temperature at time 0.
%Outputs:
%CT = A vector of minute to minute CT estimates
%Extended Kalman Filter Parameters
a = 1; gamma = 0.022^2;
b_0 = -7887.1; b_1 = 384.4286; b_2 = -4.5714; sigma = 18.88^2;
%Initialize Kalman filter
x = CTstart; v = 0;%v = 0 assumes confidence with start value.
%Iterate through HR time sequence
for time = 1:length(HR)
%Time Update Phase
x_pred = a∗x; %Equation 3
v_pred = (a^2)∗v+gamma; %Equation 4
%Observation Update Phase
z = HR(time);
c_vc = 2.∗b_2.∗x_pred+b_1; %Equation 5
k = (v_pred.∗c_vc)./((c_vc.^2).∗v_pred+sigma); %Equation 6
x = x_pred+k.∗(z-(b_2.∗(x_pred.^2)+b_1.∗x_pred+b_0)); %Equation 7
v = (1-k.∗c_vc).∗v_pred; %Equation 8
CT(time) = x;
end
Edit : avec le code C++ de golden cheetah (RideFile.cpp)
// This code is based upon the matlab function provided as
// part of the 2013 paper cited above, bear in mind that the
// input is HR in minute by minute samples NOT seconds.
//
// Props to Andy Froncioni for helping to evaluate this code.
//
// function CT = KFModel(HR,CTstart)
// %Inputs:
// %HR = A vector of minute to minute HR values.
// %CTstart = Core Body Temperature at time 0.
//
// %Outputs:
// %CT = A vector of minute to minute CT estimates
//
// %Extended Kalman Filter Parameters
// a = 1; gamma = 0.022^2;
// b0 = -7887.1; b1 = 384.4286; b2 = -4.5714; sigma = 18.88^2;
static const double CTStart = 37.0f;
static const double a1 = 1.0f;
static const double gamma = 0.022f * 0.022f;
static const double b0 = -7887.1f;
static const double b1 = 384.4286f;
static const double b2 = -4.5714f;
static const double sigma = 18.88f * 18.88f;
//
// %Initialize Kalman filter
// x = CTstart; v = 0; %v = 0 assumes confidence with start value.
double x = CTStart;
double v = 0;
//
// %Iterate through HR time sequence
// for time = 1:length(HR)
// %Time Update Phase
// x_pred = a ∗ x; %Equation 3
// v_pred = (a^2) ∗ v+gamma; %Equation 4
//
// %Observation Update Phase
// z = HR(time);
// c_vc = 2 ∗ b2 ∗ x_pred+b1; %Equation 5
// k = (v_pred ∗ c_vc)./((c_vc^2) ∗ v_pred+sigma); %Equation 6
// x = x_pred+k ∗ (z-(b2 ∗ (x_pred^2)+b1 ∗ x_pred+b0)); %Equation 7
// v = (1-k ∗ c_vc) ∗ v_pred; %Equation 8
// CT(time) = x;
// end
// now compute CT using the algorithm provided
QVector<double> ctArray(hrArray.size());
for(int i=0; i<hrArray.count(); i++) {
double x_pred = a1 * x;
double v_pred = (a1 * a1 ) * (v+gamma);
double z = hrArray[i];
double c_vc = 2.0f * b2 * x_pred + b1;
double k = (v_pred * c_vc)/((c_vc*c_vc) * v_pred+sigma);
x = x_pred+k * (z-(b2 * (x_pred*x_pred)+b1 * x_pred+b0));
v = (1-k * c_vc) * v_pred;
ctArray[i] = x;
}
// now update the RideFile data points, but only if we got
// any data i.e. ride is longer than a minute long!
if (ctArray.count()) {
int index=0;
foreach(RideFilePoint *p, dataPoints_) {
// move on to the next one
if (double(index)*60.0f < p->secs && index < (ctArray.count()-1)) index++;
// just use the current value first for index=0 and p->secs=0
p->tcore = ctArray[index];
// smooth the values
//if (index && p->secs > 0 && p->secs <= (double(index)*60.0f)) {
//double pt = (p->secs - (double(index-1)*60.00f)) / 60.0f;
//p->tcore = (ctArray[index] - ctArray[index-1]) * pt;
//}
}
} else {
// just set to the starting body temperature for every point
foreach(RideFilePoint *p, dataPoints_) p->tcore = CTStart;
}
}
// Averages and Totals
avgPoint->np = NPcount ? (NPtotal / NPcount) : 0;
totalPoint->np = NPtotal;
avgPoint->xp = XPcount ? (XPtotal / XPcount) : 0;
totalPoint->xp = XPtotal;
avgPoint->apower = APcount ? (APtotal / APcount) : 0;
totalPoint->apower = APtotal;
Bref, ça ne devrait pas être utilisé, tu peux le virer en allant dans les options de GC...
A+
Gilles
Région Grenobloise, GillesF78
Connexion ou Créer un compte pour participer à la conversation.
- cyclo13
- Hors Ligne
- Membre platinium
- Messages : 2270
- Remerciements reçus 373
ok merci,je vais enlever ça ,une ligne en moins,
Connexion ou Créer un compte pour participer à la conversation.
- Circus
- Hors Ligne
- Membre platinium
A part ça, j'arrive pas à trouver où je peux changer mon poids... Et tu peux me réexpliquer comment je calcule ma FTP du moment ? Je me rappelle qu'on avait fait ça de manière très très empirique...
Connexion ou Créer un compte pour participer à la conversation.
- gillesF78
- Hors Ligne
- Membre platinium
- Messages : 7017
- Remerciements reçus 1805
Gilles, c'est très beau ce que tu as écrit... J'y comprends rien mais c'est très beau !!
A part ça, j'arrive pas à trouver où je peux changer mon poids... Et tu peux me réexpliquer comment je calcule ma FTP du moment ? Je me rappelle qu'on avait fait ça de manière très très empirique...
Pour calculer à la louche ta FTP du moment :
1) note tes valeurs de puissance max sur 5 minutes et 20 minutes dans l'onglet Tendances > Puissance aérobie
2) menu Outils > Estimateur de CP et W'
3) renseigne les valeurs de puissance sur 5 minutes et 20 minutes
4) clique sur le bouton Estimation
5) ta valeur de FTP actuelle est égale à la valeur de CP (pour moi, ci-dessous 308w)
En images :
Désolé d'avoir été obscur dans mon explication de la "température centrale". C'est la température de ton corps estimée à partir de ta fréquence cardiaque.
J'ai essayé de le supprimer des valeurs affichées dans le résumé, mais apparemment on n'y a pas accès dans les options.
Région Grenobloise, GillesF78
Connexion ou Créer un compte pour participer à la conversation.
- Circus
- Hors Ligne
- Membre platinium
Pour changer le poids, j'y arrive toujours pas...
Connexion ou Créer un compte pour participer à la conversation.
- ArnaudF.
- Hors Ligne
- Cet utilisateur est bloqué
- Messages : 436
- Remerciements reçus 78
Outils > Options > Athlete > MeasurementsOk, parfait, j'y suis arrivé. Merci Gilles.
Pour changer le poids, j'y arrive toujours pas...
T'inquiètes pas, il va te bouffer ton processeur après l'avoir relancé car il repasse sur toutes tes activités (ultérieure à la date définie pour le nouveau poids) pour réajuster les métriques suite au changement de poids.
Connexion ou Créer un compte pour participer à la conversation.
- Circus
- Hors Ligne
- Membre platinium
Merci
Par ailleurs, quelles sont les données physiques que vous actualisez systématiquement ou fréquemment ?
Connexion ou Créer un compte pour participer à la conversation.
- gillesF78
- Hors Ligne
- Membre platinium
- Messages : 7017
- Remerciements reçus 1805
Région Grenobloise, GillesF78
Connexion ou Créer un compte pour participer à la conversation.
- tippmock
- Hors Ligne
- Membre senior
- Messages : 88
- Remerciements reçus 14
Ça c'est sacrément amélioré alors.
Outils > Options > Athlete > MeasurementsOk, parfait, j'y suis arrivé. Merci Gilles.
Pour changer le poids, j'y arrive toujours pas...
T'inquiètes pas, il va te bouffer ton processeur après l'avoir relancé car il repasse sur toutes tes activités (ultérieure à la date définie pour le nouveau poids) pour réajuster les métriques suite au changement de poids.
J'en étais resté ou la mise à jour du poids se faisait sur l'intégralité de la base de donnée (même plusieurs années en arrière), pour toutes les sorties ou un poids n'avait pas été rentré manuellement.
Une aberration de GC, mais loin d'être la seule.
Connexion ou Créer un compte pour participer à la conversation.
- gillesF78
- Hors Ligne
- Membre platinium
- Messages : 7017
- Remerciements reçus 1805
Ça c'est sacrément amélioré alors.
Outils > Options > Athlete > MeasurementsOk, parfait, j'y suis arrivé. Merci Gilles.
Pour changer le poids, j'y arrive toujours pas...
T'inquiètes pas, il va te bouffer ton processeur après l'avoir relancé car il repasse sur toutes tes activités (ultérieure à la date définie pour le nouveau poids) pour réajuster les métriques suite au changement de poids.
J'en étais resté ou la mise à jour du poids se faisait sur l'intégralité de la base de donnée (même plusieurs années en arrière), pour toutes les sorties ou un poids n'avait pas été rentré manuellement.
Une aberration de GC, mais loin d'être la seule.
En effet tippmock, et cela fonctionne toujours comme cela dans la dernière version stable 3.4.
Arnaud : quelle version de Golden Cheetah utilises-tu ? Peux-tu nous faire un copie d'écran de la fenêtre d'options poids+date ?
Région Grenobloise, GillesF78
Connexion ou Créer un compte pour participer à la conversation.
- Circus
- Hors Ligne
- Membre platinium
1/ Comment je fais pour voir les pics de puissances max lors de mes sprints ? Y a que la puissance moyenne dans la fenêtre "Intervalles" ?
2/ Comment je fais pour connaître les N/m développés sur chaque sprint ?
3/ Comment je fais pour désélectionner une sélection dans "Activités-->sortie", sélection qui apparaît dans la fenêtre "Intervalles".
J'ai beau ne pas être un scientifique, c'est pas toujours intuitif l'utilisation de GC...
Merci d'avance aux gentils pédagogues...
Connexion ou Créer un compte pour participer à la conversation.
- laurent.a
- Hors Ligne
- Membre platinium
- Messages : 2440
- Remerciements reçus 370
Peut-on avoir l'équilibre G/D avec GC ?
Merci
Connexion ou Créer un compte pour participer à la conversation.
- Circus
- Hors Ligne
- Membre platinium
Hello,
Peut-on avoir l'équilibre G/D avec GC ?
Merci
Ah oui, ça aussi c'est con : t'as la courbe mais pas la moyenne affichée !!
Connexion ou Créer un compte pour participer à la conversation.
- ArnaudF.
- Hors Ligne
- Cet utilisateur est bloqué
- Messages : 436
- Remerciements reçus 78
Dans l'écran Measurements il y a un defaut weight qui correspond au poids rentré lors de la création de l'athlète et qui est appliqué par défaut à l'ensemble des activités.
On peut aussi définir des poids depuis certaines dates, qui seront appliqués qu'aux activités postérieures à ces dates.
Ici j'ai un poids par défaut de 69.5 et un autre de 68.5 mesuré le 12 décembre. Une fois le poids validé et GC redémarré je vois bien que les poids associés à mes activités du 10 et 12 décembre sont différents.
Connexion ou Créer un compte pour participer à la conversation.
- gillesF78
- Hors Ligne
- Membre platinium
- Messages : 7017
- Remerciements reçus 1805
Salut,
1/ Comment je fais pour voir les pics de puissances max lors de mes sprints ? Y a que la puissance moyenne dans la fenêtre "Intervalles" ?
2/ Comment je fais pour connaître les N/m développés sur chaque sprint ?
3/ Comment je fais pour désélectionner une sélection dans "Activités-->sortie", sélection qui apparaît dans la fenêtre "Intervalles".
J'ai beau ne pas être un scientifique, c'est pas toujours intuitif l'utilisation de GC...
Merci d'avance aux gentils pédagogues...
1/ tu vas dans Activités / sortie, puis tu clique sur l'icone "chronomètre" située en bas. Une liste "Intervalles s'affiche" Dans cette liste, tu as la liste des efforts à I7. Clique avec le bouton droit sur un intervalle de la liste, et sélectionne "Zoomer sur l'intervalle". Avec le Zoom, tu auras la puissance instantannée à chaque seconde de ton intervalle à I7. Tu peux sélectionner une partie de cet intervalle, et lire les statistiques sur cette sélection en haut de la liste "Intervalles" (puissance, temps...).
2/ Menu Editer > Corriger les valeurs de couple. Puis dans Activités > Sortie : va dans "Plus ... " > paramètres du graphique et ajoute une courbe "Couple" (pas "couple Delta")
Attention, bien choisir la durée de lissage pour avoir les valeurs max du couple et de la puissance...
3/ ... to be continued
Région Grenobloise, GillesF78
Connexion ou Créer un compte pour participer à la conversation.
- Circus
- Hors Ligne
- Membre platinium
Merci pour tes explications. Y a des trucs que je dois louper car pour les deux je n'arrive pas à la dernière partie de tes explications.
Pour 1/ :
Je ne trouve pas la liste des efforts à I7. GC me sélectionne (par défaut) des intervalles qu'il appelle "L7 sprint" dont les valeurs ne correspondent pas à celles que j'ai sous strava ou sous garmin connect. Dans plusieurs cas, il les "écrête" à 1000w ou à 100w en dessous des chiffres observables sous les deux autres logiciels.
Quand je fais une sélection manuelle, là encore les valeurs sont très largement en-deça de celles des deux autres logiciels.
Enfin, sur la page des courbes "activités --> sortie", mon graphique de puissance est plafonné à 1000w (j'ai rien trouvé en passant par "éditer" ou par "plus" pour corriger ça).
ps : je précise que sur les valeurs du résumé, il me dit que bien la même valeur de puissance max.
Pour 2/
J'ai bien réussi à ajouter la courbe de "couple delta" (en passant par "éditer" et non "outils", une confusion de ta part j'imagine), mais je ne comprends pas les chiffres obtenus. Ce n'est pas plutôt la valeur "couple" simple qu'il me faut rajouter comme graphique (pour mesurer le moment de la force ?) ? Quand je fais ça, je tombe sur des valeurs autour de 120 ou 125, ce qui est très loin des 200n.m que j'avais avant
En tout cas, encore merci
Connexion ou Créer un compte pour participer à la conversation.
- Circus
- Hors Ligne
- Membre platinium
Connexion ou Créer un compte pour participer à la conversation.
- lebad
- Hors Ligne
- Membre platinium
- Messages : 6424
- Remerciements reçus 788
Ca expliquerait les valeurs plus basses quand tu lis sur les graphiques.
Connexion ou Créer un compte pour participer à la conversation.