光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
">90E^ •使用VB脚本生成光栅(或周期性)布局。
zVaCXNcbo •光栅布局
模拟和后处理分析
46XN3r 布局layout
f(Hu {c5yV 我们将模拟如图1所示的二维光栅布局。
Fb_S&! 图1.二维光栅布局
e3(<8]`b[ !]b@RUU 用VB脚本定义一个2D光栅布局
WH$HI/%*m ^Kq|ID
AP 步骤:
f&I7,"v 1 通过在
文件菜单中选择“New”,启动一个新项目。
v5$s#f< 2 在“Wafer Properties”对话框中设置以下
参数 <^><3U` Wafer Dimensions:
.[j%sGdKl Length (mm): 8.5
bhg}-dto Width (mm): 3.0
b1^cD6sT+ |4>:M\h
2D wafer properties:
8T5k-HwE Wafer refractive index: Air
e!0OW7kV 3 点击 Profiles 与 Materials.
w~@[r4W `gguip-C 在“Materials”中加入以下
材料:
XAD3Z? Name: N=1.5
WZ~> BM Refractive index (Re:): 1.5
=*MR(b> Z)9R9s Name: N=3.14
}~I|t!GL Refractive index (Re:): 3.14
g(m_yXIx ti_u!kNv 4.在“Profile”中定义以下轮廓:
KD*O%@X5C Name: ChannelPro_n=3.14
ecFi(eMD 2D profile definition, Material: n=3.14
ZBM!MSf: !v>ew9 Name: ChannelPro_n=1.5
4rp6 C/i 2D profile definition, Material: n=1.5
J r*"V` Gp|JU Fo 6.画出以下波导结构:
!,bPe5?Ql a. Linear waveguide 1
WL-0( Label: linear1
,2zKQ2z Start Horizontal offset: 0.0
jnBC;I[: Start vertical offset: -0.75
rc{o?U'^- End Horizontal offset: 8.5
+/N1_ End vertical offset: -0.75
z7=fDe
- Channel Thickness Tapering: Use Default
80&D"" Width: 1.5
,wK 1=7 Depth: 0.0
e\N0@ Profile: ChannelPro_n=1.5
5*j:K&R-.K "c
Pz|~ b. Linear waveguide 2
8/q*o>[? Label: linear2
=K'L|QKF Start Horizontal offset: 0.5
VS`Z_Xn Start vertical offset: 0.05
ScJu_Af End Horizontal offset: 1.0
v5 Y)al@ End vertical offset: 0.05
$u5.!{Wq? Channel Thickness Tapering: Use Default
Vy;_GfT$ Width: 0.1
8 +(c 1 Depth: 0.0
2OC dG Profile: ChannelPro_n=3.14
Sx&mv.?X zoXuFg 7.加入水平平面波:
.^H1\p];Lw Continuous Wave Wavelength: 0.63 General:
RV92qn
B Input field Transverse: Rectangular
l<N?' & X Position: 0.5
[V5-%w^ Direction: Negative Direction
^[TOZXL`: Label: InputPlane1
cx:jUsb6 2D Transverse:
zJ_My&~ Center Position: 4.5
l $ Zs~@N Half width: 5.0
*vs~SzF$ Titlitng Angle: 45
"1%*'B^}bw Effective Refractive Index: Local Amplitude: 1.0
v=Mz I#0L 图2.波导结构(未设置周期)
0UjyMEiK R=86w_ 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
C->[$HcRa 将Linear2代码段修改如下:
8Mb$+^zU Dim Linear2
R `Q?J[e for m=1 to 8
yu_gNro L Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
7b,AQ9 Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
{~1M Linear2.SetAttr "WidthExpr", "0.1"
Dauo(Uhuo Linear2.SetAttr "Depth", "0"
^Kum%<[i Linear2.SetAttr "StartThickness", "0.000000"
=U_@zDD@V Linear2.SetAttr "EndThickness", "0.000000"
d<?X3&J Linear2.SetProfileName "ChannelPro_n=3.14"
~ i'C/[P Linear2.SetDefaultThicknessTaperMode True
5j1 IH,yW 0gi}"v 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
ASM1Y]'Z 图3.光栅布局通过VB脚本生成
_<Vg[-:1 `#<eA*^g5 设置仿真参数
/0!$p[cjm 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
|nfH-JytV 2. 在仿真参数对话框中,设置以下参数:
Oo$%Yh51~ TE simulation
+}Auk|>Dc Mesh Delta X: 0.015
G`WzJS*}v Mesh Delta Z: 0.015
`7$Oh{67 Time Step Size: Auto Run for 1000 Time steps
?e2Y`0 设置边界条件设置X和Z边为各向异性PML边界条件。
<H_LFrB$W Number of Anisotropic PML layers: 15
EKJH_!% 其它参数保持默认
BDnBBbBrz 运行仿真
A1 b6Zt • 在仿真参数中点击Run按钮,启动仿真
A7e_w
7?a • 在分析仪中,可以观察到各场分量的时域响应
p+5#dbyr • 仿真完成后,点击“Yes”,启动分析仪。
@OrXbG7&># BiI{8`M!$x 远场分析
衍射波
&U854 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
-ca]Q|m 8 2. 选择“Definition of the Cross Cut”为z方向
B=^2g}mgK 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
,Zr YJ< 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
R+x%r&L5F 图4.远场计算对话框
{<~s&EPd n*Q4G}p 5. 在远场对话框,设置以下参数:
?n73J wH Wavelength: 0.63
0n7HkDo Refractive index: 1.5+0i
?WMi S]Q\ Angle Initial: -90.0
}$w4SpR Angle Final: 90.0
_{3k+DQ Number of Steps: 721
~c9vdK Distance: 100, 000*wavelength
.Wd.)^? Intensity
` 3vN R" *%z<P~} 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
J>/Ci\OB 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
U8Cw7u2 图5.“Opti 2D Viewer”中的远场模式