光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
_Yqog/sG •使用VB脚本生成光栅(或周期性)布局。
")xd 'V •光栅布局
模拟和后处理分析
&CcUr#|
布局layout
xa&5o`>1G 我们将模拟如图1所示的二维光栅布局。
knb 9s`wR 图1.二维光栅布局
\.l8]LH %K/zVYGm& 用VB脚本定义一个2D光栅布局
Hsl0|jy(/ eY'< UO 步骤:
HA# 9y;\ 1 通过在
文件菜单中选择“New”,启动一个新项目。
XcH_Y 2 在“Wafer Properties”对话框中设置以下
参数 8}_M1w6v Wafer Dimensions:
z-g"`w:Lj Length (mm): 8.5
)&pcRFl Width (mm): 3.0
/t=Fx94 D\CjR6DE 2D wafer properties:
G.l
~!; Wafer refractive index: Air
l'm\*=3 3 点击 Profiles 与 Materials.
*^=zQ~ Z6\H4,k& 在“Materials”中加入以下
材料:
q1_iV.G< Name: N=1.5
hwj:$mR Refractive index (Re:): 1.5
.d?2Kc)SV\ 57~/QEdy Name: N=3.14
gi#g)9HG Refractive index (Re:): 3.14
DYej<T'?3 `"RT(` m 4.在“Profile”中定义以下轮廓:
mLb>*xt$b@ Name: ChannelPro_n=3.14
b2vCr F; 2D profile definition, Material: n=3.14
K?$|Y-_D^M X Z4q{^o Name: ChannelPro_n=1.5
<Y"h2#M " 2D profile definition, Material: n=1.5
UVz}"TRq. XFmTr@\M 6.画出以下波导结构:
S(
Vssi|y a. Linear waveguide 1
{1Hs5bg@ Label: linear1
7Bs:u Start Horizontal offset: 0.0
Uw5AHq). Start vertical offset: -0.75
\iQ{Q&JR: End Horizontal offset: 8.5
<yg!D21Y End vertical offset: -0.75
XN %tcaY Channel Thickness Tapering: Use Default
2R=Fc@MXs Width: 1.5
ms/!8X$Mz Depth: 0.0
qS?uMms7w Profile: ChannelPro_n=1.5
b-Xc6f x3tos!Y b. Linear waveguide 2
/c|X:F!;X# Label: linear2
I;GbS` Start Horizontal offset: 0.5
;w(tXcXZ Start vertical offset: 0.05
{"WfA End Horizontal offset: 1.0
,.,spoV End vertical offset: 0.05
]X\p\n'@j Channel Thickness Tapering: Use Default
Mv_-JE9#>o Width: 0.1
kT1 2 Depth: 0.0
eFXQ~~gOj Profile: ChannelPro_n=3.14
]}z"H@k S17 c#6vT 7.加入水平平面波:
#Mm1yXNu Continuous Wave Wavelength: 0.63 General:
}BN!Xa Input field Transverse: Rectangular
kR/Etm5_ X Position: 0.5
HD!2|b~@ Direction: Negative Direction
}O+`X) 9 Label: InputPlane1
G:4'')T 2D Transverse:
9YEE.=]T Center Position: 4.5
hUP?r/B Half width: 5.0
3](At%ss Titlitng Angle: 45
?)V|L~/ Effective Refractive Index: Local Amplitude: 1.0
\PL0-.t, 图2.波导结构(未设置周期)
35 d:r: WWgJ !Uz 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
_h^er+d!_ 将Linear2代码段修改如下:
}CGA)yK~3 Dim Linear2
o>75s#=
b= for m=1 to 8
TW~%1G_v Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
%pj T?G7 Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
=Ohro' Linear2.SetAttr "WidthExpr", "0.1"
0@> Linear2.SetAttr "Depth", "0"
}P\ J?8 Linear2.SetAttr "StartThickness", "0.000000"
1<D^+FC4b, Linear2.SetAttr "EndThickness", "0.000000"
.Ge`)_e Linear2.SetProfileName "ChannelPro_n=3.14"
vB Vg/ Linear2.SetDefaultThicknessTaperMode True
Zt
;u8O z*e`2n#\ 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
DDBf89$\ 图3.光栅布局通过VB脚本生成
p>h}k_s 0WQd#l 设置仿真参数
}ki6(_ 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
,u S)N6'b6 2. 在仿真参数对话框中,设置以下参数:
F~C7$ TE simulation
=z*SzG Mesh Delta X: 0.015
bZ[ay-f6oK Mesh Delta Z: 0.015
@d_9NOmNT Time Step Size: Auto Run for 1000 Time steps
-GODM128 ^ 设置边界条件设置X和Z边为各向异性PML边界条件。
mt\pndTy7! Number of Anisotropic PML layers: 15
WCyjp 其它参数保持默认
-GZ:}<W6+ 运行仿真
w~ O)DhC • 在仿真参数中点击Run按钮,启动仿真
0w!:YB ,} • 在分析仪中,可以观察到各场分量的时域响应
v-&@c • 仿真完成后,点击“Yes”,启动分析仪。
zb. ^p
X aE[:9{<| 远场分析
衍射波
U[G5<&Z^ 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
q'KXn0IY# 2. 选择“Definition of the Cross Cut”为z方向
Rja>N)MzBf 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
@m+FAdA 0 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
so_^%)
gdJ 图4.远场计算对话框
K`8$+JDP+ 4$^rzAi5 5. 在远场对话框,设置以下参数:
o+g\\5s Wavelength: 0.63
~F13}is Refractive index: 1.5+0i
<(_${zR Angle Initial: -90.0
bo[[<j!"I Angle Final: 90.0
`P jS Number of Steps: 721
T)mh Distance: 100, 000*wavelength
pGP$2 Intensity
3\j3vcuy qF4=MQm\aE 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
,~>u<Wc!S 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
\OVw 图5.“Opti 2D Viewer”中的远场模式