光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
IHB{US1G •使用VB脚本生成光栅(或周期性)布局。
(#
?~^ut •光栅布局
模拟和后处理分析
2Q Bq 布局layout
'X[3y^q 我们将模拟如图1所示的二维光栅布局。
E%40u.0 图1.二维光栅布局
+ 1v@L 6lZhV[~Z/ 用VB脚本定义一个2D光栅布局
o#6j+fo!n .m+KXlP 步骤:
`FmI?:Cv 1 通过在
文件菜单中选择“New”,启动一个新项目。
T4Zp5m") 2 在“Wafer Properties”对话框中设置以下
参数 ? 8'4~1g`} Wafer Dimensions:
vB#3jI Length (mm): 8.5
K_}vmB\2l Width (mm): 3.0
rZzto;NDS ~j8x" 2D wafer properties:
_#-(XQ a Wafer refractive index: Air
VT-&"Jn 3 点击 Profiles 与 Materials.
0iHK1Pt} ;AHa|35\ 在“Materials”中加入以下
材料:
o[8Y %3 Name: N=1.5
Kk#8r+, Refractive index (Re:): 1.5
B:SzCC.B o&X!75^G> Name: N=3.14
*S<>_R 8 Refractive index (Re:): 3.14
[kn`~hI C96|T>bk 4.在“Profile”中定义以下轮廓:
-6 DfM, Name: ChannelPro_n=3.14
Z*kg= hs^ 2D profile definition, Material: n=3.14
JQ0KXS Nr f?
ko%c_p Name: ChannelPro_n=1.5
M22^.,Z 2D profile definition, Material: n=1.5
Ag}>gbz~G 2MJ0[9 6.画出以下波导结构:
zvD$N-#`p a. Linear waveguide 1
K);:+s- Label: linear1
oIf-s[uH Start Horizontal offset: 0.0
_H%ylAt1j Start vertical offset: -0.75
{?#g*QF|^ End Horizontal offset: 8.5
unP7("A0D End vertical offset: -0.75
x?f3XEA_ Channel Thickness Tapering: Use Default
+EkZyM~z2 Width: 1.5
}CQ GvH Depth: 0.0
~|fd=E% Profile: ChannelPro_n=1.5
2uU~$7~N 8l)^#"ySA b. Linear waveguide 2
'w!Hjq]$ Label: linear2
+tl THK Start Horizontal offset: 0.5
f{ENSUtCrR Start vertical offset: 0.05
J]Uki*s End Horizontal offset: 1.0
uVIs5IZzIi End vertical offset: 0.05
=|am=Q?Q Channel Thickness Tapering: Use Default
']4sx_)S Width: 0.1
gK`6NUj Depth: 0.0
X}g!Lp Profile: ChannelPro_n=3.14
~Kt.%K5lgt ;|}6\=( 7.加入水平平面波:
x|E$
f+ Continuous Wave Wavelength: 0.63 General:
.Ml}cE$L Input field Transverse: Rectangular
He&dVP X Position: 0.5
|A}E/=HPU Direction: Negative Direction
"y>l2V,4j% Label: InputPlane1
oIX]9~ 2D Transverse:
}1Q]C"hY Center Position: 4.5
+loD{
Half width: 5.0
Q%q_ Titlitng Angle: 45
yO$]9 Effective Refractive Index: Local Amplitude: 1.0
~#@sZ0/< 图2.波导结构(未设置周期)
0xZq?9a 8?P@<Do% 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
xZbm,.v 将Linear2代码段修改如下:
ZZ?=^g Dim Linear2
b pExYyt for m=1 to 8
;o"}7'4*R% Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
^!N _Nx/M Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
D.U)R7( Linear2.SetAttr "WidthExpr", "0.1"
R\1#)3e0 Linear2.SetAttr "Depth", "0"
9LzQp`In Linear2.SetAttr "StartThickness", "0.000000"
EKq9m=Ua@o Linear2.SetAttr "EndThickness", "0.000000"
`q%Z/!} Linear2.SetProfileName "ChannelPro_n=3.14"
fW|1AUD, Linear2.SetDefaultThicknessTaperMode True
(fb&5=Wzw 4AzS~5S 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
g:O~1jq 图3.光栅布局通过VB脚本生成
9`QWqu[ zeNvg/LI^ 设置仿真参数
Y0aO/6 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
gx@b|rj; 2. 在仿真参数对话框中,设置以下参数:
W1Ur~x` TE simulation
^|-x mUC Mesh Delta X: 0.015
.B_)w:oF Mesh Delta Z: 0.015
Tld%NE Time Step Size: Auto Run for 1000 Time steps
;40!2P8t 设置边界条件设置X和Z边为各向异性PML边界条件。
RY&Wvkjh Number of Anisotropic PML layers: 15
~z%K9YcyU 其它参数保持默认
7*~
rhQ 运行仿真
?VO*s-G:J • 在仿真参数中点击Run按钮,启动仿真
wp$CJ09f* • 在分析仪中,可以观察到各场分量的时域响应
*ZF7m_8u{ • 仿真完成后,点击“Yes”,启动分析仪。
*5.s@L( VU M($dh9 A_ 远场分析
衍射波
,8cw jS2E 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
2*F["E 2. 选择“Definition of the Cross Cut”为z方向
j*rra 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
Tg)Fr) 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
)9{?C4NQ 图4.远场计算对话框
`lqMifD V[uB0#Lp 5. 在远场对话框,设置以下参数:
8'@pX< Wavelength: 0.63
+#A>[,U Refractive index: 1.5+0i
-Q<3Q_ Angle Initial: -90.0
?)'j;1_=E3 Angle Final: 90.0
Vq -!1.v3 Number of Steps: 721
p4bQCI Distance: 100, 000*wavelength
Q!zg=_z- Intensity
uhbo/7d'7 +_3>T''_ 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
:p%nQF,*f 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
g\OPidY 图5.“Opti 2D Viewer”中的远场模式