评价函数编辑器
评价函数编辑器是你告诉优化器“好”是什么样子的地方。设计应当达到的每个目标,以及对层堆栈的每条约束,都在此处以一组**操作数(operands)**的形式存在。每个操作数是优化器试图驱动至目标值的单个数字,而评价函数(MF, merit function)是各操作数偏离目标程度的加权均方根:
MF = √( Σ_i w_i · (r_i / σ_i)² / W )权重 w_i 以线性方式进入。残差 r_i 对于等式目标是 value − target;对于不等式或约束是单边项,条件满足时为零;对于本身就是偏差的行(TGT、*FLAT 行、曲线块)则是该值本身。σ_i 让不同单位的行处于同一尺度,使以纳米计的波长偏差不会淹没反射率偏差;W 是所有有值的行的权重之和,MNT、MXT、TT 与 STR 除外。详见操作数参考。MF 越小越好;优化器(精炼、针式与渐进演化)通过移动层厚度来减小它。
下表是一个快速导引。完整目录(每种类型、其参数、其输出值与单位,以及它如何形成残差)在操作数参考页面。
| 组 | 类型 | 输出 |
|---|---|---|
| 单波长光学 | T R A |
单波长处的 T/R/A |
| 带平均 | TAV RAV AAV |
一个波段上的 T/R/A 均值 |
| 光谱目标 | TGT RGT AGT |
与一条平坦/斜坡线的偏差 |
| 加权积分 | TIW RIW AIW |
源 × 探测器加权均值 |
| 最坏情况 | TMN RMN AMN TMX RMX AMX |
T/R/A 的带极值 |
| 以 dB 或光密度计 | TDB TDBMN TDBMX RDBMX ODMN PPEF |
以 dB 表示的 T 或 R、光密度、相对曲线的峰峰误差 |
| 相位 / 场 | PSI DEL TANPSI COSDEL PR PT DPR DPT GD* GDD* TOD* EFMX |
相位、椭偏、色散、峰值 |E|² |
| 极值波长 | MXWT MXWR MXWA MNWT MNWR MNWA |
极值所在的波长 |
| 数学(引用行) | OPGT OPLT OPVA ABSO ABGT ABLT DIFF SUMM PROD |
由其他行派生 |
| 厚度与应力 | TT STR MNT MXT |
总厚度 / 每层厚度、薄膜施加于基底的合力 |
| 注释 | BLNK DMFS |
惰性 |
反射与透射目标通常由滤波型向导以成对行生成,这样优化器就无法用吸收来换取轻松的胜利。
向导位于表格上方。其标题栏带有“优化”与“评价”徽标以及当前的 MF 与 OMF;左侧的箭头可将表单折叠与展开。标题栏下方是三个框:
- 预设:镀膜类别(减反射、反射镜、分束器、边缘滤光片、带通或陷波、渐变、积分或最坏情况、自定义目标、曲线目标)、类别内的类型,以及该类型自身的数值,波长范围排在最前。自定义目标类型生成一个你自己指定的目标:一个通道(T/R/A)、一个单位(%、dB 或 OD)、一个比较(
=、≤、≥)、一个值和一个范围。 - 角度与目标:入射角,或一段角度范围及其步数、偏振,以及目标是连续线还是离散点。自行设定偏振的类型(例如偏振分束器)不显示偏振控件。
- 厚度限制:最小与最大膜层厚度(
MNT/MXT)以及总厚度上限,各由一个复选框控制。
以 dB 或 OD 表示的自定义目标会写入一种以 dB 或光密度计的行:dB 下的 T ≥ 写入 TDBMN 行,dB 下的 T ≤ 写入 TDBMX 行,dB 下的 R ≤ 写入 RDBMX 行,OD 下的 T ≥ 写入 ODMN 行,dB 下的 T = 则每个波长步长写入一个 TDB 行,此时显示步长字段,取代连续线或离散点的选择。没有对应行的组合不会提供:A 只有 %,R 在 dB 下只有 ≤,OD 只有 ≥。切换单位时,已输入的值会换算到同一电平,例如 80 % 变为 −0.97 dB。dB 值限制在 0 dB 及以下,光密度限制在 0 及以上。
曲线目标类别取一条曲线而不是数值。它的行采用曲线自身的入射角与偏振,因此“角度与目标”框中没有自己的角度需要设置。增益平坦时,该框放置规定滤光片的两个数值,插入损耗与峰峰误差;输入为增益时,还放置其目标所用的入射角与偏振。如果设计上没有可用的曲线,框下方的一行会说明这一点,旁边的**打开“实测光谱”**按钮会打开导入或输入曲线的窗口。
- 曲线从实测光谱中选择设计上的一条曲线,并写入 拟合… 为它写入的曲线块,以 % 或 dB 计。如果设计上只有一条该类型可用的曲线,无需选择即自动采用它。
- 增益平坦生成增益平坦滤光片规格所对应的评价函数。其输入可以是设计上已有的目标损耗曲线,也可以是放大器增益(dB),从文本文件导入,或用 输入… 在曲线编辑器中输入。增益会被换算成把每个波长都降到最低增益的损耗,
T(λ)[dB] = G_min − G(λ):在增益最小处为 0 dB,其余处为负值,这是无源滤光片能实现平坦所需的最小损耗。该目标以 T 曲线的形式加到设计上,以增益命名,采用你给出的入射角与偏振,因此会显示在图上;增益本身不保留。
增益平坦写入三行。目标作为以 dB 计、水平自由的曲线块:设计与它之间相差的常数被去掉,因此该块评价的是形状而不是水平。一行相对该块的 PPEF,目标为你设定的峰峰值:最小二乘把形状拉近,而这一行处理最差的点,也就是滤光片出售时所依据的数值。以及一行位于目标最高处波长的 TDBMN,下限为你设定的插入损耗的负值:如果该处 T 达到这个高度,峰值插入损耗就满足要求。两个值都从 0 dB 开始,即要求叠层所能达到的最平坦形状与最小损耗。选择增益平坦时,厚度限制框中的最大膜层厚度会取消勾选,因为这类滤光片常需要几微米厚的膜层;如果镀膜工艺限制膜层厚度,请重新勾选。
综合工具会略去 PPEF 行:它的梯度只来自最差的两个波长,针式搜索会因此停滞。它们用曲线块把形状拉近,之后运行一次精炼再把峰峰误差降下来。
框下方的一行说明向导将添加多少行、属于哪些类型。起始行是块放置的位置;生成将其加入。窗口关闭再打开后,表单仍保留其值。
每行一个操作数。表格的用法与电子表格相同:
- 单击单元格将其聚焦,直接输入即可替换其值,按 Enter 或双击可编辑。Enter 提交并下移,Tab 右移,Escape 取消。
- 类型单元格保存操作数代码。输入一个字母会打开操作数选择器并搜索该字母;Enter 或双击会在当前类型上打开它。偏振单元格聚焦时右侧显示一个小箭头;点击箭头、按 Enter 或双击会以列表形式打开三个值,直接输入
a、s或p则不经列表直接设置。 - 标志单元格在接受它的行上标题为步长。在寻峰的行上(例如
TMX或MXWT),它设定在波段上搜索的精细程度:1 为 1 nm,最高到 4 即 0.001 nm(寻找峰或谷);在波段平均、光谱目标、加权积分或*FLAT行上,它设定其网格的最大步长(波段采样)。其他行在此列显示短横线。 - 在单元格上拖动,或按住 Shift,选择一个矩形;按住 Ctrl 添加单个单元格。Ctrl+C 将所选内容复制为制表符分隔的文本,Ctrl+V 将文本粘贴到所选内容上:一个值会填满每个选中的单元格,一块值会从聚焦的单元格开始铺开。由复制行得来的文本会作为行插入。
- 行从左侧的行号列选择:单击选一行,沿该列拖动选一段,Shift 选一段,Ctrl 追加。注释行与标题行点击任意位置即可选中。Delete、Ctrl+X 与 Ctrl+D 作用于选中的行;Insert 在聚焦行上方添加一行,Shift+Insert 在下方添加。
- 右键打开同样的操作菜单:复制与粘贴单元格、剪切、复制与粘贴操作数、插入、复制一份与删除。
表格栏中的加载评价函数与保存评价函数将整张表作为一个命名的评价函数加载与保存,可在另一个设计中复用。
约束:一段层范围内的最小与最大膜层厚度边界(MNT/MXT)。一个边界可以被写成覆盖综合之后将添加的层。MXT 行是膜层厚度唯一的上限;没有它,优化器会让膜层按评价函数的需要一直加厚。
MF 与 OMF
Section titled “MF 与 OMF”表头显示两个数字:
- MF:完整的评价函数,包含可制造性行(
MNT、MXT、TT、STR)。 - OMF:光学评价函数:同样的 RMS,但只计入光学操作数(T/R/A 目标、带等),可制造性行被丢弃。
它们将普通 MF 混在一起的两个问题分开:光谱有多好?(OMF)对比 在能够实际制造的前提下光谱有多好?(MF)。当 MF 高但 OMF 低时,光学性能没问题,是某个约束在拖累你,而不是光学本身:可能是过薄或过厚的层、总厚度预算,也可能是镀膜把基底弯曲得太厉害。
每个操作数行显示其当前值与残差,因此你可以一眼看出哪些目标已满足、哪些在拉高评价函数。更大的权重使一个操作数占比更重;在 HR 设计上提高阻带权重是最常见的调整。
在宽波段上使用细步长,计算一次需要几秒,因此自带步长的行先立即按默认步长显示,以淡色显示并在前面加上 ≈;按该行步长的数值算出后再替换,其间窗口保持响应。读取这种行的数学行也以同样方式标记;这种行带有权重时,MF、OMF 以及每一行的 占 MF² 的 % 也会标记。表格在优化运行期间实时更新时保持默认步长,直到运行停止。在入射锥角下,每一行都在窗口自身的线程之外计算,表格在数值算出后显示;实时跟随运行时每一行都会标记,因为在入射锥角下各行共用同一组角度网格。精炼窗口的表格及其在两次运行之间的 MF 也是如此。
操作数列表随设计一起保存,并被每个优化器读取:精炼、针式、渐进演化与结构优化器。综合工具在构建堆栈时仅针对光学操作数进行优化,但不包括 PPEF 行及引用它的数学行;随后在精炼阶段强制执行厚度约束并压低峰峰误差。一个好的最终顺序是:精炼,然后设计清理器,然后再精炼。
- A. V. Tikhonravov, M. K. Trubetskov, G. W. DeBell, “Application of the needle optimization technique to the design of optical coatings,” Appl. Opt. 35, 5493 (1996)。
- J. A. Dobrowolski, R. A. Kemp, “Refinement of optical multilayer systems with different optimization procedures,” Appl. Opt. 29, 2876 (1990)。