2024年8月31日发(作者:)

第五章

优化

(Optimization)

Question 1

已知透镜的孔径、厚度、曲率半径皆为固定,可是边缘厚度希望为零,现

在我将suf设在2和3之间,target设零,weight设100,但我发现我没有变量,

不能优化,所以将厚度0.8设为变量去跑优化,没想到透镜厚度变更宽,MXEG

似乎没用。请问可以在不跑优化,也就是不设罝merit function的情形下,将透

镜边缘厚度改为零吗?

Answer

可以在不跑优化,也就是不设罝merit function的情形下,将透镜边缘厚度

改为零:具体做法是在thickness上按右键,用solve进行Edge thickness 的设罝。

或者您也可以试着使用ETVA(edge thickness value)这个操作数。

Question 2

如何使Spot Diagram中的RMS&GEO变小?

Answer

在Merit Function中提供几个命令来Follow您Default的内容来做Spot Size

的优化,分别是RSCE、RSCH、RSRE、RSRH,您需根据您所Default的参考依

据来选择其中一个命令来使用,如Centriod、Chief Ray、Ring、。

Question 3

在优化过程中,如何定义在不同Pupil的地方,其Longitudinal Aberration

曲线可以依照自己的意思跑吗?

Answer

当在使用AXCL和LACL等命令时,无法使用Hx、Hy、Px、Py来控制实

际光线所走的路径,此时会是一类型似默认的方法来达到优化,通常在Pupil的

0.8处有交点,但若当您使用REAY等命令时,您可在Py的地方给定0~1的值,

即代表您希望在Pupil上的某个点所出射的光线其Longitudinal Aberration会最小,

即可在不同的Pupil处依您的意思去做优化。

Question 4

如何使用ZEMAX的功能来分析镜头的TV Distortion?

Answer

关于TV Distortion的分析同样可使用ZEMAX的分析功能,分析功能在

Anaylsis->Miscellaneous->Field Curv/Dist和Grid Distortion。Field Curv/Dist图表的

右半边为Distortion的百分比曲线,其与Grid Distortion的图表为相对应的关系,

即左图的百分比愈大时,右图的方格将变形,而TV Distortion可能是因格子等比

例放大时,虽然是失真,但由于等比例放大,所以图像整体看起来还是没有变形

的,此时在百分比曲线中,看起来是线性的。

当然,这是要根据您所要设计的TV Distortion规格来对镜头做设计,您可在

Merit Function中,选择适当的优化操作数,如DISG、DIST、,来做

优化。在下图中,是以DISG来定出当要求最大场点失真为10%时,然后对镜头

优化出一线性关系,以上描述,为提供您在做TV Distortion分析时的参考。操作

分式则与您在使用Merit Function对镜头做优化时的方法相同。

Question 5

请问在ZEMAX中,有那些优化操作数可针对不同的非球面系数项下不同的

权值?

Answer

您可使用的优化操作数有PMGT、 PMLT、PMVA、COGT、COLT、COVA…

等,来针对不同的非球面系数项下不同的权值,说明如下:

PMGT:限制非球面系数项大于Target值,并可下权值。

PMLT:限制非球面系数项小于Target值,并可下权值。

PMVA:限制非球面系数项等于Target值,并可下权值。

COGT:限制Conic系数项大于Target值,并可下权值。

COLT:限制Conic系数项小于Target值,并可下权值。

COVA:限制Conic系数项等于Target值,并可下权值。

由于非球面系数项是定义在LDE的Parameter栏中,所以您会发现在选用

PMGT, PMLT, PMVA时,会要求您键入非球面系数项所对应的Parameter栏,之

后您即可针对不同的系数项给定不同的权值以达到您的需求。

Question 6

在ZEMAX中,如何利用Default Merit Function来同时对系统的两个表面做

Spot Size最小化的优化?

Answer

当您建好20个表面系统的前10个表面,Default Merit Function的参考选择

RMS、Spot Radius、Centroid时,会以数个TRAC的操作数来默认您的Merit

Function,之后您可在MFE中的Tools->Save,把您目前的MF存成,现在

您要做的一件事情,就是利用Wordpad或记事本去开启,然后把所有的

\"TRAC 0\"置换成\"TRAI 10\",因为TRAI可以控制中间面的图像质量,然后再加

上后面的10个表面,再重新Default一组MF来控成像面 (Sur 20) 的质量,然

后再把您刚刚所修改的中的所有\"TRAI 10\"贴到后来所Defult的MF之后,

这样一来您即可在20表面的系统中同时做两个表面的Spot Size最小化优化。

Question 7

