光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
9J
$"Qt5;6 •使用VB脚本生成光栅(或周期性)布局。
Pv#>j\OR& •光栅布局
模拟和后处理分析
(SnrYO`# 布局layout
lcqpwSk 我们将模拟如图1所示的二维光栅布局。
9ER!K 图1.二维光栅布局
x $@Gp ;?K>dWf3f 用VB脚本定义一个2D光栅布局
{`>;I {^jk_G\ys 步骤:
Q`{2yU:r 1 通过在
文件菜单中选择“New”,启动一个新项目。
Q%Fa1h:2& 2 在“Wafer Properties”对话框中设置以下
参数 WH6Bs=G\} Wafer Dimensions:
9-(
\\$% Length (mm): 8.5
$YztLcn Width (mm): 3.0
e_v_y$ alV{| Vf[6 2D wafer properties:
ObyF~j}j Wafer refractive index: Air
7q;wj~ 3 点击 Profiles 与 Materials.
L63B# H" lv=rL 在“Materials”中加入以下
材料:
w$1B|7tX;2 Name: N=1.5
XK=-$2n Refractive index (Re:): 1.5
#x|IEjoa &s>E~M0+J Name: N=3.14
E# UAC2Q Refractive index (Re:): 3.14
%~$coZY^ &RL
j^A! 4.在“Profile”中定义以下轮廓:
N}rc3d# Name: ChannelPro_n=3.14
oT}-i [=} 2D profile definition, Material: n=3.14
*MM8\p_PuT WLkfo6Nw Name: ChannelPro_n=1.5
PC55A1(T 2D profile definition, Material: n=1.5
C=zc6C, cf{rK`Ff^ 6.画出以下波导结构:
1 LUvs~Qu a. Linear waveguide 1
N*NGC!p`N Label: linear1
r0L'
mf$ Start Horizontal offset: 0.0
f~-qjEWm Start vertical offset: -0.75
Q@aDa 8Z End Horizontal offset: 8.5
.jK,6't^ End vertical offset: -0.75
3@8Zy:[8< Channel Thickness Tapering: Use Default
S #6:! Width: 1.5
`\Ye:$q Depth: 0.0
3^-yw` Profile: ChannelPro_n=1.5
}h=}!R'm t}x^*I$* b. Linear waveguide 2
';iLk[ Label: linear2
;/s##7qf Start Horizontal offset: 0.5
<R.Ipyt. Start vertical offset: 0.05
FwaYp\z End Horizontal offset: 1.0
q2}6lf,J
K End vertical offset: 0.05
<S@XK% Channel Thickness Tapering: Use Default
@?CEi#- Width: 0.1
5ji#rIAhxh Depth: 0.0
:vo#( Profile: ChannelPro_n=3.14
xI(t!aYp gl>%ADOB@ 7.加入水平平面波:
qx2M"uFJ Continuous Wave Wavelength: 0.63 General:
L/*K4xQ Input field Transverse: Rectangular
a"bael X Position: 0.5
>4iVVs Direction: Negative Direction
aYrbB# Label: InputPlane1
W~Ae&gcn# 2D Transverse:
,cCBAOueO Center Position: 4.5
Uf\,U8U B Half width: 5.0
(_Ky'. Titlitng Angle: 45
n1r'Y;G Effective Refractive Index: Local Amplitude: 1.0
eccJt 图2.波导结构(未设置周期)
kpLx?zW--q s^zX9IVnp 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
RElIWqgY 将Linear2代码段修改如下:
p|RFpn2ygF Dim Linear2
Qoom[@$ for m=1 to 8
'8V>:dy> Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
F*J@OY8i Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
mr<camL5 Linear2.SetAttr "WidthExpr", "0.1"
{No
Y`j5S Linear2.SetAttr "Depth", "0"
'Fr"96C$ Linear2.SetAttr "StartThickness", "0.000000"
?CSv;: Linear2.SetAttr "EndThickness", "0.000000"
^udl&> Linear2.SetProfileName "ChannelPro_n=3.14"
" gQJeMU Linear2.SetDefaultThicknessTaperMode True
{2=f,,|+f y41,T&ja 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
r31)Ed$ 图3.光栅布局通过VB脚本生成
@*^%^ P Un^3%=; 设置仿真参数
:`<ME/"YE 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
)m<CmYr2 2. 在仿真参数对话框中,设置以下参数:
xjH({(/B>a TE simulation
0.z\YTZ9 Mesh Delta X: 0.015
D V=xqC6} Mesh Delta Z: 0.015
:e!3-#H Time Step Size: Auto Run for 1000 Time steps
,ocAB;K 设置边界条件设置X和Z边为各向异性PML边界条件。
6`V~cVu Number of Anisotropic PML layers: 15
9*;OHoD h 其它参数保持默认
ihBIE 运行仿真
vNSeNS@jxC • 在仿真参数中点击Run按钮,启动仿真
D]NJ^.X • 在分析仪中,可以观察到各场分量的时域响应
x't@Mc • 仿真完成后,点击“Yes”,启动分析仪。
f`bRg8v &\L\n}i- 远场分析
衍射波
:7[4wQDt4 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
SI9PgC 2. 选择“Definition of the Cross Cut”为z方向
Jm[_X 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
#j4jZBOTM 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
\Y^GA;AMQQ 图4.远场计算对话框
Wo+^R%K'4 qt`HP3J& 5. 在远场对话框,设置以下参数:
]*TW%mY Wavelength: 0.63
q"$C)o Refractive index: 1.5+0i
F42?h:y8I Angle Initial: -90.0
'tn-o Angle Final: 90.0
cxpG6c Number of Steps: 721
&@fW6},iW Distance: 100, 000*wavelength
@BoZZ Intensity
$5N\sdyZxg g[ O6WZ!F_ 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
IXC2w*'m 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
O~4Q:#^c 图5.“Opti 2D Viewer”中的远场模式