3、光学设计软件中的斯特列尔比分析
这一章咱们来点实操的。说白了,斯特列尔比不是光在纸上算的,你得在软件里真正把它调出来看。我见过不少新手,公式背得滚瓜烂熟,一打开Zemax就懵了——PSF在哪儿?Strehl Ratio又藏在哪个菜单里?
嗯,今天我就带你把这层窗户纸捅破。咱们重点讲Zemax和Code V这两款主流软件,最后再聊聊它们之间的那点“小九九”。
3.1 Zemax中PSF与斯特列尔比的计算
Zemax是我用得最多的软件。它的PSF分析功能很强大,但入口藏得有点深。我第一次用的时候,愣是找了五分钟才找到。
3.1.1 打开PSF分析窗口
路径很简单:Analysis → Image Quality → PSF。你会看到一个对话框,里面有几个关键参数需要设置。
3.1.2 关键参数设置
在PSF窗口里,这几个参数你得盯紧了:
- Sampling(采样):默认是64x64,但精度不够。我建议至少设到128x128,如果系统像差很小,256x256更稳妥。
- Image Size(像面大小):别设太大,否则PSF会被压缩得看不清。一般取Airy斑直径的2-3倍就够了。
- Field(视场):选你关心的那个视场点。中心视场通常最好,边缘视场才是考验功夫的地方。
3.1.3 读取Strehl Ratio
计算完成后,Zemax会在PSF图下方直接显示Strehl Ratio。你注意看,它写的是 Strehl Ratio: 0.985 这样的格式。
但这里有个坑——Zemax默认显示的是峰值Strehl比,也就是PSF峰值强度与理想衍射极限峰值的比值。如果你需要的是中心点Strehl比,得在设置里勾选相应的选项。
3.2 Code V中斯特列尔比的查看方法
Code V的操作逻辑和Zemax不太一样。它更偏向命令行风格,但熟悉之后其实更高效。
3.2.1 执行PSF计算
在Code V的命令行里输入:
PSF
或者通过菜单 Analysis → Diffraction → PSF 打开图形界面。我个人更喜欢命令行,因为可以写脚本批量处理。
3.2.2 查看衍射分析报告
Code V的Strehl Ratio藏在 Diffraction Analysis Report 里。你执行完PSF计算后,在输出窗口里找 Strehl Ratio 这个字段就行。
Code V会同时给出几个值:
- Strehl Ratio (Intensity):强度斯特列尔比,最常用。
- Strehl Ratio (Amplitude):振幅斯特列尔比,一般用不上。
- Normalized Strehl:归一化后的值,方便对比。
STR 命令直接提取Strehl Ratio数值,方便写宏或者做优化评价函数。比如:STR S1..F1 就能得到第一个视场的Strehl值。
3.3 不同软件间的差异与注意事项
你可能会问:同一个镜头,在Zemax和Code V里算出来的Strehl Ratio一样吗?
答案是:不一定。我做过对比测试,差异通常在0.01-0.03之间。为什么会这样?
| 差异来源 | Zemax | Code V | 影响程度 |
|---|---|---|---|
| PSF采样算法 | FFT为主 | 直接积分+FFT混合 | 中等 |
| 参考点定义 | 峰值强度 | 中心点强度 | 较大 |
| 波长权重处理 | 按光谱权重加权 | 等权重或自定义 | 中等 |
| 孔径离散化 | 矩形网格 | 极坐标网格 | 较小 |
你看,光是采样方式就不一样。Zemax用FFT,速度快但对采样点数敏感;Code V用直接积分,精度高但计算慢。所以,别指望两个软件算出完全一样的数值。
- 波长和权重完全一致
- 孔径形状和大小一致
- 视场点坐标一致
- PSF采样点数一致(至少128x128)
我曾经在一个项目里,客户要求Zemax和Code V的Strehl Ratio差异不超过0.005。我花了整整两天调参数,最后发现是波长权重定义不同导致的。嗯,从那以后我学乖了——先对齐设置,再谈对比。
3.4 实战建议
说了这么多,给你几条实在的建议:
- 选一个软件做主工具:我个人习惯用Zemax做日常优化,因为它的图形界面直观。但做最终验证时,我会用Code V再算一遍。
- 别迷信单一数值:Strehl Ratio 0.98和0.99在实际成像中可能看不出区别。你想想看,与其纠结小数点后第三位,不如多看看PSF的形状和能量分布。
- 建立自己的校验流程:我每次出图前,都会用两种方法算Strehl Ratio——软件自带功能 + 自己写的脚本。两者对得上,我才放心。