光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
*Co+UJjT •使用VB脚本生成光栅(或周期性)布局。
?V+=uTCq •光栅布局
模拟和后处理分析
%%#zO
Z 布局layout
cVU[>gkg_ 我们将模拟如图1所示的二维光栅布局。
0<!BzG 图1.二维光栅布局
7_LE2jpC,5 b=sc2)3? 用VB脚本定义一个2D光栅布局
LY7'wONx j`bOJTBE 步骤:
FRr<K^M 1 通过在
文件菜单中选择“New”,启动一个新项目。
<D?`*#K 2 在“Wafer Properties”对话框中设置以下
参数 Y,{X v Wafer Dimensions:
/h;X1Htx} Length (mm): 8.5
MQ01!Y[q_7 Width (mm): 3.0
;G?_^ 0 9tJiIr8i 2D wafer properties:
^K8Ey#T Wafer refractive index: Air
|&7l*j(\ 3 点击 Profiles 与 Materials.
dPS}\&1 VHy$\5oYg 在“Materials”中加入以下
材料:
:`d& |BB Name: N=1.5
-YYQnN Refractive index (Re:): 1.5
u(P
D+Gz V\A?1
Name: N=3.14
UGIyNMY Refractive index (Re:): 3.14
TB9ukLG^<< >qOhzbAH{< 4.在“Profile”中定义以下轮廓:
PR6{Y]e% Name: ChannelPro_n=3.14
75a3H` 2D profile definition, Material: n=3.14
N=(rl#< ]cbY@U3!2 Name: ChannelPro_n=1.5
EBJaFz' 2D profile definition, Material: n=1.5
.Sm7na
K `.@N9+Aj 6.画出以下波导结构:
9R!.U\sq a. Linear waveguide 1
8[eH8m#~$ Label: linear1
=OCHV+m Start Horizontal offset: 0.0
jZ)1]Q2 Start vertical offset: -0.75
I~Ziq10 End Horizontal offset: 8.5
#=h~Lr'UH End vertical offset: -0.75
V^"5cW Channel Thickness Tapering: Use Default
7JjTm^bu Width: 1.5
) "'J]6 Depth: 0.0
S?&ntUah Profile: ChannelPro_n=1.5
lbMb a
*>$6H; b. Linear waveguide 2
qWdL|8 Label: linear2
AFyf7^^k Start Horizontal offset: 0.5
P@)zNik[ Start vertical offset: 0.05
ka655O/)& End Horizontal offset: 1.0
)jvYJ9s End vertical offset: 0.05
2!}5shB Channel Thickness Tapering: Use Default
N|wI=To Width: 0.1
C/!kMMh>vV Depth: 0.0
X180_Kt2 Profile: ChannelPro_n=3.14
=98@MX%P W2s6!_AN 7.加入水平平面波:
SD |5v* Continuous Wave Wavelength: 0.63 General:
K.B!-< Input field Transverse: Rectangular
aVEg%8 X Position: 0.5
a(QYc?u Direction: Negative Direction
EHmw(%a|+ Label: InputPlane1
!A qSG- 2D Transverse:
j8P=8w{ Center Position: 4.5
\G:\36l Half width: 5.0
N"Q-xK Titlitng Angle: 45
=XuBan3B> Effective Refractive Index: Local Amplitude: 1.0
XX+%:,G 图2.波导结构(未设置周期)
n'>`2 s A@4sb
W_
8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
w,n&K6< 将Linear2代码段修改如下:
Dm2&}{&K Dim Linear2
qf-0 | w for m=1 to 8
]hRCB=G Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
!/2uO5 Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
_NA[g:DZ&O Linear2.SetAttr "WidthExpr", "0.1"
:+06M@ Linear2.SetAttr "Depth", "0"
UU~S{!*+L Linear2.SetAttr "StartThickness", "0.000000"
rE)lt0mkv Linear2.SetAttr "EndThickness", "0.000000"
6B'd]Fe Linear2.SetProfileName "ChannelPro_n=3.14"
9l<f?OzAO Linear2.SetDefaultThicknessTaperMode True
ZjLu qo bLuAe
EA 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
zT4SI'r?f 图3.光栅布局通过VB脚本生成
&?59{B.mD
UDl[ 设置仿真参数
,NB?_\$c 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
xvU@,bzz 2. 在仿真参数对话框中,设置以下参数:
F/}(FG<'>I TE simulation
}&!fT\4
Mesh Delta X: 0.015
hhRUC&Y%V Mesh Delta Z: 0.015
Qu]F<H*Y| Time Step Size: Auto Run for 1000 Time steps
<a_ytSoG1 设置边界条件设置X和Z边为各向异性PML边界条件。
^N#z&oh Number of Anisotropic PML layers: 15
4E:kDl* @ 其它参数保持默认
cc37(=oKL 运行仿真
J%r$jpd' • 在仿真参数中点击Run按钮,启动仿真
xYSNop3_ • 在分析仪中,可以观察到各场分量的时域响应
w`ebZa/j • 仿真完成后,点击“Yes”,启动分析仪。
JlaT
-j 0q}k"(9 远场分析
衍射波
(m:ktd=x 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
oQ
YmywY 2. 选择“Definition of the Cross Cut”为z方向
bMU0h,|] 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
nymro[@O~ 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
Ry_"so w4 图4.远场计算对话框
f~a]og5|G tg5G`P5PJ 5. 在远场对话框,设置以下参数:
3Q;XvrGA Wavelength: 0.63
xWR<>Og. Refractive index: 1.5+0i
9IfeaoZZ4q Angle Initial: -90.0
E)ne
z Angle Final: 90.0
\+,%RN. Number of Steps: 721
T'8d|$X Distance: 100, 000*wavelength
ZF@T,i9 Intensity
Ynxzkm S JA!?vs 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
ku*H*o~ 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
&-R(u}m-F 图5.“Opti 2D Viewer”中的远场模式