3. 探测器与接收器:从光子到数据

探测器这东西,说白了就是系统的「眼睛」。没有它,你追再多的光线也是白搭。我刚开始学非序列仿真时,总觉得随便放个探测器就行,结果数据出来完全对不上——后来才发现,探测器类型、像素、采集模式,每一个细节都在影响最终结果。

这一章,咱们就把探测器聊透。

3.1 探测器类型:矩形、圆形、球面

Zemax 里常用的探测器就三种:矩形、圆形、球面。选哪个,取决于你的接收面长什么样。

类型 适用场景 我的经验
矩形探测器 平面接收,如 CMOS、屏幕、均匀照明面 90% 的场合都用它,简单可靠
圆形探测器 圆形光斑、光纤端面、透镜出瞳 注意边缘像素的采样率,容易偏低
球面探测器 全空间辐照度、积分球、生物组织散射 我做过一次 LED 全空间配光,球面探测器是唯一选择

我个人习惯是:先想清楚接收面是平面还是曲面。平面用矩形,圆形光斑用圆形,全空间分析用球面。别上来就选球面,计算量会大很多。

小技巧: 矩形探测器可以设置 # X Pixels 和 # Y Pixels 不同值。比如你只关心一维分布,可以把另一维设为 1,省内存。

3.2 像素与分辨率设置

像素设置,是探测器最容易被忽视的坑。我见过有人把像素设成 1024×1024,结果仿真跑了一整天——其实 64×64 就够用了。

分辨率怎么选?记住一个原则:像素尺寸 ≤ 你关心的最小特征尺寸的 1/3。

举个例子:

  • 你要看的光斑直径是 1 mm
  • 最小特征(比如暗环)宽度约 0.1 mm
  • 那像素尺寸至少 ≤ 0.033 mm
  • 如果探测器宽度 10 mm,像素数 = 10 / 0.033 ≈ 300

嗯,300 像素就够了,没必要上 1024。

避坑指南: 我曾经在分析激光光斑时,把像素设得太少(32×32),结果光斑形状完全失真,以为是系统设计错了。后来发现是像素不够,采样定理没满足。记住:像素太少 → 混叠;像素太多 → 慢死。

3.3 数据采集模式:相干 vs 非相干

这个选择,直接决定你看到的是「强度」还是「干涉」。很多人搞混,我一开始也吃过亏。

模式 物理含义 典型应用
非相干 各光线能量直接相加,不考虑相位 照明、LED、太阳光、均匀光
相干 考虑相位叠加,产生干涉 激光、干涉仪、全息、衍射

你想想看,如果你用 LED 照明,光线之间没有固定相位关系,用相干模式就是错的——结果会出现虚假的干涉条纹。反过来,激光系统用非相干模式,你会丢失所有干涉信息。

我个人习惯:不确定时先用非相干跑一遍,看个大概;需要精细分析时再切相干。因为相干模式计算量更大,而且对光线数量要求更高。

关键点: 相干模式下,探测器记录的是 复振幅,而非强度。你需要用 Coherent Irradiance 查看结果。非相干模式直接看 Irradiance 就行。

3.4 探测器查看器与数据分析

跑完仿真,数据怎么看?Zemax 的探测器查看器(Detector Viewer)功能很强大,但很多人只看了个颜色图就完事了。

我一般会做这几步:

  1. 看颜色图 —— 先确认光斑形状、位置、有没有异常
  2. 看剖面图 —— 切一刀,看强度分布曲线
  3. 看数值 —— 峰值、总功率、均匀性指标
  4. 导出数据 —— 用文本格式导出,做进一步分析

举个例子,你设计一个均匀照明系统:

  • 颜色图看起来挺均匀?别信眼睛
  • 看剖面图,计算 均匀度 = (最小值 / 最大值)
  • 如果均匀度 > 90%,才算合格

我曾经做过一个投影系统,颜色图看着完美,结果剖面图一拉,边缘掉了一半——颜色图的色阶骗了你。

数据导出技巧: 在 Detector Viewer 里右键 → Export → Text。导出的数据可以用 Python 或 Excel 做后处理。我习惯用 Python 画等高线图,比内置图更灵活。

3.5 知识体系总览

下面这张图,把探测器相关的核心逻辑串起来了。你可以把它当作本章的「地图」。

探测器与接收器知识体系 探测器与接收器 探测器类型 像素与分辨率 采集模式 矩形 圆形 球面 像素数 像素尺寸 采样定理 非相干 相干 数据分析:颜色图 → 剖面图 → 数值 → 导出 像素数 = 探测器宽度 / 像素尺寸 像素尺寸 ≤ 最小特征 / 3 非相干:强度直接相加 相干:复振幅叠加

这张图把探测器类型、像素设置、采集模式、数据分析串成了一条线。你从中心出发,先选类型,再定像素,然后选模式,最后分析数据——每一步都有对应的参数和注意事项。

嗯,探测器这部分,说白了就是「怎么把光线变成可信的数据」。选对类型、设对像素、用对模式,你的仿真结果才有意义。我见过太多人在这上面翻车,希望你能一次走对。