光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
=upP3rw •使用VB脚本生成光栅(或周期性)布局。
X+@,vCC •光栅布局
模拟和后处理分析
A@'W $p?5r 布局layout
>f8,YisH 我们将模拟如图1所示的二维光栅布局。
2oASz| 图1.二维光栅布局
Mp=+*I[ ~-i?= 用VB脚本定义一个2D光栅布局
tpK4 gjf $c47cJO)W 步骤:
XS/TYdXB8 1 通过在
文件菜单中选择“New”,启动一个新项目。
B[V=l<J 2 在“Wafer Properties”对话框中设置以下
参数 KL`>mJo$ Wafer Dimensions:
D*,H%xA Length (mm): 8.5
'Y Zs6rcJ Width (mm): 3.0
0yNlf-O $g;xw?~# 2D wafer properties:
ro@BmRMW Wafer refractive index: Air
k0?6.[ku 3 点击 Profiles 与 Materials.
&nProzC SiT &p 在“Materials”中加入以下
材料:
.5xg;Qg\Y Name: N=1.5
gK#w$s50 Refractive index (Re:): 1.5
(5_(s`q. ~!kbB4`WK Name: N=3.14
@eWx4bl Refractive index (Re:): 3.14
+Z*%,m=N( tEs$+b 4.在“Profile”中定义以下轮廓:
~]W8NaQB( Name: ChannelPro_n=3.14
<
.!3yy 2D profile definition, Material: n=3.14
'h6RZKG T gId+hxFa:r Name: ChannelPro_n=1.5
V
"" 2D profile definition, Material: n=1.5
_I!&w!3oM a=dN.OB}F7 6.画出以下波导结构:
,YTIYG]( a. Linear waveguide 1
k_B^2= Label: linear1
.@Cshj Start Horizontal offset: 0.0
tS7u#YMh Start vertical offset: -0.75
<~OyV5:6 End Horizontal offset: 8.5
yNL71 >w4 End vertical offset: -0.75
_JH6bvbQ Channel Thickness Tapering: Use Default
rpmDr7G Width: 1.5
(1^(V)@ Depth: 0.0
-tQ|&fl Profile: ChannelPro_n=1.5
i}19$x.D` 9':$!Eoq b. Linear waveguide 2
A-FwNo2"% Label: linear2
UsTPNQj Start Horizontal offset: 0.5
[6|vx},N Start vertical offset: 0.05
"6i9 f$N End Horizontal offset: 1.0
TfPx End vertical offset: 0.05
%`'VXR?`h= Channel Thickness Tapering: Use Default
&bRH(yF Width: 0.1
\2jY)UrQs Depth: 0.0
EIRf6jL Profile: ChannelPro_n=3.14
]O."M"B $((<le5-) 7.加入水平平面波:
@!$NUY8,A# Continuous Wave Wavelength: 0.63 General:
zjmc>++<t Input field Transverse: Rectangular
~a $%
a X Position: 0.5
BlUY9`VWh@ Direction: Negative Direction
k$UBZ,=iC Label: InputPlane1
dQ[lXV[}v 2D Transverse:
Gm.hBNgp Center Position: 4.5
DKZ69^ Half width: 5.0
]^y}}y Titlitng Angle: 45
/Q!F/HY3ZS Effective Refractive Index: Local Amplitude: 1.0
_MU'he^W 图2.波导结构(未设置周期)
9O"?T7i"# S,H{\c 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
gT.-Cf{ 将Linear2代码段修改如下:
S%@$J~\rx Dim Linear2
llzl-2`/ for m=1 to 8
oZ}e
w!V Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
bA)Xjq)Rr Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
I9E@2[=! Linear2.SetAttr "WidthExpr", "0.1"
VxCH}&! Linear2.SetAttr "Depth", "0"
VV Linear2.SetAttr "StartThickness", "0.000000"
eZcm3=WV| Linear2.SetAttr "EndThickness", "0.000000"
jK =[ Linear2.SetProfileName "ChannelPro_n=3.14"
1}6pq2 Linear2.SetDefaultThicknessTaperMode True
yS*PS='P K +~ 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
%_
~[+~# 图3.光栅布局通过VB脚本生成
>HFJm&lQ Q%7EC>V 设置仿真参数
TDoYp 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
R/#*~tPi8 2. 在仿真参数对话框中,设置以下参数:
(\}IOCNS TE simulation
Z|W=.RdA; Mesh Delta X: 0.015
%Y@3)
Mesh Delta Z: 0.015
=9c24j Time Step Size: Auto Run for 1000 Time steps
SCjACQ}- 设置边界条件设置X和Z边为各向异性PML边界条件。
mT.F$Y9 Number of Anisotropic PML layers: 15
yhIg)/?L 其它参数保持默认
i`Tne3) 运行仿真
rLwc=(| • 在仿真参数中点击Run按钮,启动仿真
?o4&cCFOE • 在分析仪中,可以观察到各场分量的时域响应
O!g>
f • 仿真完成后,点击“Yes”,启动分析仪。
)L{\k$r!EM )"1D-Bc\Q 远场分析
衍射波
"\9@gfsp) 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
7@sWT<P 2. 选择“Definition of the Cross Cut”为z方向
;cO0Y.V9l 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
aQ)9<LsI 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
O/k4W# 图4.远场计算对话框
_ReQQti[ %S^`/Snv" 5. 在远场对话框,设置以下参数:
yaf2+zV* Wavelength: 0.63
,y0kzwPR1 Refractive index: 1.5+0i
ri:fo'4TO Angle Initial: -90.0
{M$1?j"7 Angle Final: 90.0
+LUL-d Number of Steps: 721
yR`-rJb V Distance: 100, 000*wavelength
1kpI?Plki Intensity
@ +7'0[y? %=]{~5f> 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
1t)6wk
N 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
>$?Z&7Lv 图5.“Opti 2D Viewer”中的远场模式