2. 非球面方程:偶次非球面方程详解

各位好,欢迎来到第二章。上一章我们聊了非球面为什么能拯救手机镜头的像质,这一章咱们就深入它的数学内核——偶次非球面方程。

说实话,我刚入行那会儿,看到这个方程也是一头雾水。一堆系数堆在一起,到底谁管谁?后来亲手调过几个项目,才慢慢摸清它们的脾气。今天我就把这些经验掰开了讲给你听。

2.1 偶次非球面方程的标准形式

先看方程长什么样。这是光学设计软件里最常见的形式:

z(r) = (c * r²) / (1 + sqrt(1 - (1 + k) * c² * r²)) + A₁ * r⁴ + A₂ * r⁶ + A₃ * r⁸ + A₄ * r¹⁰ + ...

其中:

  • z(r) —— 镜面在径向坐标 r 处的矢高(sag),也就是曲面偏离参考平面的高度
  • r —— 径向坐标,从光轴算起
  • c —— 顶点曲率(curvature),c = 1 / R,R 是顶点曲率半径
  • k —— 圆锥常数(conic constant)
  • A₁, A₂, A₃, A₄ ... —— 高阶非球面系数

这个方程分两部分:前半部分是二次曲面(圆锥曲面)基底,后半部分是纯非球面修正项。说白了,就是先搭一个基础形状,再用高阶项去修修补补。

2.2 各系数的物理意义

下面我们一个一个拆解。每个系数都有自己的脾气,搞懂了它们,你就能像调音师一样精准控制镜面形状。

2.2.1 曲率 c —— 曲面的“基础弯度”

曲率 c 决定了镜面在顶点处的弯曲程度。c 越大,顶点越弯;c 越小,顶点越平。c = 0 就是平面。

我习惯把 c 看作曲面的“骨架”。在优化初期,我通常会先固定 c,让光线基本能汇聚,然后再用高阶项去校正像差。你想想看,如果骨架都歪了,后面再怎么修也修不好。

小技巧: 在 Zemax 或 Code V 里,曲率半径 R 和曲率 c 是倒数关系。我个人习惯用曲率 c 做变量,因为它的变化范围更线性,优化收敛更快。

2.2.2 圆锥常数 k —— 曲面的“家族血统”

圆锥常数 k 决定了曲面的基础类型。它把曲面分成了几个大家族:

k 值范围 曲面类型 典型应用
k = 0 球面 传统镜头,加工最容易
-1 < k < 0 椭球面 部分非球面镜片,可校正球差
k = -1 抛物面 准直系统,无球差
k < -1 双曲面 反射系统,大视场校正
k > 0 扁椭球面 较少见,特殊校正场景

我在项目中遇到过一件事:有一次优化一个 5P 镜头,球差怎么都压不下去。后来我把第一片镜片的 k 从 0 改到 -0.6,球差直接降了一半。嗯,这就是圆锥常数的威力——它决定了曲面“从中心到边缘”的过渡趋势。

注意: 圆锥常数 k 只影响曲面的二次项形状,它不改变顶点曲率。也就是说,k 改变的是曲面“边缘翘起来”的程度,而不是“顶点有多弯”。

2.2.3 高阶项 Aᵢ —— 曲面的“精雕细琢”

高阶项 A₁, A₂, A₃ ... 是真正的非球面修正项。它们分别对应 r⁴, r⁶, r⁸ ... 的贡献。每一项的物理意义可以这样理解:

  • A₁ (r⁴项) —— 主要影响球差和初级像差。这是最常用的高阶项,我一般第一个打开它。
  • A₂ (r⁶项) —— 影响高阶球差和部分彗差。当 A₁ 调到头还不够时,就轮到它上场。
  • A₃ (r⁸项) —— 影响更高阶的像差,通常用于大孔径或大视场校正。
  • A₄ 及以上 —— 极精细调整,一般用在高端镜头或特殊波段。

我曾经犯过一个错误:为了追求 MTF 峰值,我把 A₁ 和 A₂ 同时开得很大,结果镜片边缘出现了“波浪形”起伏,加工出来根本没法用。后来我才明白,高阶项不是越多越好,每加一项都要看它对加工公差的影响。

核心原则: 高阶项从低到高依次开启。先调 A₁,不够再加 A₂,以此类推。不要一上来就开满所有项,那样只会让优化陷入局部极小值。

2.3 各系数之间的相互作用

这几个系数不是独立工作的。它们之间会互相影响,就像乐队里的不同乐器——配合好了是交响乐,配合不好就是噪音。

举个例子:你调大了 A₁ 来校正球差,但可能会发现场曲也跟着变了。为什么?因为 A₁ 改变了镜面边缘的斜率,从而影响了光线在不同视场下的聚焦位置。这时候你可能需要同时微调 k 或者曲率 c 来补偿。

我个人的优化习惯是:

  1. 先定曲率 c —— 保证基本光焦度
  2. 再调圆锥常数 k —— 校正初级球差
  3. 最后开高阶项 Aᵢ —— 精修残余像差

这个顺序不是死的,但新手按这个走,不容易翻车。

2.4 偶次非球面的知识体系

为了让你更直观地理解这些系数之间的关系,我画了一张结构图:

偶次非球面方程知识体系 偶次非球面方程 z(r) 曲率 c 圆锥常数 k 高阶项 A₁, A₂... 顶点弯曲程度 c = 1/R 决定基础光焦度 曲面家族类型 球面/椭球/抛物/双曲 校正初级球差 精雕细琢修正 r⁴, r⁶, r⁸ ... 校正高阶像差 三者协同:骨架 → 血统 → 精修 先定 c,再调 k,最后开 Aᵢ

2.5 实际设计中的系数选择策略

讲完了理论,咱们聊聊实战。在手机镜头设计里,非球面系数的选择有几个经验法则:

  • 项数选择: 一般 5P 镜头用到 A₁~A₃ 就够了,6P 以上可能需要 A₄。再多就容易过拟合。
  • 系数量级: A₁ 通常在 10⁻⁴ ~ 10⁻³ 量级,A₂ 在 10⁻⁵ ~ 10⁻⁴,每高一阶量级降一个数量级。如果出现异常大的系数,说明你的设计可能有问题。
  • 符号规律: 正系数会让镜面边缘“翘起来”,负系数会让边缘“塌下去”。具体用正用负,取决于你要校正哪种像差。
避坑指南: 我曾经遇到一个设计,MTF 怎么都上不去,查了半天发现是 A₁ 和 A₂ 的符号相反,导致镜面形状出现了“S 形”拐点。这种形状加工难度极大,而且对装配误差极其敏感。所以,检查系数符号的一致性,是每次优化后必做的功课。

2.6 小结

这一章我们把偶次非球面方程拆了个底朝天。曲率 c 是骨架,圆锥常数 k 是血统,高阶项 Aᵢ 是精修。三者配合好了,你就能设计出又薄又清晰的手机镜头。

记住我那句老话:先定 c,再调 k,最后开 Aᵢ。按这个顺序走,至少能保证你不走弯路。