光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
Fl&Z}&5p •使用VB脚本生成光栅(或周期性)布局。
7e
D<( •光栅布局
模拟和后处理分析
w0N8a% 布局layout
SRf.8j 我们将模拟如图1所示的二维光栅布局。
74q|FQ 图1.二维光栅布局
J`x!c9 zg7 _f5n
t:- 用VB脚本定义一个2D光栅布局
orzy&4 8rA?X*|S! 步骤:
p[M*<==4 1 通过在
文件菜单中选择“New”,启动一个新项目。
$S _VR 2 在“Wafer Properties”对话框中设置以下
参数 pJ 7="n Wafer Dimensions:
-{'WIGm Length (mm): 8.5
xnm!$ $W Width (mm): 3.0
W6[# q%o z^r 2D wafer properties:
t)/:VImY Wafer refractive index: Air
lGAKHCs 3 点击 Profiles 与 Materials.
H]/!J] P1f@?R&t+ 在“Materials”中加入以下
材料:
5L8 )w5
Name: N=1.5
A#P]|i Refractive index (Re:): 1.5
XKq}^M&gy &;O)Dw Name: N=3.14
I>L@P`d Refractive index (Re:): 3.14
#+,O #XJ`/\E] 4.在“Profile”中定义以下轮廓:
IJt8*
cw Name: ChannelPro_n=3.14
7v^V]&&s 2D profile definition, Material: n=3.14
}yW*vy6` YZH&KGY Name: ChannelPro_n=1.5
,:1_I`d>#X 2D profile definition, Material: n=1.5
QirS=H+~ )+S^{tt 6.画出以下波导结构:
8S_v} NUm a. Linear waveguide 1
aV'r
oxM Label: linear1
)mVpJYt; Start Horizontal offset: 0.0
$yA2c^QS Start vertical offset: -0.75
)HN,A z" End Horizontal offset: 8.5
{KO+t7'Q End vertical offset: -0.75
') -Rv]xe Channel Thickness Tapering: Use Default
~Uz1()ftz Width: 1.5
t$W~X~// Depth: 0.0
C_JDQByfL Profile: ChannelPro_n=1.5
*?GV(/Q $WV N4fg b. Linear waveguide 2
fq2t^c|$ Label: linear2
zz1e)W/ Start Horizontal offset: 0.5
5@xl/ Start vertical offset: 0.05
bq<DW/ End Horizontal offset: 1.0
LT ZoO9O End vertical offset: 0.05
i$ :\, Channel Thickness Tapering: Use Default
LgX"Qk&Ca Width: 0.1
3LaqEj Depth: 0.0
$stBB Profile: ChannelPro_n=3.14
iEJY[P1 tL!R^Tf 7.加入水平平面波:
gADEjr*H Continuous Wave Wavelength: 0.63 General:
2X t$KF,? Input field Transverse: Rectangular
n
7Bua X Position: 0.5
g}\Yl. Direction: Negative Direction
SqF9#&F Label: InputPlane1
#6%9*Rh 2D Transverse:
PafsO,i- Center Position: 4.5
Alsr6uLT1 Half width: 5.0
8=#J:LeXj Titlitng Angle: 45
RI
q9wD}4( Effective Refractive Index: Local Amplitude: 1.0
85Hb~|0 图2.波导结构(未设置周期)
FB-_a i"{ \ > 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
'L"dM9#> 将Linear2代码段修改如下:
smM*HDK Dim Linear2
;
iK9'u for m=1 to 8
+Xg]@IS-eg Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
p+;[i%` Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
^\X-eeA Linear2.SetAttr "WidthExpr", "0.1"
-R[ *S " Linear2.SetAttr "Depth", "0"
BWbM$@'x Linear2.SetAttr "StartThickness", "0.000000"
`n#
{} % Linear2.SetAttr "EndThickness", "0.000000"
'01ifA^ Linear2.SetProfileName "ChannelPro_n=3.14"
-|l^- Qf! Linear2.SetDefaultThicknessTaperMode True
}BpCa6SAs P1Z+XRWOM 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
Fj`6v"h 图3.光栅布局通过VB脚本生成
WzC_M>_ V_&>0P{q 设置仿真参数
`nxm<~-\ 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
m&H@f: 2. 在仿真参数对话框中,设置以下参数:
Lwg@*:`d TE simulation
T-:
@p> Mesh Delta X: 0.015
"1P>,\Sjg Mesh Delta Z: 0.015
:CQ-?mT^LA Time Step Size: Auto Run for 1000 Time steps
$LLy#h?V] 设置边界条件设置X和Z边为各向异性PML边界条件。
` R;6]/I? Number of Anisotropic PML layers: 15
3}@!TI 其它参数保持默认
jORU+g 运行仿真
uHv9D%R • 在仿真参数中点击Run按钮,启动仿真
7n-;++a5] • 在分析仪中,可以观察到各场分量的时域响应
nQ0g,'o • 仿真完成后,点击“Yes”,启动分析仪。
_oB!-# ccUq!1 远场分析
衍射波
w!0`JPu 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
/5ngPHy& 2. 选择“Definition of the Cross Cut”为z方向
8u,f<XHi"a 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
!18M!8Xea 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
<mm.b 图4.远场计算对话框
c&1:H1# 1CkBfK 5. 在远场对话框,设置以下参数:
_`/:gkZS Wavelength: 0.63
1]L 0r Refractive index: 1.5+0i
bIR AwktD Angle Initial: -90.0
u;fD4CA Angle Final: 90.0
rKR2v(c Number of Steps: 721
U{2[nF Distance: 100, 000*wavelength
8\+Q*7~@i Intensity
,qS-T'[v,( Fxu'(xa 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
: GZx- 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
$nB4Ie!WcR 图5.“Opti 2D Viewer”中的远场模式