如果出现了打开ZOS可以链接到Lumerical,但是修改参数之后Lumerical不响应的情况,伴生的一个现象是在diffractive文件夹中会生成一系列的文件,正常情况下这些文件会被删除,不会被看到。需要检查两个事项:
Lumerical是否安装在其默认路径 Zemax的Project Preference的设置是否是默认设置 一般来说,把这两项调整之后应该就可以顺利运行,如果还是不行,检查一下dll的参数设置是否合理。可以在Lumerical的界面查看运算是否已经完成,也可以查看Lumerical_RCWA_dynamic_link中的log。
另外有一个可能性是,dll需要匹配对应的Lumerical版本,如果版本不对的话也可能出现运行不了的情况。
划重点!!!!!(这部分在最新的KBA里面也有提到啦,而且更详细,可以移步KBA去看看喔)
1.Zemax与Lumerical的坐标是匹配的,+Z匹配+Z,以此类推
2.动态链接会link两者的坐标,在Zemax设置了介质参数之后,动态链接会读取对应的介质参数,然后自动在Lumerical相同的坐标点进行介质设置。比如在Zemax中-Z介质是空气,动态链接会读取到这一信息,并在Lumerical当中-Z将介质的折射率设置为空气的折射率。
3.这里列一下Lumerical跟Zemax的+Z方向。不要拘泥于superstrate与substrate的传统意义,主要关注superstrate对应+Z方向(对于Zemax与Lumerical一致),用n_pos表征,substrate对应-Z方向,用n_neg表征-Z方向对应的折射率。
在ZOS当中,+Z指向物体“内”,Zemax Visulization画图的时候,+z朝下,而Lumerical则是朝上。在两个软件中定义方向和角度的时候需要注意。
此外,在仿真过程中,默认是缓存2000个不同参数的grating进行计算,超过之后会清空这部分的缓存。
22R3版本的notes:
1.要建立topcell(正常使用Lumerical的时候可以改名字,但是在动态链接里面需要固定名字为topcell),设定参数,用来控制script中的变量数值
2.建立结构的时候要预留两个方形区域,厚度不低于200nm,指定sub跟superstrate的仿真区域。
需要定义RCWA solver. Lumerical生成的fsp会被放到: “\Zemax\DLL\Diffractive\”。 所以在ZOS解压zar的时候不要 勾选project directory,并且将Lumerical的工作路径设置为fsp所在的文件。 Max order x/y的选取建议:3*period/wave,符号选取会影响order的分布选取。这个会决定Lumerical仿真的设定。 Interpolation 设置为1-20带来的采样就是201*201,设置更高,比如31,得到的网格就是31*31。 pre-sampling 是每次计算的时候去选取的数据周围其他熟知的计算量。根据仿真对象确定,建议值是5-10.如果系统中只有一个角度,那就不用开启pre-sampling. Error log,初期使用的时候建议选择1,进行开启。 这个是搬的tips and caution。早期帮Michael 做测试的时候踩的坑。
-要选择update none,不然会很卡,因为每次改完系统都会去重新计算刷新。 -相同的fsp用不同参数的话调用同一个fsp就好了,计算效率更高
-优化的时候先局部再锤形,这个早期跑优化的时候的确是看到了两者效果的不同
关于Max order的设置要注意,设置不正确的话会导致能量计算错误,比如能量偏高,甚至超过1的情况出现。最近几次错误排查,问题基本都出在这上面了。
如果您需要对标Zemax自带的dll跟动态链接的结果,以下几个参数要重点核对一下:
光栅结构参数是否一致,可以使用RCWA visualization tool跟Lumerical对比显示 Interpolation, max order以及filter order参数设置 确认mesh refinement是不是conformal Variant 0。也可以开启FFF看看 (use tangent vector field)。
23R1版本
关于RCWA 的设置:
实际的RCWA z方向尺寸会比simulation region大,通常单边多0.1um。
RCWA的xy span由periodxy決定,中心永远是0,0,z min/max由最大最小interface往外延展0.1µm。
https://doi.org/10.1117/12.2692847
Hi Yuan,
This recent work showed simulation of non-hexagonal 2D grating(certain 2D gratings that can be represented by orthogonal lattices) in Zemax-Lumerical co-work. Is there any way to simulate a non-orthogonal lattice?