光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
__N.#c/l{ •使用VB脚本生成光栅(或周期性)布局。
2<W&\D o@ •光栅布局
模拟和后处理分析
=:7$/T'Qg 布局layout
$Xf (^K 我们将模拟如图1所示的二维光栅布局。
1"E\C/c 图1.二维光栅布局
;)/@Xx V|?WF& 用VB脚本定义一个2D光栅布局
I0w%8bs wK5_t[[ 步骤:
ExhL[1E 1 通过在
文件菜单中选择“New”,启动一个新项目。
%$X\" 2 在“Wafer Properties”对话框中设置以下
参数 iD_TP Wafer Dimensions:
z1j|E
: Length (mm): 8.5
pM$ @m] Width (mm): 3.0
2<6j1D^jM 5w3Fqu>39? 2D wafer properties:
sBW3{uK Wafer refractive index: Air
9YKDguG 3 点击 Profiles 与 Materials.
X0i3 _RVa s-D?) 在“Materials”中加入以下
材料:
X#J6Umutm Name: N=1.5
1i-[+ Refractive index (Re:): 1.5
,b.n{91[]x *o4%ul\3Y| Name: N=3.14
h_ ZX/k Refractive index (Re:): 3.14
P[i\e7mR (2txM"Dja 4.在“Profile”中定义以下轮廓:
:YvbU Y Name: ChannelPro_n=3.14
;93KG4a 2D profile definition, Material: n=3.14
O%$O(l %$n02"@ Name: ChannelPro_n=1.5
'`o[+. 2D profile definition, Material: n=1.5
5'
\)` 5si}i'in 6.画出以下波导结构:
zO.6WJ a. Linear waveguide 1
MUwVG>b8J~ Label: linear1
[thboP.? Start Horizontal offset: 0.0
azGnP3_ Start vertical offset: -0.75
*x,HnHT End Horizontal offset: 8.5
xqWj|jA End vertical offset: -0.75
K`(#K#n Channel Thickness Tapering: Use Default
>]/dOH,A Width: 1.5
P\(30 Depth: 0.0
$
I<|-]u Profile: ChannelPro_n=1.5
m5gI~1(9 mw+j|{[ b. Linear waveguide 2
.TN2s\:]jw Label: linear2
]
09y y Start Horizontal offset: 0.5
-Enbcz(B Start vertical offset: 0.05
VkXn8J End Horizontal offset: 1.0
q$ >_WF#|| End vertical offset: 0.05
mQ,{=C=D Channel Thickness Tapering: Use Default
e^frVEV Width: 0.1
DQ_ 2fX~) Depth: 0.0
.mt^m
Profile: ChannelPro_n=3.14
;1E_o iS0 5YW 7.加入水平平面波:
p#<nK+6.8 Continuous Wave Wavelength: 0.63 General:
"::9aYd! Input field Transverse: Rectangular
x]'H jTqX X Position: 0.5
taV|YP$ Direction: Negative Direction
V.j#E1 P Label: InputPlane1
8p,>y(o 2D Transverse:
P#bm uCOS Center Position: 4.5
k~|ZO/X@l% Half width: 5.0
`,-STIh) Titlitng Angle: 45
Iaa|qJ4 Effective Refractive Index: Local Amplitude: 1.0
<G9<"{ 图2.波导结构(未设置周期)
m5qCq9Y lk o3]A3 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
sL
mW\\kA> 将Linear2代码段修改如下:
f?m5pax| Dim Linear2
%&1$~m0 for m=1 to 8
Nuq(4Yf1W Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
*h])mqhB Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
$QffrU' Linear2.SetAttr "WidthExpr", "0.1"
!qS05 Linear2.SetAttr "Depth", "0"
JU2P%3 Linear2.SetAttr "StartThickness", "0.000000"
PL!tk^;6- Linear2.SetAttr "EndThickness", "0.000000"
o@',YF>OQ Linear2.SetProfileName "ChannelPro_n=3.14"
`\e'K56W6 Linear2.SetDefaultThicknessTaperMode True
*vD/(&pQ1: 2<m
Q,,j 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
%&2B 图3.光栅布局通过VB脚本生成
`.`FgaJ
| wOM<XhZ 设置仿真参数
fv/v| 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
VLx T"]f 2. 在仿真参数对话框中,设置以下参数:
`W="g6( TE simulation
m&ZJqsZIL Mesh Delta X: 0.015
.Nk6 Mesh Delta Z: 0.015
30BR0C Time Step Size: Auto Run for 1000 Time steps
#4lHaFq 设置边界条件设置X和Z边为各向异性PML边界条件。
^@Y9!G= Number of Anisotropic PML layers: 15
9<w=),R`8 其它参数保持默认
kp.|gzA6 运行仿真
F*.
/D~K • 在仿真参数中点击Run按钮,启动仿真
flPZlL • 在分析仪中,可以观察到各场分量的时域响应
5@iy3olP • 仿真完成后,点击“Yes”,启动分析仪。
NC;T( @ du8!3I 远场分析
衍射波
uiuTv)pwF 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
> `0| X 2. 选择“Definition of the Cross Cut”为z方向
TftOYY.hQ 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
i >J:W"W 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
jigbeHRy 图4.远场计算对话框
|<'10 &!4(
0u 5. 在远场对话框,设置以下参数:
EO"=\C, Wavelength: 0.63
:nt}7Dn' Refractive index: 1.5+0i
PXR0 Yn Angle Initial: -90.0
Vj29L?3 Angle Final: 90.0
VBhE{4J Number of Steps: 721
LuLy6]6D; Distance: 100, 000*wavelength
j#CuR7m Intensity
+6uOg,; 8R&z3k;!t 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
~xP
Szf 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
YdPlN];[ 图5.“Opti 2D Viewer”中的远场模式