用光搭起来的钟
想象一台最简单的钟:两面相对的镜子,一道闪光在它们之间笔直地上下弹跳。每往返一次就是一次滴答。这台钟一点也不神秘——它只是在数光的弹跳次数。但因为光速对每位观察者都相同(这正是相对论两条基本假设之一),这台不起眼的钟即将揭示某种奇异的现象。
看它飞掠而过:光走了更长的路
如果你随着钟一起运动,光就笔直上下走——这是一条短路径。但如果钟以速度 v 从你身边飞过,你看到光走的是一条斜向的之字形,因为在光到达之前,上面那面镜子已经横向移动了。斜线比笔直的上下线更长。既然光不能加速来弥补这段额外距离,它就只能多花你的时间——于是飞掠而过的钟,每一次滴答都拉长了。这就是时间膨胀。
Clock at rest (you ride with it): Clock flying past at speed v:
[top mirror] [top] [top] [top]
^ \ | /
| light goes \ | / diagonal
| straight up \ | / = longer
| and down \ | /
v \ | /
[bottom mirror] [bot]----[bot]----[bot]---> v
short path = short tick longer path = longer tick负责拉伸的那个数:gamma
把斜线究竟长多少算清楚,就得到一个干净利落的拉伸因子,叫洛伦兹因子,通常写作 gamma。你只要往里面代入一个速度即可:
gamma = 1 / sqrt(1 - v^2/c^2)
moving clock's tick = gamma * (proper-time tick)- 当 v = 0.10c(光速的 10%):gamma = 1.005——钟只慢了半个百分点。几乎察觉不到。
- 当 v = 0.50c:gamma = 1.155——运动中的一秒,如今约等于你的 1.15 秒。
- 当 v = 0.99c:gamma = 7.09——运动的钟慢如蜗行,滴答速度只有你的七分之一。
import math
def gamma(v_over_c):
return 1 / math.sqrt(1 - v_over_c**2)
for frac in (0.10, 0.50, 0.99, 0.999):
print(f"v = {frac}c -> gamma = {gamma(frac):.3f}")
# v = 0.1c -> gamma = 1.005
# v = 0.5c -> gamma = 1.155
# v = 0.99c -> gamma = 7.089
# v = 0.999c -> gamma = 22.366它是真的:μ子与原子钟
这并非思想实验里的把戏。μ子——电子的重表亲——是在宇宙射线撞击约 15 公里高的高层大气时产生的。静止的μ子大约 2 微秒就会衰变,即便以接近光速运动,也远来不及抵达地面。然而海平面的探测器却成批地捕捉到它们。原因在于:它们以约 0.99c 飞行,内部的钟因而慢了约 7 倍(gamma ≈ 7),把它们短暂的寿命拉长到恰好够走完全程。
工程师们也在直接测量它。让一台原子钟搭乘客机绕地球飞行一圈,回来时会比留在机场的同款钟慢上几百纳秒——与 gamma 的预言分毫不差。你手机里的 GPS 必须每一秒都校正这类效应,否则它给出的位置会在一天之内偏差好几公里。
对称,而非矛盾
只要没人调头,这种对称就一直成立。当其中一位双胞胎真的加速返航时,平局才被打破——不过那就是著名的双生子佯谬了,是留待后续课程的故事。