本文介绍了 SYNOPSYS 的
光线追迹功能,简单阐述了光线追迹功能的作用以及如何在 SYNOPSYS 中打开使用这个功能。
)LA^j|Y} ;T|y^D 联系工作人员l获取本文附件 {GaQV-t xTnd9'Pk`: 简介 +UK". #&@qmps(T 熟悉其他
镜头设计规范的人已经知道两种常见的光瞳定义:一种是近轴光瞳,仅适用于简单
系统或光阑位于前面的地方。对于更复杂的系统,使用“光线追迹”可以在系统内部某处
模拟一个真实光瞳,对其进行建模。
#$vef
U2 tsHm.O 光线追迹和广角光瞳 ")q{>tV pvz*(u 上述讨论涉及广义上的光线追迹。在分析图像时,必须确保追迹到合适的光线束。一些程序通过在光阑创建一个网格来实现这一点,然后通过迭代找到一条击中该网格中每个点的光线。虽然这个方法十分有效,但它非常慢。但是 SYNOPSYS 可以通过仅迭代五条光线来找到光瞳轮廓,然后用统一的网格填充以定义光瞳。一旦找到光瞳就不需要后续的迭代计算,因此大大加快了计算速度。那么应该用哪个选项呢? 近轴光瞳速度最快,真实光瞳速度较慢,WAP 选项更慢。在不必要的情况下,选择复杂的选项是不明智的,例如 WAP 3。所以从近轴光线开始,观察主光线(光束中的中心光线)的路径,查看它是否通过了光阑的中心附近。如果没有,激活真实光瞳搜索选项,然后检查光阑是否正确填充。在 SYNOPSYS 中有三种广角光瞳类型,分别为 WAP 1,WAP 2和 WAP 3,下面将对这三种类型进行简单介绍。在 RLE 或 CHG 文件中的输入 WAP 1将实施第一个广角光瞳选项,这将设置输入光束的半径为 YMP1,该半径垂直于主光线而不是垂直于光轴,而且 WAP 1使入射光束的直径在所有视场角下保持恒定。 a=55bEn 选择输入 WAP 2将实施第二个广角光瞳选项,对于光瞳大小随视场变化明显的镜头,建议使用此选项。光阑面必须指定为用户输入的硬孔径(在光阑部分指定为圆形(CAO)或矩形(RAO))。这种类型的光瞳的大小会发生变化,以填充所有视场点的光阑。它通过在每个视场角上调整输入的光瞳的值(YMP1和XMP1)来找到拟合光束的大小,从而使上下边缘光线和倾斜光线都在用户定义的硬孔径给出的边缘拦截光阑面。这个选项会自动打开真实光阑(光瞳)选项。主光线位于光瞳的中心,因此可能不在光阑面中心。在近轴光瞳不适用的系统中,系统选项 WAP 3提供了另一种控制光瞳大小和形状的方法。使用这个选项,程序通常会追迹主光线的每个视场,在光瞳的顶部、底部和两侧找到极限光线;这些光线是那些刚刚通过镜头中所有 CAO、RAO 和 EAO 孔径的光线(记住,WAP 2只考虑光阑的 CAO)。首先追迹子午线,主光线被定义为顶部和底部光线之间的中点(即使它可能没有通过真实光阑面的中心)。然后在这条光线的左右进行倾斜光线搜索。得到的光瞳通常是椭圆形的(如果 RPUPIL 有效的话为矩形)。WAP 3不能将 CAO 设置在光束可能出现焦散的地方。WAP 3可以调整光瞳的高度和宽度,以通过所有表面的孔径,避免光线失效。WAP 3是 WAP 选项中最耗时的,而且在优化过程中,光瞳的大小可能会有很大的变化,从而产生错误的结果,所以 WAP 3主要用于分析镜头完全设计好的结构。 zEQ<Q\"1 n&. bs7N2
示例 =,aWO7Pz - F4m Q#YlrS
镜头通常在系统内部有一个“光阑”,打开“STOP_PUPIL_DEMO.RLE”镜头文件,打开 PAD 图,如下图所示,这是简单的近轴光阑得到的结果。
MuQBn7F{c dh7PpuN{ CIM9~:\
A%VBBvk 由上图可知,主光线没有通过指定的光阑(表面7)的中心。这是因为在目前的设置中,没有光线追迹,近轴主光线由于光瞳像差而错过光阑中心。- 通过系统设置>物,光阑和光瞳打开界面,在光阑处选择真实光阑搜索,然后点击 PAD 图中的“更新”按钮来更新镜头布局,如下图所示。由图中可以看到边缘场的主光线通过光阑( Surface 7)的中心,就像它应该的那样。现在主光线是好的,但是边缘场的边缘光线没有通过光阑的边缘。我们需要另一个常见的声明,它将调整光瞳的大小,以便很好地填充光阑。
}T?MWcG4 m_%1IJ - mErXdb|L
打开 SPS 表,将表面7的孔径改为“用户定义的圆形孔径”,点击设置,表面7的外孔径就变成了圆形。打开物,光阑和光瞳的界面,将光瞳选择“广角光瞳类型 2 (WAP 2)”以替换默认的近轴光瞳,这是 WAP 2选项(有三种广角–光瞳(WAP)。它通过在光阑的边缘迭代一些光线来找到入瞳的形状。但是这个选项需要在光阑表面上设置一个硬性通光口径,以便于光线追迹。单击 PAD 中的“更新”按钮,然后出现如下所示的镜头。现在,主光线和边缘光线都通过打开系统的“光线追迹”来到达表面7上的正确位置。
s eFug mGQgy[gX dYg}qad5: a0"gt"qA 2p( M`@ (8!#<$