4、序列模式核心概念:序列光线追迹原理、面型类型、坐标系统、光线数据、孔径和视场定义

序列模式(Sequential Mode)是 Code V 乃至绝大多数光学设计软件(如 Zemax OpticStudio 的序列模式)最核心的计算引擎。在序列模式下,光线按照用户定义的表面顺序,从物方空间依次通过每一个光学表面,最终到达像面。这种“逐面追迹”的确定性流程,使得系统评价函数(如波前差、MTF、点列图)能够被快速且稳定地计算。理解序列模式的底层逻辑——包括光线如何传播、面型如何描述、坐标如何统一、孔径与视场如何约束——是进行后续优化设计的基础。本章将深入拆解这五大核心概念,帮助您建立完整的序列追迹心智模型。

序列模式核心概念关系图 物面 OBJ 视场定义 表面 1 曲率/厚度 表面 2 非球面 表面 3 光阑 STO 像面 IMG 评价函数 轴外光线追迹路径 坐标系统 · 全局/局部坐标 · 偏心/倾斜 (T/D) · 右手笛卡尔 面型类型 · 球面/非球面 · 衍射面/自由曲面 · 偶次/奇次多项式 光线数据 · 入瞳坐标 (Px,Py) · 视场坐标 (Hx,Hy) · 波长/权重 孔径定义 · 入瞳直径 / F/# / NA · 光阑面位置与尺寸 · 渐晕与光束限制 视场定义 · 物高 / 像高 / 角度 · 归一化视场坐标 · 权重分配 序列模式:光线按表面顺序传播,孔径与视场共同决定光线采样网格

上图展示了序列模式中各核心概念之间的逻辑关系。光线从物面出发,依次经过各光学表面(包括光阑面),最终到达像面。在此过程中,坐标系统定义了光线在空间中的位置与方向,面型类型决定了光线在表面上的折射/反射行为,光线数据则记录了光线在入瞳和视场上的归一化坐标,而孔径与视场共同约束了参与追迹的光线集合。下面我们将逐一深入剖析。

4.1 序列光线追迹原理:从物面到像面的确定性传播

序列光线追迹的核心思想是:光线在光学系统中的传播路径完全由表面的顺序和面型参数决定,不存在“分支”或“反射后再回到前方表面”的情况(除非显式定义反射面并调整表面顺序)。在 Code V 中,系统由一系列表面(Surface)组成,每个表面都有一个序号(0 表示物面,中间表面依次编号,最后一个为像面)。光线追迹时,软件从物面发出光线,计算光线与第一个表面的交点,然后根据斯涅尔定律(折射)或反射定律,求出光线在该表面后的新方向,再继续追迹到下一个表面,如此循环直至像面。

这一过程的核心数学工具是矢量形式的斯涅尔定律:

n' * (L' × N) = n * (L × N)

