本文通过FDTD的参数扫描功能分析了薄膜中WO3层厚度对反射率影响,结果曲线如下图所示。
建模及数据分析过程主要如下:
1.导入材料
点击Materials
点击Add,选择Sampled 3D data
点击Import,在Select File中选择折射率文件,导入即可。
2.添加结构
结构添加可以直接查看WO3.fsp文件中的设置,这里只需要设置几何位置和材料属性,记得WO3材料选用刚才添加的。
3. 设置FDTD Region
由于你这个是薄膜结构,X和Y方向是无限延伸的,z方向是你的结构,因此X,Y方向设置成周期性边界条件,边界条件中PML层profile可以默认standard,也可以设置成steep
angle,可以提高计算速度。
结构尺寸上按需求设置,X,Y方向没有特别要求,Z方向最小值应设置在W层中,最大值在WO3上方,同时远离结构至少半个波长。其他不需要特别修改,默认即可。
4.光源设置
光源选择平面波,入射方向设置z负方向。光源尺寸大于FDTD尺寸(如果没有大于会在仿真时自动拓展),光源放置在结构上方,具体可以对比结构尺寸和光源尺寸查看。
随后设置入射光波长范围,这里设置成0.4~0.9。
5.监视器设置
主要设置反射率监视器。
监视器类型选择Frequency-domain field and power。
监视器选择Z-normal,XY平面尺寸大于FDTD尺寸,大了无所谓,超出的部分不会记录数据,主要是设置Z方向的位置。反射率监视器在光源和FDTD上边界中间。
6.添加mesh
建模设计过程没有先后次序,什么时候设置都可以。网格设置基于结构,并写入响应结构的名称。
7.参数扫描
参数扫描在软件右下角,也可以通过view-windows-optimizations and sweeps打开。
选择第一个新建sweep
右键编辑,从下拉菜单中选择自己想要扫描的参数,并添加扫描范围和扫描频率,在下方添加结果监视器,这里监视器选择前面设置的反射率监视器。
运行扫描,点击运行按钮,等待运行结束即可。
8.结果输出到matlab
在script prompt处输入以下语句:
R0=getsweepresult('sweep','RR');
Th=getsweepdata('sweep','Thickness');
R1=R0.T;
lambda=R0.lambda;
matlabsave('WO3.mat');
9.Matlab数据处理
在matlab中运行WO.m文件,代码为:
clear all
load WO3.mat
[x,y]=meshgrid(10^9*lambda,10^9*Th);
surf(x,y,R1.')
colorbar
colormap cool
shading interp
xlabel('Wavelength (nm)','FontSize',15)
ylabel('Thickness (nm)','FontSize',15)
参考链接:
参数扫描:
https://support.lumerical.com/hc/en-us/articles/360034922873-Parameter-sweep-utility
数据导出到matlab作图: