工作原理
2.0 开始之前
写给爱钻研数据的骑友。不读这些也完全可以上路。我们把它写在这里,是因为有些人只有弄清数字是怎么算出来的,才能看得过瘾。
简单来说:我们把你的功率、体重、自行车、路况和空气条件放在一起,以十分之一秒为一步,替你模拟骑完整个路段。真正上路的那一趟,还是得你自己来。
2.1 预测能告诉你什么,又不能告诉你什么
预计用时是我们的模型根据你的功率档案、体重和自行车,在对应路况和空气条件下骑完一个路段所需的时间。它回答的是:“如果我全力以赴,在这里能骑多快?”时间可以是现在,也可以是你选定的某个小时。
这是计算结果,不是承诺。它不知道你昨晚没睡好,也不知道自行车道上停着一辆送货车。
与纪录的差距将预计用时与 Strava 排行榜上的最快用时进行比较:如果你的个人资料显示为女性,就使用 QOM,否则使用 KOM。
大于零,表示模型预测你快于纪录;小于零,则表示慢于纪录。
这个数表示差距,不是概率。+3% 的差距表示预计用时比纪录快 3%,不代表任何事情有 3% 或 97% 的可能性。皇冠可不是电子表格发的。
用时显示为横线表示我们无法给出预测。最常见的原因是我们还没有你的功率档案,或者你选择的小时没有天气预报。
2.2 你的动力:功率档案
一切都从你能输出多大功率,以及能持续多久开始。
**功率曲线。**你在十二种持续时间内的最佳平均功率:5、10、20 和 30 秒,以及 1、2、5、10、20、30、45 和 60 分钟。
获取功率曲线有两种方式。
- *从骑行记录中获取。*我们从 Strava 读取你过去 180 天的骑行记录,取出你在每种持续时间内保持过的最佳功率,然后分三步整理曲线。如果某种持续时间内你从未全力骑过,对应的数值就会形成低谷,我们会将它提高到由你表现较强的数据点拟合出的曲线上。持续更久的功率不能高于较短时间的功率,因此曲线不会随持续时间增加而上升。同时,任何数值都不会低于你实际记录的功率。
- *由你输入。*十二个数值中,知道多少就输入多少。我们会用一条平滑曲线连接你提供的数据点,补齐其余数值。对于短于你最短时间、或长于你最长时间的部分,我们不会继续推测,而是保持相应端点的数值。如果只有一个数值,我们会按它缩放一条典型曲线。对于你手动输入的曲线,我们不使用你的骑行记录。你输入的数值会原样保留。
FTP,即功能性阈值功率,是你大约能持续一小时的功率。我们取你的 60 分钟功率和 20 分钟功率的 95% 中较高的一个,四舍五入到整数瓦。如果你更了解自己的 FTP,可以直接输入。手动输入的 FTP 会一直保留,直到你修改它或清空该字段。
**CP 和 W′。**临界功率 CP 是你能够长时间保持、而无需动用额外储备的功率。W′,读作“W prime”,就是这份额外储备的大小:一份固定的做功能力,以焦耳计,可用于高于 CP 的输出。功率高于 CP 时,W′ 会消耗;低于 CP 时,W′ 会恢复。
储备耗尽时,模型会暂时把功率降到 CP 以下。经过这 20 秒的减速,恢复的 W′ 就可支持下一次高于 CP 的输出。储备余量和正在进行的减速状态会沿整条路线延续,不会在进入新的小段时重置。
背后的模型由 Monod 和 Scherrer 提出,认为你在时间 内能完成的功为
把功率曲线各数据点的 相对于 绘在图上,就会得到一条直线。斜率是你的 CP,截距是你的 W′。我们用整条曲线来拟合这条直线,避免由某一次异常出色的表现决定结果。CP 和 W′ 始终通过计算得出,没有手动输入的位置。
**不同持续时间的可持续功率。**根据曲线、CP 和 W′,我们计算你能持续 45 秒,以及 2、5、8、20、40 和 60 分钟的功率。
-
5 分钟及以内,直接从功率曲线中读取,也就是你自己的最佳表现。
-
30 分钟及以上,使用模型计算:
-
两者之间,按时间的对数刻度进行混合。 从 5 分钟时的 0 变化到 30 分钟时的 1:
**预测使用哪种功率。**整个路段使用一个目标功率值,按路段长度选择。短路段使用冲刺功率,长路段使用阈值功率。
| 路段长度 | 模拟骑行使用的功率 |
|---|---|
| 不足 500 m | 可持续 45 秒的功率 |
| 500 m 至 1 km | 2 分钟功率 |
| 1 至 2 km | 5 分钟功率 |
| 2 至 4 km | 8 分钟功率 |
| 4 至 8 km | 20 分钟功率 |
| 8 至 20 km | 40 分钟功率,其中三分之一按 FTP 计算 |
| 20 km 及以上 | 你的 FTP |
因此,FTP 只在长路段中起作用。所有不足 8 km 的路段,用时都来自你的功率曲线、CP 和 W′。这正是使用整条曲线的意义。
**没有功率计?**那就没有可用于生成曲线的骑行记录,我们会给你一个默认档案:20 分钟约 275 瓦,一小时约 250 瓦。使用默认档案时,我们会告知你。这些是别人的数值,不是你的;在你输入自己的数值之前,预计用时无法准确。哪怕只是粗略估计,也比默认值更适合你。
2.3 模拟骑行:只有物理,没有煎熬
**把路段切成小段。**一个路段的坡度和方向并非始终不变,所以我们把它切成坡度和方向相对一致的小段。我们沿路线前进,并向前查看 50 米。当前方坡度与当前小段相差超过 2 个百分点,或方向相差超过 10 度时,就开始新的小段。每个小段都不少于 15 米。每个小段都记录了长度、平均坡度、朝向、位置、海拔和路面状况。
**作用力。**有三种力会拖慢你,其中一种有时也会帮你一把。
- 是你和自行车的总质量。体重来自你的个人资料,没有体重数据时使用 75 kg。自行车重量使用你保存的数值,否则使用 9 kg。
- 是小段的坡度。下坡时,重力就会转而帮你。
- 是滚动阻力系数。初始值为 0.005,代表优质公路胎在良好沥青路面上的情况,随后根据路面调整(2.5)。
- 是空气密度, 是空气相对于你的速度(2.4)。
- 表示你推开空气的难易程度,使用个人资料中的数值。新档案的初始值为 0.35 m²,代表典型的公路车骑姿。颠簸路面会让它略微增加,毕竟没人能在碎石路上一直保持低伏姿势。
你踩踏输出的功率中,97% 会传到路面,另外 3% 则给链条添了点热。
**模拟如何进行。**我们逐步模拟骑过每个小段,每一步通常持续十分之一秒。如果 W′ 在一步之内耗尽,就在耗尽的瞬间将这一步拆开。每一步中,推动你前进的力等于传到车轮的功率除以速度,再减去上面的三种力:
你的速度变化量为 乘以这一步的持续时间,随后向前移动,再重复计算,直到骑完这个小段。离开一个小段的速度,就是进入下一个小段的速度,因此快速下坡的惯性会把你带上接下来的坡,就像真实骑行一样。路段的起始速度为每秒 9 米,约 32 km/h:带着速度进入路段,毕竟没人从原地起步去夺皇冠。
**W′ 的消耗与恢复。**当功率高于 CP 时,每个时间间隔内消耗的 W′ 为
我们只扣除该时间间隔内高于 CP 的那部分输出所消耗的能量。当 W′ 降到零时,就开始一段 20 秒的减速。在这段时间内,功率按照一个逐渐放宽、始终低于 CP 的上限变化;如果你选定的目标功率更低,就使用该目标功率。减速会延续到后续小段,不会在进入新小段时重新计时。20 秒后,就可以再次使用选定的目标功率,由恢复的 W′ 支持高于 CP 的输出。如果这次输出又耗尽了 W′,就开始下一段减速。
当功率低于 CP 时,W′ 会恢复,而且低于 CP 越多,恢复越快:
恢复后的储备不会超过满值。
下坡时,你可以比为路段选定的功率再多出一点力,因为重力承担了部分工作。我们允许的功率为选定功率加上 W′ 除以 300,但绝不超过 CP 的两倍。
2.4 天空:风与空气
**天气预报的来源。**我们使用 NOAA 的全球预报系统 GFS,网格分辨率为四分之一度。NOAA 每天运行四次模型,每次结果发布后,我们都会获取。预报逐小时覆盖未来七天。
**沿途的风。**路段会转弯,风却不会跟着转。对于每个小段,我们取模型预测你抵达时,该小段所在位置的风,并结合小段朝向进行计算。逆风增加你需要克服的相对气流速度,顺风则降低它。如果顺风比你还快,它就会推着你走。
**稀薄与稠密的空气。**空气密度越大,风阻越大,而各处的空气并不相同。我们根据温度、气压和湿度计算空气密度。预报网格比较粗,约为 25 km,它所采用的地面海拔可能与你骑行的道路相差很大,因此我们先将温度和气压调整到每个小段的真实海拔。高海拔处温暖潮湿的空气比较稀薄,骑起来更快。海平面处寒冷干燥的空气更稠密,每一分阻力你都能感受到。
没有天气预报时,我们使用密度为 1.225 kg/m³ 的静止空气,这是教科书中的海平面标准值。
**你看到的天气,与计算使用的天气。**屏幕上显示的是出发时路段起点附近的天气。预测则逐小段使用整条路线沿途的天气,对应你预计遇到的条件。阵风和雨量会显示出来,但暂时不影响预计用时。
**覆盖范围。**目前,风况和天气覆盖加利福尼亚州、俄勒冈州、华盛顿州、夏威夷州和下加利福尼亚州。其他地区按静止空气预测用时,不提供七天预测。
2.5 路面:平整、颠簸,以及“这也算路?”
好轮胎在新铺的沥青路上滚动,几乎不费力;在碎石路上就不一样了。对于每个小段,我们查询 OpenStreetMap 中的路面信息,并将其转换为 1 至 32 的评分。评分会增加滚动阻力,颠簸路面还会增加风阻。
| 地图标注的路面 | 评分 | 对滚动阻力的影响 |
|---|---|---|
| 沥青、混凝土、任何铺装路面 | 1 | 不变。这是基准。 |
| 卵石、块石、铺路石 | 8 | 增加 20% |
| 碎石、压实路面或裸地 | 14 | 增加 50% |
| 土路、未铺装路面 | 18 | 增加 70% |
| 泥泞 | 24 | 变为两倍 |
| 沙地、草地 | 28 | 变为两倍半 |
地图未注明路面时,我们根据道路类型判断:街道或主干道视为铺装路面,自行车道视为接近铺装路面,车辙道或服务道路视为碎石路,小径视为土路。车辙道的等级从 1 到 5,还会进一步增加粗糙程度。
如果地图完全没有某个小段的路面信息,我们就假定它比较颠簸,评分为 20。我们持有的地图数据覆盖美国、加拿大、墨西哥和格陵兰。在这些地区以外,每个小段都被视为“未知”,预计用时也会比应有的更长。
2.6 未来一周:预测与最佳骑行时间
有了 Pro,我们会对未来七天的每个小时都模拟一次相同的骑行,使用对应小时的风况和空气条件。这样,每个可出发的小时都有一个预计用时。
最佳骑行时间就是预计用时最短的那个小时。就是这么简单:我们对时间范围内的每个小时都模拟骑一遍路段,然后选出最快的结果。时间按路段所在地的时区显示,因此“早上 8 点”指的是路段所在地的早上 8 点。
预测越远,不确定性越大,而且每天会更新四次。周二看到的周六最佳时段,到了周五可能已经变了。别好号码布之前,再看一眼。
2.7 写给认真骑友的局限说明
模型不知道的事,也就无法模拟。
- **跟骑借风。**我们模拟的是单独骑行。团骑队伍中拿下的 KOM,得到过模型不会给你的帮助。
- **交通、信号灯和弯道。**模型从不刹车,但真实道路有时不允许你这么骑。
- **当天状态。**曲线反映的是你 180 天内的最佳表现,今天未必是那一天。
- **骑姿。**整趟骑行只使用一个 。如果你一直保持低伏姿势,可能会比模型更快;如果坐直身体吃东西,就不会了。
- **纪录本身。**纪录用时直接取自 Strava,包括顺风天、团骑,偶尔也可能混进汽车跑出的成绩。
- 地图未知的路面,以及天气预报覆盖范围以外的地区(2.4、2.5)。
- 阵风和雨量会显示,但尚未纳入计算。
KOM Hero 显示的预测,是根据数学模型和我们掌握的数据得出的估算。你的实际用时可能不同,原因包括模型无法看到的天气突变、路面状况、交通情况,以及你当天的感受。请自行判断。
也请安全骑行。没有哪顶皇冠值得你去闯红灯。