Ce qui m'a vraiment frappé, c'est que les vitesses moyennes n'ont pas vraiment beaucoup changé
La carte va d’environ 25 km / h à plus de 40 km / h, et c’est un grand changement. Comme d'autres l'ont mentionné, l'augmentation de votre vitesse moyenne nécessite une augmentation non linéaire de la puissance appliquée aux pédales.
En d'autres termes, il est plus facile d'augmenter la vitesse moyenne de 25 km / h à 26 km / h que de passer de 40 km / h à 41 km / h
Supposons que je vole une machine à remonter le temps, que je retourne sur chaque parcours du TdF en utilisant le même vélo. Pour correspondre à la vitesse moyenne des gagnants, voici la puissance en watts que je devrais produire (enfin, une approximation très grossière):
(Encore une fois, il s’agit d’un graphique très grossièrement approximatif, conçu pour illustrer un point! Il ignore des éléments tels que le vent, le terrain, le tirant d’eau, le parcours en roue libre, la surface de la route et bien d’autres choses)
Passer de 60 à 240 watts environ est un énorme changement, et il est très peu probable que les concurrents de TdF aient augmenté leur puissance en watts autant avec le temps.
Une partie de cette augmentation sera due aux cyclistes plus puissants (grâce à un meilleur entraînement et à une meilleure nutrition), mais certainement pas à la totalité.
Le reste est probablement dû aux améliorations technologiques. Par exemple, un vélo plus aérodynamique diminuera la puissance requise pour une vitesse moyenne donnée, tout comme un vélo plus léger lors de la montée de collines.
Source pour le graphique: Bien que mon argument doive rester valable, quel que soit le degré d'exactitude du graphique ci-dessus, voici le script compliqué que j'ai utilisé pour le générer
Il utilise les données d' ici , exportées au format CSV (à partir de ce document )
La vitesse moyenne du calcul en watts requis pourrait être grandement simplifiée, mais il était plus facile pour moi de modifier le script à partir de ma réponse ici !
#!/usr/bin/env python2
"""Wattage required to match pace of TdF over the years
Written in Python 2.7
"""
def Cd(desc):
"""Coefficient of drag
Coefficient of drag is a dimensionless number that relates an
objects drag force to its area and speed
"""
values = {
"tops": 1.15, # Source: "Bicycling Science" (Wilson, 2004)
"hoods": 1.0, # Source: "Bicycling Science" (Wilson, 2004)
"drops": 0.88, # Source: "The effect of crosswinds upon time trials" (Kyle,1991)
"aerobars": 0.70, # Source: "The effect of crosswinds upon time trials" (Kyle,1991)
}
return values[desc]
def A(desc):
"""Frontal area is typically measured in metres squared. A
typical cyclist presents a frontal area of 0.3 to 0.6 metres
squared depending on position. Frontal areas of an average
cyclist riding in different positions are as follows
http://www.cyclingpowermodels.com/CyclingAerodynamics.aspx
"""
values = {'tops': 0.632, 'hoods': 0.40, 'drops': 0.32}
return values[desc]
def airdensity(temp):
"""Air density in kg/m3
Values are at sea-level (I think..?)
Values from changing temperature on:
http://www.wolframalpha.com/input/?i=%28air+density+at+40%C2%B0C%29
Could calculate this:
http://en.wikipedia.org/wiki/Density_of_air
"""
values = {
0: 1.293,
10: 1.247,
20: 1.204,
30: 1.164,
40: 1.127,
}
return values[temp]
"""
F = CdA p [v^2/2]
where:
F = Aerodynamic drag force in Newtons.
p = Air density in kg/m3 (typically 1.225kg in the "standard atmosphere" at sea level)
v = Velocity (metres/second). Let's say 10.28 which is 23mph
"""
def required_wattage(speed_m_s):
"""What wattage will the mathematicallytheoretical cyclist need to
output to travel at a specific speed?
"""
position = "drops"
temp = 20 # celcius
F = Cd(position) * A(position) * airdensity(temp) * ((speed_m_s**2)/2)
watts = speed_m_s*F
return watts
#print "To travel at %sm/s in %s*C requires %.02f watts" % (v, temp, watts)
def get_stages(f):
import csv
reader = csv.reader(f)
headings = next(reader)
for row in reader:
info = dict(zip(headings, row))
yield info
if __name__ == '__main__':
years, watts = [], []
import sys
# tdf_winners.csv downloaded from
# http://www.guardian.co.uk/news/datablog/2012/jul/23/tour-de-france-winner-list-garin-wiggins
for stage in get_stages(open("tdf_winners.csv")):
speed_km_h = float(stage['Average km/h'])
dist_km = int(stage['Course distance, km'].replace(",", ""))
dist_m = dist_km * 1000
speed_m_s = (speed_km_h * 1000)/(60*60)
watts_req = required_wattage(speed_m_s)
years.append(stage['Year'])
watts.append(watts_req)
#print "%s,%.0f" % (stage['Year'], watts_req)
print "year = c(%s)" % (", ".join(str(x) for x in years))
print "watts = c(%s)" % (", ".join(str(x) for x in watts))
print """plot(x=years, y=watts, type='l', xlab="Year of TdF", ylab="Average watts required", ylim=c(0, 250))"""