物理群星
维勒布罗德·斯涅尔 肖像

图:德帕斯工作室铜版画,载默尔修斯《巴达维亚的雅典》(莱顿,1625),阿姆斯特丹国家博物馆藏 RP-P-OB-15.346(CC0,维基共享资源)

维勒布罗德·斯涅尔

Willebrord Snellius (Snel van Royen)

1580–1626 · 生于荷兰共和国莱顿 · 荷兰共和国

光学数学物理天体与宇宙学

用教堂尖塔搭起一张三角网量出地球,又在一份没出版的手稿里写下折射定律的莱顿数学教授

今天几乎每一本中学物理书都有「斯涅尔定律」,可维勒布罗德·斯涅尔生前从没发表过它。他在世时的名声来自另一件事:1615 年起,他扛着一架大象限仪,在荷兰的教堂尖塔之间一个角一个角地量,把一百多公里的子午线弧长算了出来——这是欧洲第一次认真用三角网测量地球。

他四十六岁就去世了。那份写着折射定律的光学手稿辗转落到后人手里,又在他死后几十年引出一场关于笛卡尔是否「借用」过它的争论。定律最后挂上了他的名字,但他是不是第一个发现者,今天的答案是:不是,而且差得很远。

数学教授的儿子

斯涅尔 1580 年生于莱顿。父亲鲁道夫·斯涅尔是五年前才创办的莱顿大学的数学教授,一个热心的拉米斯派——相信数学应当拿来用,而不只是拿来背。儿子在家学拉丁文、希腊文,后来跟着以计算圆周率出名的范科伊伦私下学数学。

他在大学注册的是法律,但数学显然更吸引他。据《科学传记辞典》,靠范科伊伦、斯泰芬和父亲的推荐,他在 1600 年、二十岁时就获准在大学里教数学。随后他出门游学:在维尔茨堡见了数学家范罗门,经范罗门介绍去了布拉格,在第谷身边帮忙观测,并认识了当时给第谷当助手的开普勒。1601 年 10 月第谷去世,这段经历随之结束。他又去了阿尔特多夫、图宾根(见了开普勒的老师梅斯特林),1602 年在巴黎学法律,1604 年才回到莱顿。

回来以后,他先做的是翻译和复原:把斯泰芬的荷兰文《数学札记》译成拉丁文,又仿照韦达等人,根据帕普斯留下的摘要复原已经失传的阿波罗尼奥斯著作。1613 年父亲去世,他接下数学教职,两年后成为正教授,讲数学、天文和光学。

用尖塔量地球

古希腊的埃拉托色尼用正午日影和两地距离估算过地球周长,难处从来不在天文那一半,而在地面那一半:两座城之间到底有多远?用绳子和步数去量一百多公里,误差大得没法用。

斯涅尔选的办法是三角测量——这个想法 1533 年由赫马·弗里修斯提出,第谷在汶岛上用过,但把它扩成一整张网、真用来测地球的,他是第一人。他先在莱顿到邻近的佐特尔武德之间精细地量一条约 5 公里的基线,然后只量角,不再量距离:以教堂尖塔为顶点,一个三角形接一个三角形往外推,每推一步都用正弦定律

asin⁡A=bsin⁡B=csin⁡C\frac{a}{\sin A} = \frac{b}{\sin B} = \frac{c}{\sin C}

从已知的一条边和测得的角算出新的边。三角网从北边的阿尔克马尔一直铺到南边的贝亨奥普佐姆,两城大致在同一条经线上,相距约 130 公里。他用的仪器出自布劳的作坊,其中一架约 2.1 米的大象限仪至今还挂在莱顿天文台的大厅里。

为了把自家房子接进网里,他还解决了一个今天仍以他命名的问题:只知道三个已知点、在未知点上量两个夹角,怎样定出自己的位置(后来也叫波特诺问题)。

1617 年,他把结果印成《荷兰的埃拉托色尼》,题献给荷兰联省议会,得到一笔几乎相当于半年薪水的奖金。书中给出纬度一度约合 28 500 莱茵杆,按 1 杆约 3.767 米折算约 107 公里,比今天的值(约 111 公里)小了三四个百分点。

他自己对这个结果并不满意。此后几年他带着学生继续复测,把网延伸到梅赫伦,在自己那本书的页边上一遍遍修改数据——那时还没有对数表,全靠手算。他没来得及发表就去世了;1729 年米森布鲁克根据这些笔记重算发表。20 世纪荷兰测量学家哈斯布鲁克复核他的手稿,认为斯涅尔的修订认真而精确,米森布鲁克的整理反倒不那么可靠。

水里的筷子