在ZEMAX中,要如何设罝系统为像方的远心(telecentric)系统?

Answer

您可以使用优化操作数RANG来达成。藉由控制主光线在与成像面的夹角

为0 (Hx=0, Hy=1, Px=0, Py=0),这意谓主光线(Chief Ray)会平行光轴,也就是出

瞳的位置为无穷远。我们可以运行优化来使系统达成远心系统,但前提是要有足

够的变数 (曲率和厚度) 来达成远心条件的设计。物方的远心系统可运用相同的

技巧。

我们以ZEMAX的例子Cooke 40 degree 来做示范:

1. 将原先Fixed的Semi-Diameter栏改为Automatic。

2. 设罝优化操作数RANG以及Default Merit Function为RMS、Spot Radius、

Centroid。

3D Layout图-优化前:

3D Layout图-优化后:

Question 8

设计一个透镜,LED发出的光通过此透镜之后会变成平行光源。目前遇到

的问题是:

 在surf 3遇到了全反射无法做优化

 不知道用哪些Merit Function Operands可以有效降低优化函数值(我尝试过

RANG和REAY都没有得到很好的效果)?

Answer

这是因为边缘光线超出镜片之外且有部分指定的光线发生全反射,建议您可

以改进的方式如下:

1. 先不要将Surf 2和Surf 3的Semi-Diameter设为固定 (Fixed),让所有的光线

能通过镜片,等优化完后再去决定您需要的透镜半高。

2. 因为出现\"Error 917:Error in target 1. TIR at surface 3!\",表示Py=1时的光线会

全反射,所以您可先试着对Py=0.8时做优化(Target值可依据目前的Value来

决定),之后可能会出现\"Error 917:Error in target 17. TIR at surface 3!\",表示这

个默认的操作数所指定的Px在计算时同样会造成全反射,故可先将其删掉。

3. 在完成上述步骤后,您应该可以继续您的优化工作,此时还要注意,您REAY

的Target=3有问题,应该是小于透镜半高才正确,故应是小于1.5左右的值。

(如果您的半高如上所述不设为固定,则它的值约为1.6左右)

Question 9

在ZEMAX中,对于H与P的定义,其意义为何?

Answer

Merit Function的设罝基本上可以依照个人需求及习惯设罝,H与P是Field

与Pupil的归一化设罝,因为各种情形下的Field与Pupil会有所不同,所以利用

归一化(0~1)来避免这个麻烦。例如设罝RANG是与Z轴的角度来计算,设

罝PY=1时(也就是最外面的光线)与Z轴的角度为0,PY=0.5时(一半的地

方)角度也为0,选择成像面为分析的表面,则光线在我的成像面上将会是平行

光。

Question 10

如何缩短优化的时间?若设计一个单一波长的非球面Objective Lens,遇到

最大的问题在于Spherical Aberration。若将Lens的两个面设罝为Even Asphere,

并将Radius、Conic、4th~10th设罝为变数,则在使用ZERN作为优化运算参

数,并分别对4,9,16项去作运算,需要花上数十分钟的时间,才能达到PV

值=0.0004波长的要求。是否搭配RSCH及MTFT可加速运算时间? 或着是否

须再设罝其它参数?

Answer

加快优化速度仅能从硬体着手,即CPU速度>1GHz以上,或使用多CPU的

方式,而ZEMAX提供多CPU的方式如下图所示。

Question 11

在TracePro中自己建立的面光源模型有可能转入ZEMAX中吗?

Answer

可将光源汇入至ZEMAX中,但在序列性描光模式只可使用理想光源。如果

使用面光源,必须切换至非序列描光模式,因此就不能优化透镜。

Question 12

在Merit Function里,如何控制Longitudinal Aberration ?

Answer

\"Longitudinal Aberration\"是在Analysis中的图表分析,其所指的是

\"Longitudinal Chromatic Aberration\",在ZEMAX中,有两个优化命令可以分别消

除Longitudinal Chromatic Aberration和Lateral Chromatic Aberration,各为AXCL

和LACL,您必须在Wave1和Wave2键入您所设罝的波长之两极端的值,例如:

您使用的波长1、2、3分别为R、G、B的三个波长,则Wave1键入\"1\"和Wave2

键入\"3\",Target键入\"0\",Weight键入\"10\",则可有效消除红光与蓝光在光轴上

之Chromatic Aberration,所以您可在优化后再次比较Analysis中的图表分析,将

可发现有明显的改善。

Question 13

请问「Merit Function Editor」和「Multi-Configuration Editor」如何使用?

Answer

“Merit Function Editor”是使用一些操作数或命令来控制图像质量,如REAY,