其中,n 和 n' 分别为入射介质和出射介质的折射率,L 和 L' 为入射和出射光线的单位方向矢量,N 为表面法线矢量。Code V 内部使用高精度浮点运算,并支持实际光线追迹(Real Ray Tracing)与近轴光线追迹(Paraxial Ray Tracing)两种模式。实际光线追迹用于计算像差、点列图等真实性能;近轴光线追迹则用于计算系统的一阶光学特性(如焦距、主面位置、F/#)。

关键理解:序列模式假设光线在表面之间的介质是均匀的(折射率恒定),且表面是理想几何面(无散射、无衍射效应,除非定义了衍射面)。这意味着光线追迹是纯几何光学问题,不涉及物理光学中的干涉、偏振(除非启用偏振追迹)等效应。对于大多数成像系统设计,这一假设是足够精确的。

4.2 面型类型:从球面到自由曲面的数学描述

Code V 支持数十种面型类型,但最常用的可以归为以下几大类。面型的选择直接决定了系统的像差校正能力和设计自由度。

面型类型 数学表达式(简化) 典型应用场景 Code V 中的表示
球面(Sphere) z = c·r² / (1 + √(1 - (1+k)·c²·r²)),其中 k=0 常规透镜、反射镜 SPH
偶次非球面(Even Asphere) z = c·r² / (1 + √(1 - (1+k)·c²·r²)) + A₂r² + A₄r⁴ + ... 手机镜头、车载镜头、激光准直 ASP(偶次)
奇次非球面(Odd Asphere) 包含 r¹, r³, r⁵ 等奇次项 某些特殊像差校正 ASP(奇次)
衍射面(Diffractive) 相位分布 φ(r) = 2π/λ₀ · (A₁r² + A₂r⁴ + ...) 消色差、光谱仪、激光光束整形 KIN / ZRN
自由曲面(Freeform) Zernike 多项式或 XY 多项式 AR/VR 光学、离轴反射系统、汽车 HUD XYP / ZRN
环形面(Toric) 两个正交方向曲率不同 柱面镜、变形系统 TOR

在 Code V 中,面型参数通过 SLS(Surface Listing)或 SPC(Surface Property Change)命令定义。例如,定义一个偶次非球面,需要指定曲率半径(Radius)、圆锥系数(Conic)、以及各阶非球面系数(A4, A6, A8...)。面型的选择需要权衡设计自由度和加工可行性——非球面能显著改善像差,但高阶非球面可能难以加工和检测;自由曲面提供了极大的设计自由度,但对加工和装调提出了极高要求。

经验建议:在初始设计阶段,尽量使用球面或低阶非球面(A4、A6),待系统架构确定后再逐步引入高阶项或自由曲面。这有助于避免陷入局部极小值,并保证设计的可制造性。

4.3 坐标系统:全局坐标与局部坐标的转换

Code V 使用右手笛卡尔坐标系。光轴方向通常定义为 Z 轴(光线传播方向为正),X 轴和 Y 轴垂直于光轴。每个表面都有自己的局部坐标系,其原点位于表面顶点(Surface Vertex)。当系统存在偏心(Decenter)或倾斜(Tilt)时,局部坐标系相对于全局坐标系发生平移和旋转。

在序列模式下,坐标转换遵循“先偏心后倾斜”的规则(在 Code V 中通过 DEC 和 TIL 命令定义)。具体来说,光线到达一个表面时,首先根据该表面的偏心量(XDE, YDE)和倾斜量(ADE, BDE, CDE)将光线坐标从全局系转换到局部系,然后计算交点与折射,再将结果转换回全局系,继续追迹到下一个表面。

表面定义示例(Code V 命令行):
SLS 3  ; 选择表面 3
RDY 50.0  ; 曲率半径 50mm
THI 5.0   ; 厚度 5mm
DEC 2.0 0.0  ; X 方向偏心 2mm
TIL 0.0 1.5 0.0  ; 绕 Y 轴倾斜 1.5 度

理解坐标系统对于处理离轴系统(如离轴三反)和折叠光路(如潜望式镜头)至关重要。在这些系统中,光轴不再是直线,而是被反射镜折叠。此时,每个反射面后的坐标方向都会改变,Code V 会自动处理这些变换,但设计者必须清楚每个表面的局部坐标方向,否则容易在定义后续表面时出错。

常见误区:初学者容易混淆“偏心”和“倾斜”的顺序。在 Code V 中,先执行偏心,再执行倾斜。如果先倾斜再偏心,结果会完全不同。例如,一个透镜先绕 Y 轴倾斜 2°,再沿 X 轴偏心 1mm,与先偏心 1mm 再倾斜 2° 所得到的最终位置和光轴方向是不同的。务必在 SLS 中检查坐标转换的优先级。

4.4 光线数据:归一化坐标与光线采样

在序列模式中,每条光线都由两个关键参数唯一确定:入瞳坐标(Px, Py)和视场坐标(Hx, Hy)。这两个坐标都是归一化的,取值范围通常在 [-1, 1] 之间。

  • 入瞳坐标 (Px, Py):表示光线在入瞳平面上的位置。Px² + Py² = 1 表示光线通过入瞳边缘,Px = Py = 0 表示主光线(Chief Ray)。
  • 视场坐标 (Hx, Hy):表示光线对应的物点位置。Hx = Hy = 0 表示轴上视场(物点在光轴上),Hx = 1, Hy = 0 表示最大视场(通常为最大物高或最大视场角)。

Code V 在计算像差(如赛德尔像差)和点列图时,会按照一定的采样模式生成光线网格。常见的采样模式包括:

  • 矩形网格(Rectangular Grid):在入瞳上均匀分布 Px, Py 网格点。
  • 六角形网格(Hexagonal Grid):更接近真实光瞳形状,采样效率更高。
  • 环形网格(Annular Grid):用于分析不同环带的光线。

光线数据的输出可以通过 RAY 命令查看,例如 RAY P1Y 0.0 0.0 可以追迹一条从视场中心、入瞳中心发出的光线(即主光线)。理解光线数据是进行像差分析的基础——例如,球差表现为不同入瞳高度(Px, Py)的光线在像面上聚焦点不同;彗差表现为轴外视场(Hx ≠ 0)的光线在像面上形成不对称的弥散斑。

实用技巧:在优化过程中,可以通过 SPO(Spot Diagram)命令快速查看点列图,并通过 RAY 命令追迹特定光线来诊断像差来源。例如,追迹边缘光线(Px=0, Py=1)和主光线(Px=0, Py=0),比较它们在像面上的交点差异,可以快速判断球差的大小。

4.5 孔径和视场定义:约束光线采样范围

孔径(Aperture)决定了系统允许通过的光束大小,直接影响系统的光通量和分辨率。在 Code V 中,孔径可以通过以下几种方式定义:

  1. 入瞳直径(Entrance Pupil Diameter, EPD):直接指定入瞳的物理直径。
  2. F/#(F-number):定义为焦距与入瞳直径之比。F/# = f / D。
  3. 数值孔径(Numerical Aperture, NA):NA = n · sin(θ),其中 θ 为物方或像方最大孔径角。常用于显微物镜等系统。

光阑(Stop)是限制光束的实际孔径光阑,通常位于某个光学表面或空气间隙中。在 Code V 中,通过 STO 命令指定光阑面。光阑的位置对像差(特别是场曲和畸变)有显著影响。

视场(Field)定义了系统需要成像的物方范围。视场可以用以下方式表示:

  • 物高(Object Height):对于有限共轭系统(如显微镜、投影镜头),直接指定物面上的最大高度(mm)。
  • 像高(Image Height):对于无限共轭系统(如照相镜头),指定像面上的最大高度。
  • 视场角(Field Angle):对于无限共轭系统,指定最大半视场角(度)。

在 Code V 中,通过 FIE(Field)命令定义视场点。可以定义多个视场(如 0, 0.5, 0.7, 1.0 视场),并为每个视场分配权重(Weight),权重用于优化时评价函数的加权计算。

视场定义示例(Code V 命令行):
FIE 0.0 0.0 1.0  ; 轴上视场,权重 1.0
FIE 0.0 0.5 0.8  ; 0.5 视场(Y 方向),权重 0.8
FIE 0.0 1.0 0.5  ; 最大视场,权重 0.5
风险提示:视场定义过少(如仅定义轴上视场)会导致优化结果在轴外视场性能极差。反之,视场定义过多且权重分配不当,可能导致优化过程过于保守,难以收敛。通常建议至少定义 3-5 个视场(0, 0.3, 0.5, 0.7, 1.0),并根据实际应用需求调整权重。例如,对于广角镜头,边缘视场的权重应适当提高,以保证边缘画质。

4.6 实战场景:一个双胶合透镜的序列模式设置

为了将上述概念串联起来,我们以一个经典的双胶合消色差透镜为例,演示如何在 Code V 中设置序列模式系统。

设计目标:设计一个焦距 f = 100mm,F/# = 5(入瞳直径 D = 20mm),半视场角 2° 的可见光消色差透镜。使用 K9(n=1.5168, v=64.2)和 F2(n=1.6242, v=36.1)玻璃。

操作步骤:

  1. 初始化系统:使用 NEW 命令新建一个镜头文件。
  2. 定义系统孔径:输入 EPD 20.0 设置入瞳直径为 20mm。
  3. 定义视场:输入 FIE 0.0 0.0 1.0(轴上)、FIE 0.0 1.0 0.5(最大视场角 2°)。注意,Code V 默认视场单位为角度(对于无限共轭系统)。
  4. 定义表面数据:
    SLS 1
    RDY 62.5  ; 第一面曲率半径
    THI 5.0   ; 第一片透镜厚度
    GLN K9    ; 玻璃材料
    
    SLS 2
    RDY -45.0 ; 胶合面曲率半径
    THI 3.0   ; 第二片透镜厚度
    GLN F2    ; 玻璃材料
    
    SLS 3
    RDY -120.0 ; 最后一面曲率半径
    THI 95.0   ; 后焦距(近似)
  5. 设置光阑:将光阑放在第一面上(或第一面之前)。输入 STO 1 将表面 1 设为光阑面。
  6. 检查系统:使用 LIS(Listing)命令查看系统数据,使用 SPO 查看点列图,使用 RAY 追迹主光线和边缘光线。

结果分析:通过 SPO 可以看到,轴上视场的点列图接近艾里斑(衍射极限),而最大视场的点列图可能因场曲和像散而变大。此时,可以通过优化曲率半径和厚度来改善。在优化时,需要将曲率半径设为变量(SLS 1 RDY V),并定义评价函数(自动优化或手动编写误差函数)。

复盘经验:在设置序列模式时,务必先定义孔径和视场,再输入表面数据。因为孔径和视场决定了光线的采样范围,如果先输入表面数据再改孔径,可能会导致光线追迹失败(如光线全反射或超出表面口径)。此外,对于双胶合透镜,胶合面的曲率半径不宜过小,否则会产生较大的高阶像差。

4.7 常见误区与总结复盘

在序列模式的学习和实践中,以下误区最为常见:

误区 后果 正确做法
混淆视场单位(角度 vs 物高) 系统实际视场与设计不符,优化结果无效 在 FIE 中明确单位,无限共轭用角度,有限共轭用物高
光阑位置设置不当 系统 F/# 变化,像差分布异常 光阑应放在能有效限制光束的位置,通常为第一面或中间面
忽略坐标转换顺序 偏心/倾斜后的表面位置错误 牢记“先偏心后倾斜”规则,并在 SLS 中检查
面型选择过于复杂 优化难以收敛,加工困难 从球面开始,逐步增加非球面阶数
光线采样不足 点列图无法反映真实像差 使用 SPO 时增加光线密度(如 32x32 网格)

总结:序列模式是 Code V 优化的基石。掌握光线追迹原理、面型类型、坐标系统、光线数据以及孔径和视场定义,是进行任何光学设计的前提。在实际操作中,建议遵循以下流程:先定孔径和视场 → 再建表面模型 → 检查光线追迹 → 分析像差 → 开始优化。每一步都需要对底层概念有清晰的理解,才能避免“黑盒”式的盲目操作。

核心要点回顾:
  • 序列追迹是逐面、确定性的几何光学计算。
  • 面型类型决定了像差校正能力,但需权衡可制造性。
  • 坐标系统(全局/局部)是处理偏心、倾斜和离轴系统的基础。
  • 光线数据(Px, Py, Hx, Hy)是像差诊断的“语言”。
  • 孔径和视场共同定义了光线的采样空间,是优化的输入边界。