如何设计一个单透镜 第三部分:优化
概述
本系列共三篇文章,旨在介绍如何使用OpticStudio序列模式界面进行操作。本文以单透镜为例,介绍了设计透镜的基本过程,包括构建系统(第1部分)、分析性能(第2部分), 以及根据所需的参数和设计约束对其进行优化(第3部分)。
引言
这是单透镜设计系列文章的第3部分。介绍了优化的基本概念、如何将参数设置为变量、如何使用评价函数向导来评估设计的质量,并解释了如何执行优化本身。最后,本文对最终的系统性能进行了评估。
在第1部分中,我们讨论了如何使用系统选项和镜头数据编辑器设置系统。在第2部分中,我们讨论了一些可用于评估系统性能的分析。
这是由三篇文章组成的系列文章的第1部分。首先介绍OpticStudio用户界面的序列模式(Sequential mode),然后重点介绍如何使用系统选项(System Explorer)和镜头数据编辑器(Lens Data Editor)正确设置单透镜。它还解释了如何使用求解(Solves)来强制设计约束。 在第2部分中,我们将讨论一些可用于评估系统性能的分析。在第3部分中,我们将讨论如何优化单透镜,使其在设计约束下获得更好的性能。
设置变量搭建默认评价函数
单透镜的性能当然是受限的,但是OpticStudio仍然可以找到比目前更好的解。在此过程中,确定当前设计具有多少自由度是很重要的。也就是说,有多少参数可以作为变量自由调整?对于本练习中的单透镜,其中一个参数(表面2的曲率半径)不能再被认为是自由变化的参数,因为它是由一个求解来控制以满足特定设计的约束。然而,透镜的中心厚度(表面1的厚度),前表面的曲率半径(表面1的曲率半径),和后面透镜与像面的距离(表面2的厚度)都可以作为变量来使单透镜的RMS半径最小化。
为了允许OpticStudio在优化过程中将参数视为自由度,必须在镜头编辑器中表示该参数的单元格上放置一个变量求解类型。您可以通过单击所需单元格右侧的框或高亮适当的单元格,并在键盘上按下
一旦设置好变量,我们现在就可以构造默认的评价函数(Merit Function)。评价函数是在一个完全独立于镜头数据编辑器的编辑器中构造的,称为评价函数编辑器(Merit Function Editor)。 通过优化 (Optimize)> 评价函数编辑器(Merit Function Editor)打开评价函数编辑器。
评价函数(Merit Function)是光学系统与指定目标的接近程度的数值表示。在评价函数编辑器中,OpticStudio使用操作数列表,这些操作数分别代表系统的不同约束或目标。 当评价函数构建完成后,OpticStudio中的优化算法会尝试使评价函数的值尽可能小。
虽然您可以自己构建一个评价函数,但是让OpticStudio为您构建评价函数要更加容易。默认的评价函数可以通过从评价函数编辑器的菜单栏选择优化向导与操作数(Wizards and Operands)>优化向导 ( Optimization Wizard )来构建。
选择此选项后,将出现优化向导(Optimization Wizard)对话框,可以从中选择各种选项来定义默认的评价函数。本对话框的所有选项的细节信息都在OpticStudio的帮助系统:“优化选项卡(Optimize Tab)(序列模式界面)> 自动优化组(Automatic Optimization Group)>评价函数编辑器(自动优化组)(Merit Function Editor(automatic optimization group))”进行了讨论。
对于当前的练习,单透镜将针对相对于质心的RMS半径进行优化,所有这些选项都已经内置到OpticStudio的优化向导中。在优化函数(Optimization Function)下,选择类型(Type):RMS、像质标准(Image Quality):点列图(Spot)、参考(Reference):质心。
为了防止单透镜变得太厚或太薄,对该透镜的厚度设置边界约束是很重要的。在优化向导(Optimization Wizard)中,我们可以在厚度边界(Boundary Values)部分设置玻璃和空气厚度的边界约束。通过“玻璃(Glass)”选项,可以将最小、最大和边缘厚度值手动输入到适当的条目中。如系统要求所述,单透镜中心厚度应不大于12 mm,不小于2 mm,边缘厚度应大于2 mm。在对话框中键入适当的值,以获取最小(Min)、最大(Max)和边缘(Edge)玻璃厚度条目。
出于练习的目的,所有其它参数都可以保留为默认值。
点击OK关闭此对话框。
执行优化
现在您将注意到,优化操作数已自动插入到评价函数编辑器(Merit Function Editor)中。每个操作数都有一个特定的目标(Target)、 权重(Weight)和当前值(Value),这些目标、权重和当前值构成了位于评价函数编辑器右上角的评价函数的值。
在优化过程中,OpticStudio试图降低这个评价函数值,这意味着使设计更接近评价函数编辑器中描述的目标。
要优化系统,请选择优化(optimize)>执行优化(optimize),这将打开优化对话框。注意,在优化对话框中,有许多不同的循环可供选择。选择自动(Automatic)将要求OpticStudio运行优化程序,直到它找到一个局部最小值,作为目前评价函数的一个解。 注意,OpticStudio同时报告初始评价函数值(Initial MF)和当前评价函数值(Current MF values)。按下开始(Start)按钮运行优化,注意评价函数值的变化:
点击Exit退出优化对话框。
评估最终的系统性能
现在,优化过程已经完成,我们可以评估最终的设计性能,并确保满足所有初始设计约束。通过从每个图形窗口的菜单栏中选择更新(Update),可以更新之前打开的每个分析窗口。
最终,OpticStudio在初始系统需求中给出的约束条件下,对单透镜进行了优化。与初始性能分析相比,RMS半径和GEO半径下降了近10倍!同样重要的是,OpticStudio为镜头选择的厚度在预期范围内,边缘厚度大于2毫米,每一个都满足最初的系统需求。虽然单透镜的性能没有达到衍射极限,但设计的过程可以应用于更复杂的光学系统!
执行优化
本系列三篇文章概述了透镜设计的基本过程,分析了透镜的性能,并在一定的设计约束下进行了优化。 最佳练习方法是从在系统选项中输入适当的系统设置开始。之后,您可以开始在镜头数据编辑器中输入数据。确保对任何未知参数使用有根据的猜测和求解, 这样优化就有了一个强有力的起点。然后,设置变量并进行优化。 操作数可以手动输入到评价函数编辑器中,也可以通过向导输入,这些操作数将定义优化目标。通过降低评价函数值来逼近目标,可能需要多次优化。