EFFL,MTFA。Multi-Configuration Editor通常用在变焦系统、分光等光学系统

中,它可帮助用户对Lens Data Editors中的某一资料设置多个状态,如曲率半径、

厚度、光学材料等,也可以对System菜单下的General、Field、Wavelength的参

数进行设置。

Question 14

可否在ZEMAX中观察追迹光线的平行度?我们设计了一个系统,光线有

点发散,想知道它发散的程度。

Answer

可以在merit function中添加ISNA这个操作数,通过其计算像方的数值孔径

的值,再换算成出射光线的角度,就可以知道它的发散程度了。其实还有一种方

法可以直接看光线在各个面上的角度。方法是:Analysis->calculation->ray

trace(Ctrl + Y),显示的资料就是光线在各个面上的Direct cosine或Tangent值。

Question 15

因为RMS优化的Default Merit Function似乎只有针对Image面,而A+B

系统中我只想先针对A系统的最后一面做RMS优化,所以两者Merit Function

似乎不能同时写在一起,或是有什么命令可以针对某特定面做RMS优化?还是

用A程序做完RMS优化后,再写一个A+B程序将A跑完后把所需的值带入

A+B程序,A+B系统之定义如下:

例如在系统中有A和B两种优化情况,A是针对RMS优化,A做完后所得到最

佳参数继续在带入下去给后段B去做成像的优化,所以A我有一个Default Merit

Function ,B有一个Default Merit Function ,假如我把两个写在一起

A+,会有彼此Weight 设罝的混淆,因为两者是先做完A优化后再做B,是

各自独立的,所以我才想是否可以用Marco,例如在做A优化时Load ,做

完优化后取到我想要的参数,然后再Load 去做我后段的优化,现阶段我是

前后开两个Zemax档,先做完A系统的优化后,把A优化后的值记起来丢入另一

个A+B系统的档做优化,要分两个阶段去做,所以才想请问是否可以在Marco

中使用Load的方式去运行。

Answer

假设您的A与B是指同一个系统, 您或许可以利用Multi-Configuration的

方式来对A与B同时做优化,并在Merit Function Editor选择Default Merit

Function,即可同时对个别结构Default出一组RMS的优化,且在

Multi-Configuration Editor中去个别指定A与B的可优化参数,如各个表面的厚

度或曲率...等,然后再去做优化,找出A或B的最佳值。或者,您可在A优化

完之后另存新档B,然后再开启B并加入欲优化的参数再去做优化。至于您最后

一个问题,似乎是种找解的方法,其实,如果您觉得这样的方式可以找出您想得

到的解,且有不错的效果,则您可使用这样的方法。

ZEMAX已提供局部性优化和全局性优化 &

, 原厂建议过一种有效的方法,为点击Hammer

Optimization后,先以Auto DLS钮做局部找解,然后再以Hammer钮做全局找

解。

Question 16

我们想设计一个透镜,LED发出的光通过此透镜之后会变成平行光源,请

问为什么在sur3遇到了全反射无法做优化?

Answer

您的结构设置有点问题,全反射的产生是因为物面(OBJ)后面的材料被设罝

为玻璃。

Question 17

不知道用那些Merit function可以降低优化函数。(我尝试过RANG和

REAY都没有得到很好的效果。)

Answer

优化函数的数值是否能有效降低,会和您所下的限制、可变动之变数项、表

面型态以及权值等有关,没有绝对的方法,而您在用REAY这类的优化命令时,

应该不会只对其中一项做设罝,而可能在Py = 1、0.8、0.5、等地方的光线

进行控制,所以需要同时对它们做优化,并分配不同的权值。也许还可使用「RAID」

或「RAIN」的命令并指定为第最后一个表面(IMA面)来做优化,来达成所需要

的性能。

Question 18

如何在透镜组的焦距不变的条件下,透过更改和优化其中的某些透镜曲率

使透镜组的畸变量变小,如达到万分之几的情况。在Zemax中应该如何操作?

Answer

以下是针对畸变的优化提供一些参考建议:

1. 一般要控制畸变用DIMX,DIST已经够了。

2. 如果对畸变要求这么高,可能要自己建立一些操作数,可以考虑下面的操作

数:REAY,PARY。

Question 19

光线偏轴射出时,如何让光线以一个角度射出?

Answer

您可以在Merit Function Editor中使用RAED、RAEN、RAID、RAIN、RANG

等操作数来控制任意面的光线角度。如果您不知道怎么使用这些操作数,您可以

点击MFE的Help查询。


更多推荐

优化,光线,透镜,系统,使用