光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
!"E/6z2&(k •使用VB脚本生成光栅(或周期性)布局。
@x[A^ •光栅布局
模拟和后处理分析
o1{3[=G 布局layout
9`H4"H>yG 我们将模拟如图1所示的二维光栅布局。
c;a<nTLn 图1.二维光栅布局
>s.y1Vg~C "?iyvzo 用VB脚本定义一个2D光栅布局
<wd;W;B WD kE
5 步骤:
s`v$r,N0 1 通过在
文件菜单中选择“New”,启动一个新项目。
x.Ny@l%] 2 在“Wafer Properties”对话框中设置以下
参数 pP"j| Wafer Dimensions:
QWt3KW8) Length (mm): 8.5
kPA g* Width (mm): 3.0
|v#D}E xd"+ &YT 2D wafer properties:
j`Ek : Wafer refractive index: Air
{}RU'<D
3 点击 Profiles 与 Materials.
w|0:0Rc~u sS4V(:3s 在“Materials”中加入以下
材料:
3=Uy t Name: N=1.5
LU@1Gol Refractive index (Re:): 1.5
$n47DW& #2Vq"Zn Name: N=3.14
jlqSw4_ Refractive index (Re:): 3.14
xDS]k]/(T ,S`FxJcE 4.在“Profile”中定义以下轮廓:
~oK0k_{~ Name: ChannelPro_n=3.14
+nB0O/m'U 2D profile definition, Material: n=3.14
Ty7`&
$Tt.r Name: ChannelPro_n=1.5
{(tR<z) 2D profile definition, Material: n=1.5
/+ais3 +o0yx U
7t 6.画出以下波导结构:
eQ6wEeB9 a. Linear waveguide 1
)
jM-5}" Label: linear1
}1CvbB%,A Start Horizontal offset: 0.0
0xvSi9 Start vertical offset: -0.75
{utnbtmu End Horizontal offset: 8.5
utn,`v End vertical offset: -0.75
4L97UhLL Channel Thickness Tapering: Use Default
A9J{>f
Width: 1.5
0G Q8}r Depth: 0.0
-QBM^L Profile: ChannelPro_n=1.5
LN5q_ZvR nYvkeT b. Linear waveguide 2
d@b2XCh<K Label: linear2
Are0Nj&? Start Horizontal offset: 0.5
Dk2Zl Start vertical offset: 0.05
XgeUS;qtta End Horizontal offset: 1.0
X%B$*y5 End vertical offset: 0.05
?=-/5A4K Channel Thickness Tapering: Use Default
x'6i9]+r Width: 0.1
bwszfPM Depth: 0.0
W?ghG Profile: ChannelPro_n=3.14
W(-son~I y~M6 7.加入水平平面波:
vkG%w; Continuous Wave Wavelength: 0.63 General:
^4Se=Hr
z2 Input field Transverse: Rectangular
$DnR[V}rR! X Position: 0.5
$?[pcgv Direction: Negative Direction
nhZ/^`Y< Label: InputPlane1
,KPrUM} 2D Transverse:
_t4(H))]vG Center Position: 4.5
;l < amB Half width: 5.0
hD, |CQ Titlitng Angle: 45
PB BJ.!Pb Effective Refractive Index: Local Amplitude: 1.0
,u-9e4 图2.波导结构(未设置周期)
r5$!41 n%02,pC6, 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
^![7X'!;pt 将Linear2代码段修改如下:
N6A| Dim Linear2
E2`9H-6e for m=1 to 8
t47;X}y f Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
I,]q;lEMt Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
(b"q(:5oX Linear2.SetAttr "WidthExpr", "0.1"
#%#N.tB5 Linear2.SetAttr "Depth", "0"
t9lf=+%s Linear2.SetAttr "StartThickness", "0.000000"
]j$(so" Linear2.SetAttr "EndThickness", "0.000000"
j*GS')Cm Linear2.SetProfileName "ChannelPro_n=3.14"
>dwWqcP Linear2.SetDefaultThicknessTaperMode True
A
;|P\V 9gIim 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
'bg'^PN>z 图3.光栅布局通过VB脚本生成
oBo |eRIt| DC_k0VBn 设置仿真参数
REsw=P!b 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
_?I*::
I 2. 在仿真参数对话框中,设置以下参数:
Wu8zK=Ve( TE simulation
EEx:Xk%5hX Mesh Delta X: 0.015
hx:^xW@r4P Mesh Delta Z: 0.015
Time Step Size: Auto Run for 1000 Time steps
;!3: 3; 设置边界条件设置X和Z边为各向异性PML边界条件。
/paZJ}Pr. Number of Anisotropic PML layers: 15
q$K}Fm1C 其它参数保持默认
V<ilv< 运行仿真
zq3f@xOK • 在仿真参数中点击Run按钮,启动仿真
53bVhPGv • 在分析仪中,可以观察到各场分量的时域响应
axN\ZXU • 仿真完成后,点击“Yes”,启动分析仪。
l$R9c+L= OcC|7s", 远场分析
衍射波
[O]rf+NZ(5 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
:6o|6MC! 2. 选择“Definition of the Cross Cut”为z方向
lB#7j 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
'0I> 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
Qj|tD+< 图4.远场计算对话框
l2Rnyb<;; B9c
gVTLj 5. 在远场对话框,设置以下参数:
K<pZ*l Wavelength: 0.63
]4K4Nh~ Refractive index: 1.5+0i
>8$Lqj^i Angle Initial: -90.0
zpzxCzU Angle Final: 90.0
%;aB#:p6 Number of Steps: 721
?<Mx* l Distance: 100, 000*wavelength
`9\^.g) Intensity
mSk";UCn g{kjd2 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
2dbn~j0 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
2a 7"~z~ 图5.“Opti 2D Viewer”中的远场模式