光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
E`.xu>Yyj •使用VB脚本生成光栅(或周期性)布局。
oZa'cZNs •光栅布局
模拟和后处理分析
/K#k_k 布局layout
VHxBs 我们将模拟如图1所示的二维光栅布局。
,AP0*Ln 图1.二维光栅布局
Co1d44Q X:oOp=y]| 用VB脚本定义一个2D光栅布局
oX|T&"& G:<f(Gy 步骤:
<rBW6o7 1 通过在
文件菜单中选择“New”,启动一个新项目。
}R%H?&P 2 在“Wafer Properties”对话框中设置以下
参数 /'sv7hg+ Wafer Dimensions:
(xHmucmwp Length (mm): 8.5
F\ B/q Width (mm): 3.0
suY47DCX) k,:W]KD 2D wafer properties:
4j={ 9e< Wafer refractive index: Air
&DLWlMGq 3 点击 Profiles 与 Materials.
G?s9c0f cUY- 在“Materials”中加入以下
材料:
jH<
#)R Name: N=1.5
Vu3DP+u|i Refractive index (Re:): 1.5
fpR|+`k =Hg!@5]H Name: N=3.14
Fi/iA%, Refractive index (Re:): 3.14
|J-X3`^\H fz(YP=@ZnP 4.在“Profile”中定义以下轮廓:
&t=:xVn-M Name: ChannelPro_n=3.14
`HX:U3/ 2D profile definition, Material: n=3.14
iXDG-_K ~CNB3r5R Name: ChannelPro_n=1.5
L7$f01* 2D profile definition, Material: n=1.5
IL*B@E8 csy6_q( 6.画出以下波导结构:
("8 Hku? a. Linear waveguide 1
@7Ec(]yp Label: linear1
^Hx}.?1 Start Horizontal offset: 0.0
2lTt Start vertical offset: -0.75
S%iK); End Horizontal offset: 8.5
=\<NTu End vertical offset: -0.75
ciblj?"Wi Channel Thickness Tapering: Use Default
Va8
}JD Width: 1.5
b j&!$') Depth: 0.0
P T;{U<5 Profile: ChannelPro_n=1.5
\n{#r`T 1#vu)a1+b b. Linear waveguide 2
o(hUC$vW Label: linear2
$gl|^c\ Start Horizontal offset: 0.5
eC-&.Fl Start vertical offset: 0.05
p:~#(/GWf End Horizontal offset: 1.0
74([~Qs _M End vertical offset: 0.05
L]=]/>jQ6 Channel Thickness Tapering: Use Default
cfTT7O#Dc Width: 0.1
&W\e 5X<A Depth: 0.0
s ~Eo]e Profile: ChannelPro_n=3.14
$MR1
*_\V *j3U+HV 7.加入水平平面波:
jr`swyg Continuous Wave Wavelength: 0.63 General:
f Fi=/} Input field Transverse: Rectangular
tK3$,9+ X Position: 0.5
hk?i0#7W Direction: Negative Direction
xm{?h,U, Label: InputPlane1
JN8Rh 2D Transverse:
Nw"df=,{ Center Position: 4.5
sl$6Zv-l%0 Half width: 5.0
OeQ[-e Titlitng Angle: 45
ntIR #fB
Effective Refractive Index: Local Amplitude: 1.0
S)EF&S(TC 图2.波导结构(未设置周期)
jkk%zu nvR%Ub x 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
}ILBX4c 将Linear2代码段修改如下:
b$@I(.X: Dim Linear2
e)}E&D;${ for m=1 to 8
"]eB2k_> Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
Ce+:9} [ Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
\|>%/P Linear2.SetAttr "WidthExpr", "0.1"
.rBU"Rbo Linear2.SetAttr "Depth", "0"
[[[C`H@ Linear2.SetAttr "StartThickness", "0.000000"
JZ}zXv Linear2.SetAttr "EndThickness", "0.000000"
G8}owszT Linear2.SetProfileName "ChannelPro_n=3.14"
,1I-%6L Linear2.SetDefaultThicknessTaperMode True
z?DCQ lf-.c$.> 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
t^&hG7L_m, 图3.光栅布局通过VB脚本生成
y(DT^>0 f>Rux1Je4 设置仿真参数
\`y:#N<c 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
2sGKn
a 2. 在仿真参数对话框中,设置以下参数:
uihH")Mo TE simulation
Ar)EbGId Mesh Delta X: 0.015
3FvVM0l" Mesh Delta Z: 0.015
+&\.
]Pp Time Step Size: Auto Run for 1000 Time steps
b}(c'W*z% 设置边界条件设置X和Z边为各向异性PML边界条件。
ICz:>4M-dn Number of Anisotropic PML layers: 15
"EpH02{i 其它参数保持默认
ZY<RNwu 运行仿真
(&.T • 在仿真参数中点击Run按钮,启动仿真
;8<HB1 &, • 在分析仪中,可以观察到各场分量的时域响应
k9eyl) • 仿真完成后,点击“Yes”,启动分析仪。
f%PLR9Nh5@ (g@X.*c8 远场分析
衍射波
s/ABT.ZO 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
GJWGT`" 2. 选择“Definition of the Cross Cut”为z方向
e;v"d!H/ 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
%e[E@H 7 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
v{$?Ow T/u 图4.远场计算对话框
`Hw][qy# -~c-mt 5. 在远场对话框,设置以下参数:
Z'A 3\f Wavelength: 0.63
yf*'=q Refractive index: 1.5+0i
bj`GGxzOb Angle Initial: -90.0
v#gXXO[P1 Angle Final: 90.0
l[~$9C'ji Number of Steps: 721
Zb_A(mnzh Distance: 100, 000*wavelength
gdCit-3 Intensity
jW7ffb
`O } J?,?>Z 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
CA|l|
t^ 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
"'t f]s 图5.“Opti 2D Viewer”中的远场模式