光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
^b&hy&ag •使用VB脚本生成光栅(或周期性)布局。
tjZS:@3
Z •光栅布局
模拟和后处理分析
&Ai+t2 布局layout
SM}&
@cJ 我们将模拟如图1所示的二维光栅布局。
0s4]eEXH 图1.二维光栅布局
d.sn D)X N,)rrBD 用VB脚本定义一个2D光栅布局
|$T?P*pI. &WbHM)_n 步骤:
2 $Z4 >! 1 通过在
文件菜单中选择“New”,启动一个新项目。
ud(w0eX 2 在“Wafer Properties”对话框中设置以下
参数 iA2TvP# Wafer Dimensions:
7n#Mh-vq Length (mm): 8.5
-P]onD
Width (mm): 3.0
5N>L|J2 kKQD$g.z6 2D wafer properties:
`?N|{kb Wafer refractive index: Air
_T^@,!& 3 点击 Profiles 与 Materials.
QswFISch AQ-R^kT 在“Materials”中加入以下
材料:
cMUmJH Name: N=1.5
R*"zLJP Refractive index (Re:): 1.5
E-rGOm" m ?cr^.LV|h^ Name: N=3.14
GQkI7C Refractive index (Re:): 3.14
*fDhNmQ ` ECOzquvM 4.在“Profile”中定义以下轮廓:
e=6C0fr Name: ChannelPro_n=3.14
}5gQ dj[Y 2D profile definition, Material: n=3.14
!"^//2N+, g<4@5OQKu Name: ChannelPro_n=1.5
O~bzTn 2D profile definition, Material: n=1.5
LZpqv~av :jWQev"/ 6.画出以下波导结构:
,|R\ Z,s a. Linear waveguide 1
[{-;cpM\ Label: linear1
k5Df97\s Start Horizontal offset: 0.0
WGMEZx Start vertical offset: -0.75
sU?%"q End Horizontal offset: 8.5
7OZjLD{ID End vertical offset: -0.75
6c#1Do(W+ Channel Thickness Tapering: Use Default
Pu]Pp`SP Width: 1.5
H|!|fo-Tx Depth: 0.0
o7@81QA!e Profile: ChannelPro_n=1.5
y}lqF8s ?F%,d{^ b. Linear waveguide 2
]OA8H[U-eA Label: linear2
7NfA)$ Start Horizontal offset: 0.5
k'{Bhi4 Start vertical offset: 0.05
20RI S j End Horizontal offset: 1.0
Z:%~Al: End vertical offset: 0.05
Bt-2S,c,o Channel Thickness Tapering: Use Default
z)y{(gR Width: 0.1
n|I5ylt Depth: 0.0
e/!xyd Profile: ChannelPro_n=3.14
g)~"-uQQ )KD*G;<O]L 7.加入水平平面波:
5@@ilvwzz Continuous Wave Wavelength: 0.63 General:
sq'bo8r Input field Transverse: Rectangular
0W>,RR) X Position: 0.5
HO
=\ Direction: Negative Direction
_0e;&2') Label: InputPlane1
r5aOQ 2D Transverse:
z0-`D.D@\ Center Position: 4.5
CrI:TB>/" Half width: 5.0
2_Otv2 Titlitng Angle: 45
9TbRrS09 Effective Refractive Index: Local Amplitude: 1.0
.~dNzonq 图2.波导结构(未设置周期)
V17SJSC- 1$ C\` 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
?Q%X,!~\: 将Linear2代码段修改如下:
5QUL-*t Dim Linear2
Z |CL:)h for m=1 to 8
$Q< >MB7 Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
DF!*S{) Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
"_
i: Linear2.SetAttr "WidthExpr", "0.1"
^8eu+E.{ Linear2.SetAttr "Depth", "0"
E#m|Sq Linear2.SetAttr "StartThickness", "0.000000"
}&O}t{gS* Linear2.SetAttr "EndThickness", "0.000000"
a$ FO5%o Linear2.SetProfileName "ChannelPro_n=3.14"
`8D}\w<eI Linear2.SetDefaultThicknessTaperMode True
%gE*x
# z<9wh2*M 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
&!5S'J% 图3.光栅布局通过VB脚本生成
m3E`kW| iSg^np 设置仿真参数
(^).$g5Hg 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
<*55d2 2. 在仿真参数对话框中,设置以下参数:
'6zD`Q TE simulation
TY6Q;BTU Mesh Delta X: 0.015
#?EmC]N7 Mesh Delta Z: 0.015
&;]KntxB Time Step Size: Auto Run for 1000 Time steps
SV0h'd(b 设置边界条件设置X和Z边为各向异性PML边界条件。
.~t.B!rVSB Number of Anisotropic PML layers: 15
U sS"WflB 其它参数保持默认
%RS8zN 运行仿真
a08`h.dyN • 在仿真参数中点击Run按钮,启动仿真
qmx4hs8sh • 在分析仪中,可以观察到各场分量的时域响应
ic(`E v • 仿真完成后,点击“Yes”,启动分析仪。
;Wu6f"+Y# 7dbGUbT 远场分析
衍射波
!m<v@SmL\ 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
~ '/Yp8( 2. 选择“Definition of the Cross Cut”为z方向
Oq3]ZUVa 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
51&K 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
14
Toi 图4.远场计算对话框
hiQ #< +1o4l i 5. 在远场对话框,设置以下参数:
$vK(Qm Wavelength: 0.63
A,;V|jv9 Refractive index: 1.5+0i
7uW=f kxT Angle Initial: -90.0
LW '3m5 Angle Final: 90.0
mW&hUPRx Number of Steps: 721
;S.o`z1GI Distance: 100, 000*wavelength
yrVk$k#6} Intensity
3BzC'nplm ;*}tbh3;. 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
g#/"3P2H 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
AkE(I16Uy~ 图5.“Opti 2D Viewer”中的远场模式