光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
caR<Kb:;* •使用VB脚本生成光栅(或周期性)布局。
Wx%H%FeK •光栅布局
模拟和后处理分析
,Q$q=E;X 布局layout
hg]]Ok~cAs 我们将模拟如图1所示的二维光栅布局。
`6(S^P 图1.二维光栅布局
"m$##X\ JPI3[.o 用VB脚本定义一个2D光栅布局
Jl8H|<g~/ RZ?jJm$ 步骤:
Xh"n]TK 1 通过在
文件菜单中选择“New”,启动一个新项目。
7vKK%H_P 2 在“Wafer Properties”对话框中设置以下
参数 1p3z1_wrs Wafer Dimensions:
y3Qsv Length (mm): 8.5
hp50J Width (mm): 3.0
ea2ayT u(.e8~s8 2D wafer properties:
,5p(T_V/ Wafer refractive index: Air
\fLMr\LL& 3 点击 Profiles 与 Materials.
vkV0On '?' l;#^i< 在“Materials”中加入以下
材料:
c9
eM/*: Name: N=1.5
;u
({\K Refractive index (Re:): 1.5
8U"v6S~A%Q H [\o RId Name: N=3.14
:gibfk]C Refractive index (Re:): 3.14
9!\B6=r y4 <?.&^|kS 4.在“Profile”中定义以下轮廓:
[#vH'y Name: ChannelPro_n=3.14
VQt0 4? 2D profile definition, Material: n=3.14
Hyl%mJ ',@3>T** Name: ChannelPro_n=1.5
^98~U\ar 2D profile definition, Material: n=1.5
/& {A!.; K#d`Hyx 6.画出以下波导结构:
O"9\5(w a. Linear waveguide 1
S!CC
}3zw Label: linear1
zrgk]n;Pq Start Horizontal offset: 0.0
e{K 215 Start vertical offset: -0.75
+.[ <% End Horizontal offset: 8.5
Y\k#*\'Y~ End vertical offset: -0.75
8C:z"@ o Channel Thickness Tapering: Use Default
g3/W=~r Width: 1.5
%)W2H^
Depth: 0.0
OX!tsARC@ Profile: ChannelPro_n=1.5
D2eckLT xGg )Y# b. Linear waveguide 2
%/.b~|,- Label: linear2
!9r$e99R Start Horizontal offset: 0.5
`iNSr?N. Start vertical offset: 0.05
dn+KH+v End Horizontal offset: 1.0
X`>i&I] End vertical offset: 0.05
@o _}g !9= Channel Thickness Tapering: Use Default
LckK\`mh Width: 0.1
}2.`N%[ Depth: 0.0
osAd1<EIC Profile: ChannelPro_n=3.14
}q`S$P; Vn}0}Jz 7.加入水平平面波:
u|TeE\0 Continuous Wave Wavelength: 0.63 General:
0&|\N
? 8_ Input field Transverse: Rectangular
,T$U'&; X Position: 0.5
d.d/< Direction: Negative Direction
q
dBrQC Label: InputPlane1
'9J/T57]e 2D Transverse:
ChPmX+.i_ Center Position: 4.5
l'. VKh\C Half width: 5.0
b9HtR -iR; Titlitng Angle: 45
%_W)~Pv{+ Effective Refractive Index: Local Amplitude: 1.0
f+,qNvBY/ 图2.波导结构(未设置周期)
_op}1 VU]`&`~J 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
IK=a*}19L 将Linear2代码段修改如下:
??vLUv Dim Linear2
| rtD.,m for m=1 to 8
~IBP|)WA- Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
k2tF} Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
:KP@RZm Linear2.SetAttr "WidthExpr", "0.1"
FbFPJ !fb Linear2.SetAttr "Depth", "0"
3ym',q Linear2.SetAttr "StartThickness", "0.000000"
|{NYkw Linear2.SetAttr "EndThickness", "0.000000"
nT$SfGFj8 Linear2.SetProfileName "ChannelPro_n=3.14"
Hd ={CFip Linear2.SetDefaultThicknessTaperMode True
,m|h<faZL F/kWHVHU[ 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
8^1 Te m 图3.光栅布局通过VB脚本生成
YZ8>OwQz2 eJX9_6m- 设置仿真参数
^A&1^B 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
O-hAFKx 2. 在仿真参数对话框中,设置以下参数:
LCKV>3+_# TE simulation
L^?qOylu Mesh Delta X: 0.015
%pL''R9VF Mesh Delta Z: 0.015
Q\7h`d%) Time Step Size: Auto Run for 1000 Time steps
#r\4sVg 设置边界条件设置X和Z边为各向异性PML边界条件。
0pd'93C Number of Anisotropic PML layers: 15
=>v#4zFd 其它参数保持默认
>@_^fw) 运行仿真
XK@E;Rv • 在仿真参数中点击Run按钮,启动仿真
'-XXo=>0MV • 在分析仪中,可以观察到各场分量的时域响应
SZ'R59Ee< • 仿真完成后,点击“Yes”,启动分析仪。
;'@9[N9 8wFJ4v3 远场分析
衍射波
2uW;
xfeY 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
#h
]g?*}OJ 2. 选择“Definition of the Cross Cut”为z方向
SO'vpz{ 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
Om2d.7S 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
S|N_ o 图4.远场计算对话框
d/kv|$XW ;dgp+ 5. 在远场对话框,设置以下参数:
z46~@y%k Wavelength: 0.63
Aw.qK9I Refractive index: 1.5+0i
nmKp[-5 Angle Initial: -90.0
>0TxUc_va Angle Final: 90.0
"]Xc`3SM Number of Steps: 721
;[OH(! Distance: 100, 000*wavelength
I1M%J@ Cz Intensity
BW*rIn<?G ~=l;=7 T 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
S_UIO.K 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
v PG},m~- 图5.“Opti 2D Viewer”中的远场模式