光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
Gn8sB •使用VB脚本生成光栅(或周期性)布局。
\t7yH]:>@ •光栅布局
模拟和后处理分析
>;I8w( 布局layout
X?'cl]1? 我们将模拟如图1所示的二维光栅布局。
d=xjLbsZ 图1.二维光栅布局
r)5xS] (L*GU 7m; 用VB脚本定义一个2D光栅布局
?"9h-g3`x} >N Bc-DX^ 步骤:
Njg$~30 1 通过在
文件菜单中选择“New”,启动一个新项目。
-{cmi,oy 2 在“Wafer Properties”对话框中设置以下
参数 eZPeyYX Wafer Dimensions:
gQ{ #C' Length (mm): 8.5
.U0Gm_c0 Width (mm): 3.0
p3U)J&]c6 sr6BC. 2D wafer properties:
?z9!=A%<V~ Wafer refractive index: Air
VhkM{O 3 点击 Profiles 与 Materials.
<l5i%? |MZ1j(_ 在“Materials”中加入以下
材料:
>4X2uNbZS Name: N=1.5
JI-i7P Refractive index (Re:): 1.5
C>+n>bH]L cuQ!"iH Name: N=3.14
U9:)qvMXe Refractive index (Re:): 3.14
}d?;kt l)[|wPf 4.在“Profile”中定义以下轮廓:
]#]Z]9w Name: ChannelPro_n=3.14
!Ap5Uwd 2D profile definition, Material: n=3.14
UN.;w3`Oc %1Q:{m Name: ChannelPro_n=1.5
OS,!`8cw 2D profile definition, Material: n=1.5
,>-D xS AabQ)23R2 6.画出以下波导结构:
4?+K
` a. Linear waveguide 1
f=l/Fp}4UH Label: linear1
Rs<q^w] Start Horizontal offset: 0.0
lr>NG,N Start vertical offset: -0.75
&THtQ1D End Horizontal offset: 8.5
Nbpn"*L, End vertical offset: -0.75
epiviCYC Channel Thickness Tapering: Use Default
!XtG6ON= Width: 1.5
S $p>sItO Depth: 0.0
U80=f2 Profile: ChannelPro_n=1.5
ytIPY7E Km(i}:6" b. Linear waveguide 2
3<^Up1CaZ Label: linear2
j?N<40z Start Horizontal offset: 0.5
l}uZxKuYx Start vertical offset: 0.05
dS6 $ End Horizontal offset: 1.0
k9x[(
# End vertical offset: 0.05
0zH-g Channel Thickness Tapering: Use Default
=1Sny7G Width: 0.1
*-9i<@|(U^ Depth: 0.0
C .S BJ Profile: ChannelPro_n=3.14
EVqW(|Xg z}MxMx
c4h 7.加入水平平面波:
sv=U^xI Continuous Wave Wavelength: 0.63 General:
3lp'U&3`5 Input field Transverse: Rectangular
~!Nj DDk X Position: 0.5
XH?//.q Direction: Negative Direction
H4y9\
- Label: InputPlane1
GmB&TDm 2D Transverse:
qk<jvha Center Position: 4.5
K KB+o)*W Half width: 5.0
[q?RJmB] Titlitng Angle: 45
9w=7A>.U Effective Refractive Index: Local Amplitude: 1.0
B"_O! 图2.波导结构(未设置周期)
PB@IPnB- gE6'A 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
V$ H(a`! 将Linear2代码段修改如下:
,4Q4{Tx Dim Linear2
N#ggT9>X for m=1 to 8
%nZ:)J>kz Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
#sw4)*v Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
9-pt}U Linear2.SetAttr "WidthExpr", "0.1"
>aAM&4 Linear2.SetAttr "Depth", "0"
s/7Z.\ Linear2.SetAttr "StartThickness", "0.000000"
@}4aF| Linear2.SetAttr "EndThickness", "0.000000"
nFQuoU]ux Linear2.SetProfileName "ChannelPro_n=3.14"
q-`&C Linear2.SetDefaultThicknessTaperMode True
d1cp=RbC fxd+0R;f 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
3mHzOs\jU 图3.光栅布局通过VB脚本生成
s\;/U|P_ -0^]: 设置仿真参数
g!XC5*} 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
\U$:/#1Oe 2. 在仿真参数对话框中,设置以下参数:
XkA] 9,@ TE simulation
hW#^H5? Mesh Delta X: 0.015
I0+6p8, Mesh Delta Z: 0.015
to?! qxn Time Step Size: Auto Run for 1000 Time steps
^VXhv9\>B 设置边界条件设置X和Z边为各向异性PML边界条件。
@-sWXz*W Number of Anisotropic PML layers: 15
K83'`W^ 其它参数保持默认
76 !LMNf 运行仿真
w-n}&f • 在仿真参数中点击Run按钮,启动仿真
[#Qf#T%5h • 在分析仪中,可以观察到各场分量的时域响应
3&y-xZ u] • 仿真完成后,点击“Yes”,启动分析仪。
BEOPZ[Q|c Wq4<9D 远场分析
衍射波
Rf!v{\ 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
<L]Gk]k_R 2. 选择“Definition of the Cross Cut”为z方向
/9pxEidVAS 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
%+l95Dv1 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
p}QDX*/sSu 图4.远场计算对话框
(I$%6JO: T]%-Ri 5. 在远场对话框,设置以下参数:
]Kt@F0U<o Wavelength: 0.63
o-=|}u]mz Refractive index: 1.5+0i
/0/ouA>+ Angle Initial: -90.0
bo|THS
Angle Final: 90.0
O(/~cQ Number of Steps: 721
>=0]7k; Distance: 100, 000*wavelength
5?^#v Intensity
vxZ'-&;t E<jajYj 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
#NFB=oJI 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
4gen,^ Ij 图5.“Opti 2D Viewer”中的远场模式