光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
F H1Z2 •使用VB脚本生成光栅(或周期性)布局。
Ks\ NE=;5 •光栅布局
模拟和后处理分析
> 0<)= 布局layout
]
7 _`]7p 我们将模拟如图1所示的二维光栅布局。
5 Qoew9rA 图1.二维光栅布局
0dh=fcb " ZX3sfkh 用VB脚本定义一个2D光栅布局
21(p|`X o:6@Kw^ 步骤:
!!o8N<NU 1 通过在
文件菜单中选择“New”,启动一个新项目。
v<fnB 2 在“Wafer Properties”对话框中设置以下
参数 g&n )fF Wafer Dimensions:
p^iRPI Length (mm): 8.5
3 R&lqxhg Width (mm): 3.0
x}twsc` eX_D/25 $ 2D wafer properties:
b}Zd)2G Wafer refractive index: Air
q:<{% U$ 3 点击 Profiles 与 Materials.
4Bl{WyMJ | |7#[ (%D! 在“Materials”中加入以下
材料:
B&N/$=5m Name: N=1.5
Z;h<6[( Refractive index (Re:): 1.5
S(mF%WJ `EtS!zD~b Name: N=3.14
@zgdq Refractive index (Re:): 3.14
V
i&*&"q B(F,h+ajy 4.在“Profile”中定义以下轮廓:
KzQ3.)/q Name: ChannelPro_n=3.14
*|_"W+JC 2D profile definition, Material: n=3.14
9h0X &1u .SWt3|Pi5 Name: ChannelPro_n=1.5
l$hJE;n 2D profile definition, Material: n=1.5
_GKB6e% 3/#:~a9Q 6.画出以下波导结构:
-n0C4 kZ2o a. Linear waveguide 1
"6a8s; Label: linear1
.%zy`n Start Horizontal offset: 0.0
!`mZ0c+ Start vertical offset: -0.75
,|88r=} End Horizontal offset: 8.5
GHQ;hN: End vertical offset: -0.75
u0`%+:]0 Channel Thickness Tapering: Use Default
hd 0'u Width: 1.5
7#<c>~
Depth: 0.0
bZx!0>h Profile: ChannelPro_n=1.5
,/O[=9l36R )NR Q2 b. Linear waveguide 2
VxzkQ}o Label: linear2
z_
=Bt Start Horizontal offset: 0.5
_uc\ D
R Start vertical offset: 0.05
<58l;<0 End Horizontal offset: 1.0
v=95_l End vertical offset: 0.05
?6!]Nl1gr Channel Thickness Tapering: Use Default
{m`A!qcD| Width: 0.1
$F.kK%-* Depth: 0.0
{_U
Kttp Profile: ChannelPro_n=3.14
{iG@U=> gKg-O 7.加入水平平面波:
tb?YLxMV Continuous Wave Wavelength: 0.63 General:
<ER'Ed
Input field Transverse: Rectangular
7a=S X Position: 0.5
i*eAdIi Direction: Negative Direction
*6BThvg|&X Label: InputPlane1
NU(AEfF 2D Transverse:
irk*~k ? Center Position: 4.5
e5Mln!.o Half width: 5.0
]B=C|usJ Titlitng Angle: 45
Y
qcD-K Effective Refractive Index: Local Amplitude: 1.0
u>pBB@ 图2.波导结构(未设置周期)
\Ey~3&x9f EVQ0l@K
8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
L_em') 将Linear2代码段修改如下:
71C42=AU Dim Linear2
[ $fJRR for m=1 to 8
DF {OnF Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
a ,7&" Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
/+e~E;3bO Linear2.SetAttr "WidthExpr", "0.1"
NcCvm# Linear2.SetAttr "Depth", "0"
6Fy@s Linear2.SetAttr "StartThickness", "0.000000"
IaFr& Linear2.SetAttr "EndThickness", "0.000000"
\M]-bw` Linear2.SetProfileName "ChannelPro_n=3.14"
w{ `|N$ Linear2.SetDefaultThicknessTaperMode True
S=3^Q;V/1 ):EBgg4-N 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
0|D&"/.R#! 图3.光栅布局通过VB脚本生成
3?&h^UX F~U!1) 设置仿真参数
r.0oxH'] 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
sCl$f7" 2. 在仿真参数对话框中,设置以下参数:
M2@^bB\J TE simulation
69#8Z+dw7 Mesh Delta X: 0.015
mDFlz1J,e Mesh Delta Z: 0.015
pUl8{YGS Time Step Size: Auto Run for 1000 Time steps
)
uP\>vRy 设置边界条件设置X和Z边为各向异性PML边界条件。
G%#05jH Number of Anisotropic PML layers: 15
Lv1{k\aw 其它参数保持默认
Eaad,VBtU 运行仿真
ngi<v6 i • 在仿真参数中点击Run按钮,启动仿真
}%{MPqg • 在分析仪中,可以观察到各场分量的时域响应
>u J/TQU • 仿真完成后,点击“Yes”,启动分析仪。
+ E"[ #t!}K_ 远场分析
衍射波
8cHE[I 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
u1K\@jlw 2. 选择“Definition of the Cross Cut”为z方向
AY_Q""v 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
P,bd' 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
+pqM ^3t|y 图4.远场计算对话框
NHX>2-b ;K:8#XuV 5. 在远场对话框,设置以下参数:
> 8]j
Wavelength: 0.63
#f'DEo<b Refractive index: 1.5+0i
TOI4?D] Angle Initial: -90.0
AW5iV3 Angle Final: 90.0
0_eQlatb Number of Steps: 721
b4,jN~ci Distance: 100, 000*wavelength
K'6[J"dB Intensity
G%TL/Z40 GO5 ~!g 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
?)3jqQ. 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
BQ05`nkF 图5.“Opti 2D Viewer”中的远场模式