折射的规律困扰了光学家一千多年。一根筷子插进水里看起来折断了,这谁都知道;难的是「折多少」。托勒密在《光学》里列过空气到水、空气到玻璃的折射角表,但他的数只在小角度时大致对,据后人分析还被他按自己设想的规律修整过。海什木做过更系统的实验,没有找到定量规律。1604 年开普勒在《维特洛补遗》里专门攻这个问题,最后只得到小角度的近似。

据《科学传记辞典》,斯涅尔读过开普勒这本书和里斯纳整理的光学著作(其中大段转述海什木与维特洛),他在里斯纳书上的批注后来被整理出版。他花了多年做实验,大约在 1621 年或稍后找到了答案。

他的表述是几何的,不用角度。设眼睛在空气里,看水中的一点 RR,光线在水面 SS 点折射后进入眼睛;人会觉得 RR 被抬到了过 RR 的竖直线上的某点 LL。斯涅尔断言:

SLSR=常数\frac{SL}{SR} = \text{常数}

不管从哪个方向看都一样。这两条线段之比,换算成角度就是入射角与折射角余割的比;取倒数,就是今天的

n1sin⁡θ1=n2sin⁡θ2n_1 \sin\theta_1 = n_2 \sin\theta_2

这份手稿后来失传了。今天的知识来自三处:阿姆斯特丹大学图书馆里一份被德瓦尔德认定为该手稿目录的文件(其中写着定律的原话)、福修斯 1662 年《论光的本性》里的转述,以及惠更斯《屈光学》中的讨论——三者说法彼此吻合。

谁先发现的:一条很长的名单

「斯涅尔定律」这个名字给人一种错觉,好像是他一个人的功劳。按目前的研究,至少有五个人在不同时间、互不知情地走到了这一步附近:

  • 托勒密(约 2 世纪):留下了折射角的实测表,但没有找到正确的规律。
  • 伊本·萨赫勒(约 984 年):据拉希德 1990 年在《伊西斯》上的研究,这位巴格达学者在《论燃烧镜与透镜》里用一对直角三角形斜边之比来刻画折射,并据此设计能把光聚到一点的透镜,这个比例与正弦定律等价。这部著作在欧洲一直无人知晓,直到 20 世纪后期才由拉希德重新发现、整理出版。
  • 托马斯·哈里奥特(1601 年):据洛内 1959 年的研究与达德利、关 1997 年的介绍,这位英国数学家在一份自署 1601 年 7 月的手稿里已经按正弦定律计算折射,但从未发表。他与开普勒通过信讨论折射,也没有把这条规律告诉对方。
  • 斯涅尔(约 1621 年):写入手稿,生前未发表。
  • 笛卡尔(1637 年):在《折射光学》里第一次把正弦形式的定律印出来,并用一个力学模型给出推导,但没有附实验数据。据古尔丁 2022 年的研究,他与巴黎的数学家米多日大约在 1626—1627 年间就已得到这条定律,并磨过双曲面透镜来检验。

所以按出版论,优先权属于笛卡尔;按手稿论,欧洲境内哈里奥特比斯涅尔早二十年;放眼整个世界,伊本·萨赫勒又早了六百多年。这条定律在英语世界叫「斯涅尔定律」,在法国常叫「斯涅尔-笛卡尔定律」,哪个名字都只说出了一部分历史。

笛卡尔看过那份手稿吗

笛卡尔 1628 年起长住荷兰,据《科学传记辞典》,他在斯涅尔生前与身后都到过莱顿。1662 年福修斯在《论光的本性》里明确指称笛卡尔见过这份手稿,并在此基础上编出了自己的推导。据《科学传记辞典》,惠更斯也提出过类似的指控;此后三百年这一说法被反复引用。

另一方的材料是:1896 年科特韦赫专门考察了笛卡尔与斯涅尔手稿的关系;斯特勒伊克在《科学传记辞典》里的结论是,笛卡尔去过莱顿让这种指控显得可信,「但似乎没有证据支持它」。据维基百科转述的戴克斯特豪斯的意见,这一指控并不公允。古尔丁 2022 年的研究则把笛卡尔的发现放在 1626—1627 年的巴黎,那时他还没有搬到荷兰。

这些材料都放在这里,笛卡尔是否读过斯涅尔的手稿、读过又有多少影响,留给读者判断。

圆周率与斜航线

1621 年的《圆的度量》做了两件事。一件是替已故的老师范科伊伦留下成果:书里首次印出了范科伊伦用 2622^{62} 边形算到小数点后 35 位的 π\pi——这 35 位后来刻在了范科伊伦的墓碑上。另一件是他自己的改进:古典方法要靠不断倍增多边形的边数,他改用一对不等式把弧长从两边夹住,只用正 96 边形就能得到 7 位准确数字。他的论证并不严格,三十多年后惠更斯才给出证明。

