1. 优化函数基础:什么是优化函数、优化函数编辑器界面介绍、评价函数的概念、默认优化函数与自定义优化函数

1.1 优化函数到底是什么?

说白了,优化函数就是 Zemax 用来衡量你的镜头「好不好」的一把尺子。

你设计一个镜头,总希望它成像清晰、像差小、结构紧凑。但计算机不知道什么叫「清晰」,它只认数字。优化函数就是把这些光学要求翻译成计算机能懂的数学语言——一个数值。

这个数值越小,代表镜头性能越好。我们的目标就是通过调整镜片曲率、厚度、材料等参数,让这个数值降到最低。

核心理解:优化函数 = 光学性能的量化指标。优化过程 = 寻找这个指标最小值的过程。

我记得刚入行时带我的老工程师说过一句话:「优化函数是你的眼睛,你看不到像差,但优化函数能告诉你哪里有问题。」后来我自己做项目,才真正体会到这句话的分量。

1.2 评价函数的概念——不只是数字

评价函数(Merit Function)是优化函数的全称。它由多个「操作数」组成,每个操作数代表一个光学约束或目标。

举个例子:

  • 你想让焦距是 100mm → 加一个 EFFL 操作数,目标值设为 100
  • 你想让畸变小于 1% → 加一个 DIST 操作数,目标值设为 0,权重设好
  • 你想让像面处的光斑半径最小 → 加一堆 TRAC 或 REAY 操作数

Zemax 会把这些操作数的当前值与目标值之间的偏差加权求和,最终得到一个数字——这就是评价函数值。

个人习惯:我一般会在优化前先看一眼默认评价函数的值,记下来。优化过程中时不时看看这个值的变化趋势。如果它卡住不动了,就该考虑换策略了。

1.3 优化函数编辑器界面介绍

打开 Zemax,点击 Optimize → Merit Function Editor(或者直接按快捷键 F6),你会看到这样一个界面:

区域 功能 说明
菜单栏 文件操作、工具、默认评价函数生成 最常用的是 Tools → Default Merit Function
操作数列表 显示所有操作数的类型、目标值、权重、当前值 这是编辑器的核心区域
状态栏 显示当前评价函数总值、操作数总数 一眼就能看到优化进展
右键菜单 插入、删除、编辑操作数 我习惯用快捷键 Ctrl+Insert 快速添加

界面其实不复杂。每一行就是一个操作数,从左到右依次是:

  • Type:操作数类型(比如 SPHA、COMA、EFFL)
  • Int1 / Int2:辅助参数(比如面序号、波长、视场)
  • Target:你希望达到的目标值
  • Weight:权重,越大表示这个约束越重要
  • Value:当前系统的实际值
  • Contrib:这个操作数对总评价函数的贡献量

避坑指南:我曾经犯过一个低级错误——把权重设得特别大,结果优化器拼命去满足那个约束,其他像差全炸了。权重不是越大越好,要平衡。一般我会把关键约束的权重设在 1~10 之间,次要约束设在 0.1~1 之间。

1.4 默认优化函数 vs 自定义优化函数

Zemax 提供了两种生成评价函数的方式:默认的和自定义的。

默认优化函数

点击 Tools → Default Merit Function,会弹出一个对话框。你可以选择优化类型:

  • RMS Spot Radius:优化光斑半径,适合成像系统
  • RMS Wavefront:优化波前差,适合高精度系统
  • MTF:直接优化调制传递函数
  • 用户自定义:自己写优化策略

默认函数的好处是快,一键生成。但坏处也很明显——它不知道你的系统有什么特殊要求。

我的经验:默认函数只适合做初步优化。真正要收敛到好的设计,必须加自定义操作数。

自定义优化函数

自定义就是在默认函数的基础上,手动添加、修改或删除操作数。比如:

  • 控制特定面的光线入射角
  • 约束镜片中心厚度和边缘厚度
  • 限制总长或后焦
  • 控制畸变在某个视场不超过某个值

我一般的工作流程是:

  1. 先生成默认评价函数(选 RMS Spot Radius)
  2. 删掉一些不必要的操作数(比如默认会生成很多边缘光线的追踪,有时候用不上)
  3. 添加自定义约束(厚度、总长、畸变、相对照度等)
  4. 调整权重,让关键约束的权重明显高于次要约束
  5. 开始优化,观察评价函数值的变化

小技巧:自定义操作数里有一个叫 SUMM 的操作数,它可以对多个操作数求和。我经常用它来批量控制一组面的厚度总和,非常方便。

1.5 知识结构总览

下面这张图帮你理清本章的核心逻辑:

优化函数知识结构图 优化函数知识结构 优化函数 (Merit Function) 评价函数 = 操作数加权求和 编辑器:Type / Target / Weight 默认函数:一键生成,快速起步 自定义:手动添加,精准控制 数值越小,性能越好 操作数 = 单个约束 快捷键 F6 打开 Contrib 列看贡献 RMS / MTF / Wavefront 适合初步优化 控制厚度 / 总长 / 畸变 权重平衡是关键 默认 + 自定义 = 高效优化策略

1.6 本章小结

优化函数是 Zemax 优化的核心工具。你不需要一开始就记住所有操作数,但一定要理解它的工作逻辑:

  • 评价函数是一个数值,越小越好
  • 编辑器里每一行都是一个约束
  • 默认函数帮你快速起步,自定义函数帮你精准收尾
  • 权重是门艺术,不是科学——多做几次就找到感觉了

最后提醒一句:优化函数只是工具,不是目的。我见过太多人把评价函数优化到 0.001,结果实际加工出来一塌糊涂。为什么?因为优化函数里没加加工约束。记住:你优化的是「能造出来的镜头」,不是「纸面上完美的镜头」。