光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
N3?@CM^hHw •使用VB脚本生成光栅(或周期性)布局。
xq\A TON •光栅布局
模拟和后处理分析
B<6Ye9zuG 布局layout
~ -zch=+u 我们将模拟如图1所示的二维光栅布局。
(f>~+-IL 图1.二维光栅布局
m+'vrxTY $i.)1.x 用VB脚本定义一个2D光栅布局
L_QJS2 '.1_anE] 步骤:
s2;b-0 1 通过在
文件菜单中选择“New”,启动一个新项目。
(^;Fyf/ 2 在“Wafer Properties”对话框中设置以下
参数 yp\sJc` Wafer Dimensions:
V>:ubl8j0l Length (mm): 8.5
2-x#|9
Width (mm): 3.0
hkoCbR0}8 1@ .Eh8y 2D wafer properties:
sJB::6+1(| Wafer refractive index: Air
Gk2R:\/Y 3 点击 Profiles 与 Materials.
%:vM D 3e7P
w`gLl 在“Materials”中加入以下
材料:
#25%17 Name: N=1.5
6y}|IhX?z Refractive index (Re:): 1.5
C">w3#M% .7v
.DR> Name: N=3.14
XXA1%Lw% Refractive index (Re:): 3.14
CH4 ~9mmE \SQ wIM 4.在“Profile”中定义以下轮廓:
b@m\ca Name: ChannelPro_n=3.14
1GI/gc\ 2D profile definition, Material: n=3.14
j_Qkw ? NZ=`iA8)X Name: ChannelPro_n=1.5
9>1Gj-S2: 2D profile definition, Material: n=1.5
4Y:[YlfD. ,+hH|$ 6.画出以下波导结构:
m[%*O#_ a. Linear waveguide 1
Yk!TQY4 Label: linear1
T~JE.Y3B3 Start Horizontal offset: 0.0
M qG`P Start vertical offset: -0.75
v\3}5v%YI End Horizontal offset: 8.5
">hOD'PG End vertical offset: -0.75
XLxr@1 Channel Thickness Tapering: Use Default
`/\Z{j0_ Width: 1.5
^oT!%"\ Depth: 0.0
5\\a49k.p Profile: ChannelPro_n=1.5
N]iu
o. !i77v,
(#| b. Linear waveguide 2
eV)'@8p Label: linear2
}vspjplk^ Start Horizontal offset: 0.5
C=uYX" Start vertical offset: 0.05
k7\
,No} End Horizontal offset: 1.0
K6X}d,g End vertical offset: 0.05
U-0A}@N Channel Thickness Tapering: Use Default
hA!kkNqV Width: 0.1
F|3iKK022 Depth: 0.0
oP 4z> Profile: ChannelPro_n=3.14
WjVj@oC -T+7u 7.加入水平平面波:
>Qg 9KGk' Continuous Wave Wavelength: 0.63 General:
D`C#O
7.N Input field Transverse: Rectangular
67{>x[ X Position: 0.5
jDwLzvMO Direction: Negative Direction
g&oAa;~o Label: InputPlane1
Sp>v`{F 2D Transverse:
c>3AR17+5 Center Position: 4.5
r#;GVJR6 Half width: 5.0
|A0)-sVZ Titlitng Angle: 45
*sbZ{{]e Effective Refractive Index: Local Amplitude: 1.0
t/`~(0F 图2.波导结构(未设置周期)
!0k'fYCa W$bQS!7y 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
X:1&Pdi 将Linear2代码段修改如下:
KqNbIw*sR Dim Linear2
*c1)x for m=1 to 8
MR{JMo=r Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
LqA&@ Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
U1!#TD)@ Linear2.SetAttr "WidthExpr", "0.1"
?cRGdLP'D Linear2.SetAttr "Depth", "0"
yoc;`hO- Linear2.SetAttr "StartThickness", "0.000000"
zXRq) ;s Linear2.SetAttr "EndThickness", "0.000000"
CW)JS3}W" Linear2.SetProfileName "ChannelPro_n=3.14"
~?#B(t Linear2.SetDefaultThicknessTaperMode True
rrL
gBeQa Tb@r@j:V 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
^}PG*h| 图3.光栅布局通过VB脚本生成
Jv+N/+M47 1q7Y,whp 设置仿真参数
o&Vti"fpC 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
8uZM%7kI6+ 2. 在仿真参数对话框中,设置以下参数:
|0Y:
/uL#) TE simulation
UG5AFZ\ Mesh Delta X: 0.015
H/?@UJ5m Mesh Delta Z: 0.015
`{GI^kgJ9 Time Step Size: Auto Run for 1000 Time steps
yur5"$n 设置边界条件设置X和Z边为各向异性PML边界条件。
o6 lCP& Number of Anisotropic PML layers: 15
.nG14i7C 其它参数保持默认
yJRqX]MLA 运行仿真
6";ew:Ih^ • 在仿真参数中点击Run按钮,启动仿真
*\!>22* • 在分析仪中,可以观察到各场分量的时域响应
`EJ.L6j$' • 仿真完成后,点击“Yes”,启动分析仪。
U-mZO7y! uZ/XI {/ 远场分析
衍射波
}\$CU
N 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
T>cO{I 2. 选择“Definition of the Cross Cut”为z方向
(Q4hm ]< 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
_<LJQ 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
`k]2*$% 图4.远场计算对话框
mN&B|KWU YQ7\99tj 5. 在远场对话框,设置以下参数:
Ua2wa A Wavelength: 0.63
P1u(0t Refractive index: 1.5+0i
]o<&Q52 | Angle Initial: -90.0
jo}yeGbU Angle Final: 90.0
FJCL K#- Number of Steps: 721
]I<w;.z Distance: 100, 000*wavelength
t3(~aH Intensity
!-cK@>.pE m*f"Y"B.1I 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
T?+%3z}8 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
D<wz%* 图5.“Opti 2D Viewer”中的远场模式