在此工作流程中,设计人员首先在Lumerical FDTD或RCWA中模拟光栅,然后将数据导出到扩展名为json的文件。在OpticStudio中,用户可以导入这些数据,以精确模拟在整个宏观系统中的光栅特性。
此静态链接工作流需要从Lumerical生成数据并导入到OpticStudio中。这两个软件单独工作,不需要在同一台电脑上。要从Lumerical生成所需的数据,用户需要Lumerical FDTD许可证。要将数据读入OpticStudio,用户需要Ansys Zemax OpticStudio的专业版、旗舰版或企业版许可证。请注意,此功能不支持旧版的OpticStudio。
值得一提的是,有两个现有的工作流程可以在Lumerical和OpticStudio之间交换数据。一个是我们将在本文中介绍的静态工作流。另一个是以不同方式工作的动态工作流。这两种工作流程具有不同的灵活性,不存在一个优于另一个。用户应根据其设计案例考虑使用哪一种。
在此工作流程中,我们使用扩展文件名为json的文件将光栅仿真结果从Lumerical传递到OpticStudio。json文件可以由组件供应商提供,也可以由使用OpticStudio的同一用户生成。
本文将不介绍在Lumerical中模拟和导出json文件的操作。
在Ansys Zemax OpticStudio中建立光栅
在OpticStudio中,要建立光栅,建议使用以下3个物体之一:Diffraction Grating、User Defined Object (DiffractionGrating.DLL)和User Defined Object (Polygon_grating.DLL)。默认安装文件夹中不提供Polygon_grating.DLL文件。
添加上述3个物体之一后,我们使用物体属性...衍射选项卡来定义DLL插件 “lumerical-sub-wavelength-XXXXXX.dll”,其中 XXXXXX 是版本,例如“2023R1”。此DLL将光栅数据(.json)读入 OpticStudio。请注意,光栅数据(.json)应保存在\Document\Zemax\DLL\Diffractive\文件夹中。
下一节将介绍此DLL的参数。
Ansys Zemax OpticStudio中的参数
如果将其设置为非零,则光线在击中表面时不会分裂。相反,光线将被随机衍射到一个级次,如下所示。这对于一条光线多次照射衍射表面并分成太多段的情况非常有用。
测试模式
通常不使用此参数。用户应将其保持为零,除非需要下面描述的一些特殊用途。
当测试模式为0时,DLL在正常模式下工作。
当我们需要一些功能时,在此值之上增加一个值。
- +1表示DLL将导出日志文件到\Document\Zemax\DLL\Diffractive\lumerical-sub-wavelength.log
- +8表示DLL将在CMOS模式下工作。在此模式下,DLL认为除T(0,0)之外的所有透射级次的衍射功率为0。T(0,0)的衍射功率由1-R计算,其中R是所有反射级次的衍射功率之和。这是专门为CMOS衍射设计的模式。对于CMOS传感器,光永远不会“透射”,而是被硅层吸收,进一步转换为电能。我们需要重新计算“非反射”功率来近似吸收功率并将它们归于T(0,0)阶。有关仿真CMOS的更多详细信息将在另一篇文章中讨论。
例如,如果我们将测试模式参数设置为1+8=9,则意味着需要它在CMOS模式下工作并导出日志文件。
随机模式和起始/终止X/Y级次
开启随机模式后,建议用户设置X Start = X Stop = Y Start = Y Stop = 0。这与 Diffraction DLL插件在OpticStudio中的工作方式有关。OpticStudio始终调用从(X Start,Y Start)到(X Stop,Y Stop)所有级次的DLL。但是,当随机模式打开时,DLL仅使用 (X Start,Y Start),对其他级次的所有调用都是多余的,并且会大大降低仿真速度。
另一方面,如果用户想使用X/Y起始/终止级次,随机模式需要为0,这意味着随机模式已关闭。
相关阅读
2024R1 | Zemax 功能更新
2024R1 | Lumerical 功能更新
联合方案 | Ansys二维光栅出瞳扩展系统优化(上)
联合方案 | Ansys二维光栅出瞳扩展系统优化(下)
Lumerical 表面浮雕光栅仿真设计
Ansys Lumerical 衍射光栅仿真实例