1624 年的《荷兰的提费斯》(提费斯是希腊神话中阿尔戈号的舵手)是给航海者的讲义。书里系统研究了葡萄牙数学家努内斯提出的等角航线——船始终保持与经线成固定夹角航行,在地球上画出的那条螺旋线——斯涅尔给它起名 loxodrome,这个词一直沿用到今天。他把航线、纬线、经线围成的小球面三角形近似当作平面直角三角形来算,这种「微分三角形」的思路后来在帕斯卡等人手里发展成微积分的雏形之一。

天文:看得清彗星,没接受哥白尼

斯涅尔在第谷身边待过,1618 年整理出版了第谷与比尔吉在黑森(卡塞尔)的天文观测。1618 年的大彗星出现后,他用视差论证彗星远在月亮之外,不可能是亚里士多德说的地球蒸气——他在书里毫不客气地批评了对亚里士多德的盲目尊崇。但他并没有因此接受哥白尼:据《科学传记辞典》与麦克图特的传记,他仍然主张地心体系,也仍然相信彗星是某种征兆。

早逝

1626 年秋,斯涅尔患上被诊断为「绞痛」的病,高烧、手脚瘫软,两周后在 10 月 30 日去世,年仅四十六岁,葬在莱顿的圣彼得教堂,二十名学生为他抬棺。他与妻子玛丽亚·德朗厄的纪念碑至今还在那里。据葬礼演说,他们有十八个孩子,但麦克图特的传记认为这个数字不大可信,能确认的至少七个,只有三个活到成年。

未完成的《三角学说》由学生霍滕修斯整理,第二年出版。书中那个用两个已知点定位的问题,后来又以汉森的名字流传。

身后的名字

折射定律最终挂上斯涅尔的名字,很大程度上要归功于惠更斯。惠更斯读过斯涅尔的手稿,在他的《屈光学》里讨论了斯涅尔的表述;1678 年他在巴黎科学院宣读、1690 年出版的《光论》里又用子波的包络推出了这条定律,并据此预言光在密介质中走得更慢——与笛卡尔、牛顿的推论正好相反。

斯涅尔自己对光的本性没留下什么理论。他留下的是一条可以拿去算透镜、算望远镜的规律,一套后来被法国、英国等国的大地测量一路扩展开去的三角测量法,以及一个在海底、在鱼眼镜头里天天都能看见的明亮圆窗。

代表方程

折射定律(今天的写法)

n1sin⁡θ1=n2sin⁡θ2n_1 \sin\theta_1 = n_2 \sin\theta_2

光从折射率 n1n_1 的介质斜射进 n2n_2 的介质,入射角 θ1\theta_1 与折射角 θ2\theta_2 的正弦之比是一个只由两种介质决定的常数。斯涅尔生前没有这样写,也没有用「正弦」和「折射率」这两个词;这是后人把他与笛卡尔等人的结果统一起来的形式。

斯涅尔自己的表述

SLSR=k(对所有入射方向)\frac{SL}{SR} = k \quad (\text{对所有入射方向})

眼睛在空气里看水中的一点 RR,光在水面 SS 点折射进眼,人会觉得 RR 升到了过 RR 的竖直线上的 LL 点。据福修斯(1662)与阿姆斯特丹手稿目录的记载,斯涅尔断言:不管从哪个方向看,「视在光线」SLSL 与「真实光线」SRSR 的长度之比都不变。换成角度,这正是入射角与折射角的余割之比为常数,与正弦定律等价。

临界角与斯涅尔窗

sin⁡θc=1n⇒θc≈48.6∘ (水)\sin\theta_c = \frac{1}{n} \quad\Rightarrow\quad \theta_c \approx 48.6^\circ \ (\text{水})

从水下往上看,只有与竖直方向夹角小于临界角 θc\theta_c 的光能穿出水面,更斜的一律被全反射。于是水面以上整个半边天空被压进一个顶角约 97° 的圆锥里,潜水员抬头看到的就是水面上一块明亮的圆窗。这个名字是后人按定律起的,斯涅尔本人没有讨论过它。

《圆的度量》里的夹逼

3sin⁡θ2+cos⁡θ<θ<2sin⁡θ+tan⁡θ3\frac{3\sin\theta}{2+\cos\theta} < \theta < \frac{2\sin\theta + \tan\theta}{3}

古典方法用圆内接、外切正多边形夹住 π\pi,边数要翻很多倍才多得一位。斯涅尔在 1621 年的《圆的度量》里改用这对不等式,据麦克图特的数学史传记,同样用正 96 边形能把 π\pi 算准到小数点后 7 位,而阿基米德的原法只有 2 位。左边一半与库萨的尼古拉的结果一致;斯涅尔的论证并不严格,1654 年惠更斯才给出证明。

伟大发现