光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
hZU@35~BN •使用VB脚本生成光栅(或周期性)布局。
#'_i6 •光栅布局
模拟和后处理分析
ok iI: 布局layout
*&^`Uk,[ 我们将模拟如图1所示的二维光栅布局。
0_J<=T?\"s 图1.二维光栅布局
^ dM,K
p OxZw;yD 用VB脚本定义一个2D光栅布局
&J,MJ{w6" 8%@7G* 步骤:
+W
x/zo 1 通过在
文件菜单中选择“New”,启动一个新项目。
R bM`"wrZ 2 在“Wafer Properties”对话框中设置以下
参数 $2~I-[ Wafer Dimensions:
pA&CBXio Length (mm): 8.5
A|Up>`QH Width (mm): 3.0
_
)b:F=4j k}(C.`. 2D wafer properties:
Hw-,sze j" Wafer refractive index: Air
rd vq(\A 3 点击 Profiles 与 Materials.
h%|Jkx!v-t )#%k/4(Y 在“Materials”中加入以下
材料:
}uz*6Z(S Name: N=1.5
KU|dw^Y k Refractive index (Re:): 1.5
xxpvVb)mF xPl+
rsU Name: N=3.14
7j8nDX< Refractive index (Re:): 3.14
8vjaQ5
JPltB8j? 4.在“Profile”中定义以下轮廓:
B{hP#bYK Name: ChannelPro_n=3.14
!vH7vq 2D profile definition, Material: n=3.14
X~(%Y#6 ^rO3B?_ Name: ChannelPro_n=1.5
f|P% 2D profile definition, Material: n=1.5
<xe=G]v T:p,!?kc7 6.画出以下波导结构:
8q58H[/c a. Linear waveguide 1
Dl_y[9 Label: linear1
I<PKwT/? Start Horizontal offset: 0.0
} Wx#"6 Start vertical offset: -0.75
X458%)G!(K End Horizontal offset: 8.5
T1sb6CT End vertical offset: -0.75
3\j{*f$J Channel Thickness Tapering: Use Default
,1J+3ugp& Width: 1.5
;<i `6e Depth: 0.0
0n` 1GU)W Profile: ChannelPro_n=1.5
n%yMf!M
.: MhaN+N b. Linear waveguide 2
O{:_-eI&d Label: linear2
@62QDlt; Start Horizontal offset: 0.5
g).k+ Start vertical offset: 0.05
X2^`Znq9 End Horizontal offset: 1.0
XMzL\Edo End vertical offset: 0.05
DlIy'@ . Channel Thickness Tapering: Use Default
ZU\TA| Width: 0.1
s
wgn( - Depth: 0.0
f-!t31?XK Profile: ChannelPro_n=3.14
j{PuZ^v1 CvDy;'{y1 7.加入水平平面波:
EA_6L\+8& Continuous Wave Wavelength: 0.63 General:
K.'II9-{ Input field Transverse: Rectangular
.b'hVOs{ X Position: 0.5
BIyNiol$AJ Direction: Negative Direction
gwHNz5 a*V Label: InputPlane1
zOO:`^ m 2D Transverse:
fS2 ^$"B| Center Position: 4.5
OY$P8y3MY Half width: 5.0
N&ZIsaK,j Titlitng Angle: 45
rBG8.E36J Effective Refractive Index: Local Amplitude: 1.0
H]>b<Cs 图2.波导结构(未设置周期)
|_7nvck CtItzp 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
u7R:7$H 将Linear2代码段修改如下:
^D`ARH Dim Linear2
BfQRw>dZ"{ for m=1 to 8
V-rzn171Q) Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
V0y Q Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
m E<n=g= Linear2.SetAttr "WidthExpr", "0.1"
5T]GyftFV Linear2.SetAttr "Depth", "0"
_h;#\ )%~ Linear2.SetAttr "StartThickness", "0.000000"
A'(v]w Linear2.SetAttr "EndThickness", "0.000000"
Ji%6/zV Linear2.SetProfileName "ChannelPro_n=3.14"
-UgD Linear2.SetDefaultThicknessTaperMode True
O%:EPdoU NKae~ 1b 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
J*@(rb#G 图3.光栅布局通过VB脚本生成
38(Cj~u=3 @mM])V 设置仿真参数
GMLDmTV 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
F^Q[P4>m\ 2. 在仿真参数对话框中,设置以下参数:
X2ShxD| TE simulation
}*0OLUFFJ Mesh Delta X: 0.015
cQj{[Wt4 Mesh Delta Z: 0.015
qSj$0Hq5XI Time Step Size: Auto Run for 1000 Time steps
Q)pm3Wi 设置边界条件设置X和Z边为各向异性PML边界条件。
?FC6NEu}8 Number of Anisotropic PML layers: 15
P8#;a 其它参数保持默认
.^]=h#[e 运行仿真
9H~{2Un • 在仿真参数中点击Run按钮,启动仿真
P=ARttT`( • 在分析仪中,可以观察到各场分量的时域响应
t%jB[w&,os • 仿真完成后,点击“Yes”,启动分析仪。
8!e1T,:b q r12"H 远场分析
衍射波
]F&<{\:_} 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
0:<dj:%M 2. 选择“Definition of the Cross Cut”为z方向
\A-w,]9^V 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
)2c[]d/a4 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
[;5?=X,LD 图4.远场计算对话框
M[9]t(" Yjo$^q 5. 在远场对话框,设置以下参数:
0Me*X Wavelength: 0.63
Q<]~>cd^ Refractive index: 1.5+0i
Z$h39hm?c Angle Initial: -90.0
F[ca4_lK Angle Final: 90.0
_SS6@`X Number of Steps: 721
>icK]W Distance: 100, 000*wavelength
-#XNZy!// Intensity
\]AsL& qG S]2KY 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
GdN'G 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
UYu 54`'kg 图5.“Opti 2D Viewer”中的远场模式