数学基础(一):多项式表示法、坐标系与法向量计算

各位同学,欢迎来到《自由曲面光学设计核心技巧》的第一章。说实话,每次讲数学基础,我都怕把大家吓跑。但请相信我,这部分内容就像盖房子的地基——你看着不起眼,可要是没打好,后面盖多高都悬。

今天咱们聊三个核心话题:多项式表示法坐标系,还有法向量计算。这三样东西,几乎贯穿了自由曲面设计的每一个环节。我自己做了十几年自由曲面,回头想想,当初踩的坑,十有八九都跟这些基础概念没吃透有关。

1. 多项式表示法:自由曲面的“语言”

自由曲面不像球面,没法用一个简单的半径来描述。那怎么办?我们用数学函数来“说”出它的形状。最常用的两种“语言”就是XY多项式Zernike多项式

1.1 XY多项式:最直白的表达

XY多项式长这样:

z(x, y) = c·(x² + y²) / (1 + sqrt(1 - (1+k)·c²·(x²+y²))) + Σ A_ij · x^i · y^j

前面那一大串是二次曲面基底,后面那个求和项就是自由曲面的“自由”所在。说白了,就是用x和y的幂次组合,去一点点逼近你想要的形状。

我个人习惯,在初始设计阶段先用XY多项式。为什么?因为它直观。x的2次项对应什么?说白了就是像散。xy交叉项呢?那是离轴像差。你看着系数大小,基本能猜出这个面在矫正什么像差。

我的经验: 刚开始做自由曲面时,别一上来就用高阶项。我建议从4阶开始,最多到6阶。阶数太高,加工时容易出问题——你设计得再漂亮,做不出来也是白搭。

1.2 Zernike多项式:更“光学”的表达

Zernike多项式是另一个常用工具。它长这样:

z(ρ, θ) = Σ C_n^m · Z_n^m(ρ, θ)

这里ρ和θ是极坐标。Zernike多项式有个特别好的性质——它在单位圆内是正交的。这意味着什么呢?你调整一个系数,基本不影响其他系数。这在优化时太方便了。

我记得有一次,一个项目要求矫正特定阶数的球差。用XY多项式调了半天,总是牵一发而动全身。换成Zernike后,直接锁定对应的项,几轮优化就搞定了。

多项式类型 优点 缺点 我常用的场景
XY多项式 直观、与像差对应清晰 高阶项容易振荡 初始设计、离轴系统
Zernike多项式 正交性好、优化稳定 只适用于圆形孔径 优化后期、公差分析
注意: 千万别以为Zernike多项式在任何情况下都好用。如果你的光瞳不是圆的,比如是矩形或环形,那Zernike的正交性就没了。我曾经在这个问题上吃过亏,后来老老实实换回了XY多项式。

2. 坐标系:别让“方向”害了你

自由曲面设计里,坐标系是个容易出幺蛾子的地方。咱们主要用两种:局部坐标系全局坐标系

2.1 全局坐标系:整个系统的“地图”

全局坐标系就是整个光学系统的参考系。所有元件的位置、方向,都相对于这个坐标系来描述。一般把光轴方向定为Z轴,X和Y轴根据系统布局来定。

举个例子,一个离轴三反系统,每个反射镜的位置和倾斜,都是在全局坐标系里定义的。

2.2 局部坐标系:每个面的“小天地”

每个光学面都有自己的局部坐标系。原点通常在这个面的顶点,Z轴沿着面的法线方向。这样做的好处是,描述面形时不用考虑它放在哪里、转了多少度。

你想想看,如果一个面在全局坐标系里是倾斜的,你用全局坐标去描述它的面形,那表达式会复杂到让你怀疑人生。但用局部坐标系,面形表达式就简单多了。

核心要点: 设计时,面形用局部坐标系描述;系统布局用全局坐标系描述。两者之间通过旋转和平移矩阵转换。

我曾经带过一个新人,他直接把局部坐标系里的面形数据用到全局坐标系里,结果光线追迹全乱了。排查了两天才找到原因——坐标系搞混了。从那以后,我要求团队所有人在代码里明确标注每个变量是哪个坐标系下的。

3. 曲面法向量计算:光线追迹的“方向盘”

法向量决定了光线在曲面上的反射或折射方向。算错了法向量,后面的所有计算都是错的。

3.1 显式曲面的法向量

如果曲面用z = f(x, y)表示,法向量可以这样算:

N = (-∂f/∂x, -∂f/∂y, 1) / sqrt((∂f/∂x)² + (∂f/∂y)² + 1)

说白了,就是先求偏导,再归一化。对于XY多项式,求偏导就是多项式求导,很简单。对于Zernike多项式,需要用到递推关系,稍微复杂一点。

3.2 隐式曲面的法向量

有些曲面用隐式方程F(x, y, z) = 0表示。这时法向量就是梯度:

N = (∂F/∂x, ∂F/∂y, ∂F/∂z) / |∇F|

嗯,这里要注意,隐式曲面的法向量方向需要小心。我一般会检查一下法向量是否指向光线入射的那一侧,不对就取反。

避坑指南: 计算法向量时,一定要在局部坐标系里算,然后再转换到全局坐标系。我曾经图省事,直接在全局坐标系里算,结果因为曲面倾斜,偏导数算出来全是错的。

4. 知识体系总览

下面这张图,是我自己总结的本章知识结构。你可以把它当作一个“地图”,随时回来看看。

自由曲面数学基础 多项式表示法 XY多项式 Zernike多项式 坐标系 全局坐标系 局部坐标系 法向量计算 显式曲面法向量 隐式曲面法向量 三者关系:用多项式描述面形 → 在局部坐标系中计算 → 转换到全局坐标系使用 法向量是连接面形描述与光线追迹的桥梁 典型应用场景 照明系统设计 成像系统优化 公差分析与补偿 掌握这些基础,后续的曲面设计、优化、加工才能顺利进行

这张图把今天讲的内容串起来了。你看,多项式表示法是描述曲面的“语言”,坐标系是描述位置的“框架”,法向量计算则是连接设计与仿真的“桥梁”。三者缺一不可。

好了,第一章的内容就到这里。数学基础看起来枯燥,但真的值得花时间吃透。下一章咱们会聊更具体的曲面设计方法,到时候这些基础就会派上大用场。


专注资料整理