1. 从“最短时间”到“完美成像”费马原理的物理直觉搞光学设计或者做镜头评测的朋友肯定都绕不开一个词像差。球差、彗差、像散、场曲、畸变这些家伙是破坏成像质量的元凶。我们设计镜头的核心目标就是通过各种镜片的组合与曲面设计把这些像差压到最低。但你想过没有这个“压到最低”的终极标准是什么或者说光在镜头里“选择”哪条路径走背后的总指挥是谁这个总指挥就是费马原理。它不像牛顿定律那样告诉你力与加速度的关系也不像麦克斯韦方程组那样描述电磁场的演化。费马原理用一种近乎“哲学”的方式为光的传播定下了一条最高准则光从空间中的一点传播到另一点所走的实际路径是所需时间取极值通常是极小值偶尔是恒定值或极大值的那一条。我第一次理解这个原理时感觉非常反直觉。光又没长眼睛它怎么知道哪条路“最快”后来才明白我们不应该把光想象成一个小球在“选择”路径而应该理解为在所有可能的路径中只有那些满足“时间极值”条件的路径其光波才能发生相长干涉从而被我们观测到其他路径的光波则因相消干涉而抵消。这是从波动光学角度更本质的理解但对于几何光学费马原理的“最短时间”表述已经足够强大和直观。举个例子这就是为什么光在均匀介质中走直线。因为两点之间直线最短时间自然也最短。当光从空气斜射入水中发生折射时为什么它要“拐弯”因为虽然直线路径在空气中部分更短但在水中部分更长而光在水中的速度比在空气中慢折射率n c/vn越大速度v越慢。为了最小化总时间光会“聪明地”调整入射角度让它在水中走的“慢速路段”尽可能短一些在空气中走的“快速路段”长一些。这个最优解恰恰就是斯涅尔折射定律。你可以用简单的微积分推导出来设光在空气和水中的速度分别为v1和v2入射角和折射角为θ1和θ2写出总时间t关于光在界面上落点坐标x的函数然后令dt/dx0就能直接得到 n1 sinθ1 n2 sinθ2。费马原理以一己之力“生成”了几何光学中最基础的折射定律。在光学系统里费马原理的威力就更大了。它直接定义了什么是完美成像。对于一个理想的光学系统如果物点A能完美地成像在像点A‘那么费马原理要求从A点出发经过光学系统中任意路径到达A’点的所有光线它们的光程光程 折射率 n × 几何路径 s必须严格相等。这就是等光程原理。注意这里说的是“光程”相等而不是“时间”相等。因为光程 ns c(s/v) c*t光程相等等价于时间相等。在光学设计中我们更常用光程这个概念。想想看这意味着什么从物点发出的无数条光线有的走系统中心近轴光线有的走边缘边缘光线它们走过的几何路径千差万别穿过的玻璃厚度和类型也不同。但一个完美的镜头必须通过其复杂的曲面设计让所有这些光线的总光程完全一致。只有这样所有光线才会在像点处同相位叠加形成一个最锐利、最清晰的点像。如果光程不相等有的光波峰到达有的光波谷到达它们就会相互干涉削弱像点就会扩散成一个模糊的光斑——这就是像差的根源。所以当你下次用MTF曲线来评价一个镜头时本质上就是在衡量这个镜头对不同视场、不同孔径的光线其等光程条件满足得有多好。费马原理就是这个评判体系的终极理论基石。2. 光束的“纪律性”马吕斯定律与波阵面演化理解了光如何选择路径费马原理我们再来看看一束光作为一个整体在传播过程中遵循什么规律。这就引出了马吕斯定律有时也叫马吕斯-杜平定理。它的表述非常简洁垂直于波阵面的光线在经过任意多次的折射和反射后仍然垂直于变化后的新波阵面并且这些光线始终保持与光程的等值面即波阵面正交。听起来有点绕我们拆开看。首先什么是波阵面你可以想象向平静的水面扔一块石头激起的涟漪一圈圈向外扩散。每一圈涟漪的“波峰”连成的面就是一个波阵面。对于点光源发出的球面波波阵面就是以点光源为中心的球面。对于平行光如太阳光波阵面就是平面。而“光线”在几何光学的模型里就是垂直于这些波阵面的一根根有方向的直线。马吕斯定律的第一层意思是光线和波阵面这种垂直关系是“遗传”的。无论这束光经历了多么复杂的折射穿过各种透镜和反射被镜子折腾只要介质是均匀的、各向同性的那么出来的光线仍然会乖乖地垂直于它出来时所处的那个波阵面。这保证了“光线”这个模型在复杂光学系统中的一致性。第二层意思更关键它关乎光束的“纪律性”。考虑一个完美成像系统根据费马原理的等光程推论从物点A到像点A‘所有光线的光程相等。那么以A点为中心的初始球面波等光程面经过系统后必然会变成一个以A’点为中心的球面波。也就是说一个完美的成像系统会将发散的球面波转换为会聚的球面波。马吕斯定律则进一步保证了在这个过程中所有光线都规规矩矩地保持与波阵面垂直从而完美地会聚到一点。这个定律在实际中的一个重要应用是分析像散光束。当波阵面不是标准的球面时比如像一个橄榄球表面垂直于不同方向截线的光线其会聚点会不同这就是像散。马吕斯定律为我们用几何光线追迹来分析和计算这种复杂的波像差提供了理论依据。在光学设计软件如Zemax, Code V中进行光线追迹时软件底层正是在不断应用斯涅尔定律折射反射和马吕斯定律保持光线与波面正交来计算出每根光线的路径。我个人的一个深刻体会是马吕斯定律和费马原理是相辅相成的。费马原理从“路径选择”的变分角度给出了光的宏观行为准则而马吕斯定律则从“光束结构”的几何角度描述了光线与波面的微观约束关系。两者结合构成了几何光学分析大厦的两根核心支柱。3. 理想成像的数学刻画高斯光学与共线变换理论前面我们一直在说“完美成像”但现实中除了平面镜几乎没有光学系统能做到绝对完美。那么我们如何描述一个“尽可能好”的成像状态呢这就需要引入一个简化模型——高斯光学也叫近轴光学。高斯光学做了一个非常强的假设只考虑那些与光轴系统的对称轴夹角非常小、且离光轴非常近的光线。在这个假设下所有角度的正弦值、正切值都可以用角度本身弧度制来近似替代即 sinθ ≈ tanθ ≈ θ。这个近似就像物理学中单摆的小角度近似一样能瞬间让复杂的三角函数关系全部退化为线性关系。在高斯光学领域里奇迹发生了点成点一个物点必然对应一个像点。线成线一条直线必然成像为一条直线。面成面一个平面必然成像为一个平面。这种物像之间一一对应、直线对应直线的变换关系在数学上称为共线变换。高斯光学就是研究满足共线变换条件的光学系统理论。它虽然是一种理想模型但却是所有实际光学设计的起点和基准。我们常说的透镜焦距、物距、像距之间的公式1/u 1/v 1/f以及放大率公式都是在高斯光学范畴内严格成立的。这里有一个非常核心的概念需要厘清高斯像面。它指的是一个光学系统在完全满足高斯光学近轴条件下所成的完美像所在的位置。这个像面是一个理想的参考基准。所有实际像差球差、彗差等的衡量都是相对于这个高斯像面而言的。比如“球差导致焦点前移”意思是实际光线会聚点在高斯像面的前方。在实际设计镜头时我们的工作流程往往是首先根据系统要求焦距、视场、F数用高斯光学公式确定一个初始结构需要几片透镜、大概的焦距分配。这个初始结构在近轴区域是完美成像的。然后我们放开近轴限制引入真实的光线有大角度的、有离轴的用费马原理和马吕斯定律去追迹它们计算它们与高斯像面的偏差——这些偏差就是像差。最后通过不断优化透镜的曲率、厚度、间距、材料来减小这些偏差。所以高斯光学是那张“设计蓝图”而基于费马原理的像差分析则是“施工和纠偏”的过程。4. 从原理到实践像差产生的几何图像与矫正思路理解了完美成像的标准等光程和理想模型高斯光学我们就能直观地理解各种像差是如何产生的了。本质上像差就是因为实际光线不满足等光程条件。不同视场、不同孔径的光线其光程相对于高斯像点的光程存在差异这种差异就是波像差。从几何上看就表现为光线没有会聚到同一个点。我们可以把像差分为两大类单色像差与颜色无关和色差与颜色有关。单色像差主要有五种赛德尔像差4.1 球差这是轴上点像差。从轴上物点发出的不同孔径高度的光线经过透镜后边缘光线的偏折比近轴光线更厉害对于正透镜导致它们相交于光轴上不同的点。边缘光线焦点更靠近透镜近轴光线焦点更远。结果就是无论你把接收屏放在哪里都得不到一个清晰的点而是一个弥漫的圆斑。矫正思路使用非球面镜片可以完美矫正单一波长的球差因为非球面可以针对不同孔径高度精确调整折射力。更常用的方法是使用正负透镜组合胶合或分离利用它们球差符号相反的特性来抵消。4.2 彗差这是轴外点像差。对于轴外物点通过透镜不同环带的光线会聚在像平面上不同的高度形成一个类似彗星尾巴的亮斑尖端亮尾部渐暗。彗差严重影响轴外像点的锐度。矫正思路严格控制透镜的形状弯月形透镜有利于减小彗差采用对称或近似对称的结构如双高斯结构可以很好地矫正彗差。同样满足“正弦条件”是消除彗差的关键。4.3 像散同样是轴外点像差且更为常见。它表现为从轴外物点发出的光束其子午面含光轴和主光线的平面内的光线与弧矢面垂直于子午面且含主光线的平面内的光线会聚在不同的焦线上。一条是子午焦线切线方向一条是弧矢焦线径向方向。在两个焦线之间光束截面是一个椭圆在某一个位置会变成圆形最小弥散圆。矫正思路像散与透镜的弯曲程度和光阑位置密切相关。通过优化透镜形状和光阑位置可以使子午和弧矢焦面重合。复杂的镜头组通过元件的相互配合来平衡像散。4.4 场曲一个平面的物其完美成像面不是一个平面而是一个曲面如碗状。这意味着如果你用平面传感器去接收中心和边缘无法同时清晰。矫正思路场曲与透镜的折射率有关。引入负的场曲透镜如负透镜可以拉平像面。在胶片时代有些高端镜头故意设计一定的场曲来匹配胶片的卷曲。在数码时代则需要尽力矫正使像面平坦以匹配CMOS传感器。4.5 畸变这并不影响清晰度只影响形状。它表现为像的放大率随视场变化而变化。枕形畸变放大率随视场增大而增大和桶形畸变放大率随视场增大而减小是最常见的两种。矫正思路采用对称结构是消除畸变最有效的方法。因为对称结构中前半部分产生的畸变会被后半部分产生的相反畸变所抵消。4.6 色差由于透镜材料的折射率随波长变化色散不同颜色的光焦距不同。导致白光成像时蓝光、绿光、红光会聚在不同位置产生彩色镶边。矫正思路使用不同色散特性的玻璃材料组合如冕牌玻璃和火石玻璃胶合可以使两种波长的光聚焦于一点消色差甚至三种波长复消色差。在实际镜头设计中这些像差是同时存在、相互耦合的。优化过程就是一个复杂的权衡游戏。比如为了矫正球差和彗差可能会加剧场曲为了获得大光圈像差矫正的难度会指数级上升。这也就是为什么大光圈、高分辨率的镜头往往结构复杂、价格昂贵因为设计师要在费马原理划定的物理边界内进行极其精细的平衡。5. 现代光学设计中的费马原理光程差与波像差优化今天我们已经不再需要手工计算光路来进行镜头设计了。光学设计软件如Zemax, Code V, LightTools等承担了所有繁重的计算工作。但是这些软件的优化算法核心依然深深植根于费马原理。在软件中我们定义一个评价函数来量化当前设计有多“糟糕”。这个评价函数通常由许多操作数构成每个操作数代表一种需要控制的像差或系统参数。而其中最关键的一类操作数直接与光程相关。软件会追迹大量光线成千上万条从不同视场、不同孔径位置出发穿过整个光学系统到达像面。对于每一条光线软件会计算它的实际光程并与主光线或参考球面波的光程进行比较其差值就是这条光线的光程差。所有光线的光程差的平方和或加权平方和就构成了波像差的一部分被纳入评价函数。优化算法的任务如阻尼最小二乘法、全局优化等就是通过自动调整每个透镜表面的曲率、厚度、间距以及玻璃材料来最小化这个评价函数。这个过程本质上就是在寻找一组系统参数使得从物点到像点的所有可能光路的光程尽可能接近相等——这正是费马原理对完美成像的要求。我个人的经验是在使用这些软件时理解其物理本质至关重要。如果你只知道机械地添加操作数、设置权重而不明白背后的像差原理和光程意义那么当优化陷入局部极值或出现怪异结构时你将束手无策。例如当你发现某个视场的子午和弧矢方向MTF差异很大时你应该立刻联想到这是像散问题进而去检查该视场的光线扇斑图看看子午焦线和弧矢焦线是否分离。而像散的根源正是子午面和弧矢面内光线的光程分布不同。另一个重要的实践点是控制变量的思想。在优化初期应该先控制住主要像差如球差和彗差它们对中心视场影响大再逐步扩大视场处理像散和场曲最后处理畸变和倍率色差。同时必须将系统的物理约束如总长、后工作距、镜片中心边缘厚度作为硬性操作数加入评价函数否则软件可能会给出一个理论上像差很小、但完全无法加工和组装的“纸面设计”。6. 超越几何光学从光线到波动的认知跃迁我们整篇讨论的几何光学包括费马原理、马吕斯定律都建立在“光线”这个模型上。这是一个非常强大且实用的模型对于理解成像、设计镜头已经足够。但是我们必须清醒地认识到它的局限性。几何光学是波动光学在波长趋于零时的近似。它无法解释光的干涉、衍射、偏振等现象。当光学系统的孔径非常小或者我们追求接近衍射极限的分辨率时光的波动本性就必须被考虑进来。例如根据费马原理和完美成像条件一个没有任何像差的光学系统称为衍射极限系统应该能将点物成一个完美的点像。但从波动光学来看即使没有任何几何像差光通过有限孔径时也会发生衍射一个点物所成的像不是一个点而是一个由艾里斑组成的衍射图案。光学系统的分辨率极限瑞利判据正是由衍射决定的。那么费马原理在波动光学中是否还成立答案是以一种更深刻的形式成立。在波动光学中光沿着所有可能的路径传播每条路径对应一个相位。实际观测到的光强是所有路径贡献的复振幅的叠加路径积分。而费马原理所指的“光程取极值的路径”正是那些相位变化平缓、相邻路径相位基本相同的路径这些路径的贡献会相干叠加成为主要贡献。其他路径则因相位快速变化而相互抵消。因此费马原理可以看作是波动光学稳定相位近似下的结论。这种从“光线”到“波前”从“路径选择”到“相干叠加”的认知跃迁对于理解现代精密光学至关重要。在干涉测量、全息、计算成像等领域我们直接操作和处理的就是光波的相位信息。像差的描述也从几何光线的追迹偏差转变为波前的形变波像差。泽尼克多项式就是用来定量描述波前像差的一种标准方法。所以学习几何光学尤其是费马原理绝不仅仅是记住几个定律和公式。它是搭建起整个光学知识体系的脚手架。通过它你不仅能理解镜头为什么那样设计更能洞悉光与物质相互作用背后那简洁而深刻的统一性。当你下次拿起一个镜头看到的将不仅仅是玻璃和金属而是一套精妙地驾驭光程在物理定律边界内进行艺术创作的复杂系统。