斯特列尔比的计算方法:近似公式、精确计算、数值模拟

斯特列尔比怎么算?这个问题我当年刚入行时也头疼过。说白了,它就是实际点扩散函数峰值与理想衍射极限峰值的比值。但真正算起来,有几种不同的路子,各有各的适用场景。

近似公式:快速估算的利器

项目前期或者做系统粗估时,我们没时间跑完整仿真。这时候近似公式就派上用场了。我个人最常用的是下面这个:

马雷夏尔近似公式

SR ≈ exp[-(2πσw/λ)²]

其中 σw 是波前误差的均方根值(RMS),λ 是工作波长。

这个公式成立的前提是波前误差较小(RMS ≤ λ/14),且误差分布接近高斯型。我在设计一款可见光成像物镜时,就用它快速判断了加工公差是否合理。

经验之谈

当 SR ≥ 0.8 时,马雷夏尔公式的误差通常在 5% 以内。低于 0.5 就别用了,偏差会大到让你怀疑人生。

还有一个更简单的经验公式:

SR ≈ 1 - (2πσw/λ)²

这个是一阶展开,只适用于 SR 接近 1 的情况。我一般只在写方案论证报告时用它,因为算起来快,客户也容易理解。

精确计算:从波前到点扩散函数

近似公式毕竟有局限。真要较真,就得走精确计算的路子。核心思路其实不复杂:

  1. 获取波前数据——从光学设计软件导出波前相位图,或者用干涉仪实测
  2. 计算光瞳函数——P(ρ,θ) = A(ρ,θ) · exp[i·W(ρ,θ)]
  3. 做傅里叶变换——点扩散函数 PSF = |FT{P(ρ,θ)}|²
  4. 求峰值比——SR = PSF实际(0,0) / PSF理想(0,0)

我曾经在一个激光雷达项目中用过这个方法。当时系统对 SR 要求极高(>0.95),近似公式算出来 0.97,但精确计算发现只有 0.91。嗯,问题出在波前误差不是高斯分布,而是有特定像差成分。

注意采样

做傅里叶变换时,光瞳采样点数至少要 128×128,否则峰值会偏低。我吃过这个亏,算出来的 SR 总是偏小,折腾了两天才找到原因。

数值模拟:Zemax / Code V 实战

实际工程中,我们很少手撸代码算 SR。光学设计软件都内置了 SR 计算功能。以 Zemax OpticStudio 为例:

1. 打开 Analysis → PSF → FFT PSF
2. 设置采样:256×256 或更高
3. 勾选 "Strehl Ratio" 选项
4. 运行分析,读取结果

但这里有个坑——软件默认的 SR 计算方式可能跟你想要的不一样。我记得有一次,Zemax 算出来 SR=0.85,但我用精确公式手算却是 0.78。后来发现,软件默认用了不同的参考球面。

计算方法 精度 速度 适用场景
马雷夏尔近似 中等(SR≥0.8时较好) 极快 初步评估、公差分析
精确傅里叶计算 高 较慢 最终验证、像差诊断
软件数值模拟 高(需正确设置) 中等 工程设计、优化迭代

三种方法的对比与选择

你想想看,这三种方法其实对应了不同的工程阶段:

  • 概念设计阶段——用近似公式,5 分钟出结果,判断方案是否可行
  • 详细设计阶段——用软件模拟,反复优化像差,盯着 SR 变化
  • 最终验证阶段——用精确计算或实测数据,确认是否达标

我曾经在一个项目中,客户要求 SR≥0.9。我用近似公式算出来 0.92,觉得稳了。结果加工出来后实测只有 0.82。为什么?因为近似公式没考虑加工误差和装调误差。从那以后,我养成了一个习惯:近似公式只用来做趋势判断,最终指标一定要用精确计算或实测来确认。

我的建议

日常工作中,先用马雷夏尔公式快速筛选方案,再用软件做精细优化。最后出图前,务必用精确傅里叶方法验证一次。三步走,基本不会翻车。

知识结构图

下面这张图梳理了斯特列尔比计算的完整脉络,从输入到输出,三种方法各自的位置一目了然:

斯特列尔比计算方法知识结构 波前误差数据 近似公式法 马雷夏尔公式 SR ≈ exp[-(2πσ/λ)²] 精确傅里叶计算 步骤: ① 构建光瞳函数 P ② FFT → PSF → 取峰值比 软件数值模拟 Zemax / Code V FFT PSF → Strehl Ratio 斯特列尔比 SR 值 像差评估 → 系统优化 → 指标验证

避坑指南

最后分享几个我踩过的坑:

  • 波前误差的参考球面——计算 SR 时,参考球面选错了,结果能差 0.1 以上。一定要确认是"最佳参考球面"还是"近轴参考球面"。
  • 采样不足——FFT 计算时采样点太少,SR 会偏低。128×128 是底线,256×256 更稳妥。
  • 忽略偏振效应——高 NA 系统或镀膜敏感的系统,偏振会影响 SR。我有个项目就是没考虑偏振,仿真和实测对不上。
  • 近似公式滥用——波前误差大或者有特殊像差(如彗差、像散)时,马雷夏尔公式会严重偏离真实值。

一个小技巧

如果你用 Zemax,可以在评价函数里直接设置 SPHA、COMA、ASTI 等像差操作数,配合 STRE 操作数实时监控 SR 变化。这样优化时能直观看到每种像差对 SR 的影响。