光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
fj[B,ua •使用VB脚本生成光栅(或周期性)布局。
`u3to{ •光栅布局
模拟和后处理分析
q1;}~}W;z4 布局layout
0-oR
{
{ 我们将模拟如图1所示的二维光栅布局。
I;S[Ft8d 图1.二维光栅布局
,)@Q,EHN; D ?1$I0 = 用VB脚本定义一个2D光栅布局
c6:"5};_ P%]li`56-c 步骤:
eva-?+n\q 1 通过在
文件菜单中选择“New”,启动一个新项目。
wyzj[PDS 2 在“Wafer Properties”对话框中设置以下
参数 %fGS< W; Wafer Dimensions:
U+3,(O Length (mm): 8.5
cE
'`W7&A Width (mm): 3.0
@kK${
n4h@{Xg 2D wafer properties:
0C#1/o)o Wafer refractive index: Air
,[71,zs 3 点击 Profiles 与 Materials.
%=xR$<D {0+gPTp 在“Materials”中加入以下
材料:
c^S^"M| Name: N=1.5
HF"
v
\ Refractive index (Re:): 1.5
"gADHt=MIR ,3Y~ #{,i Name: N=3.14
Jtnuo]{R Refractive index (Re:): 3.14
\Lv
eZ_h5 JV=d!Gi[C 4.在“Profile”中定义以下轮廓:
UQgOtqL3 Name: ChannelPro_n=3.14
qba<$ 2D profile definition, Material: n=3.14
M;V
(Tf HaXlc8 Name: ChannelPro_n=1.5
In#V1[io 2D profile definition, Material: n=1.5
D^W6Cq5\ ;Oh4W<hH} 6.画出以下波导结构:
`c ~Va/Yi a. Linear waveguide 1
oM/(&" Label: linear1
X3vTyIsn Start Horizontal offset: 0.0
OM*N) * Start vertical offset: -0.75
/Y_F"GQ End Horizontal offset: 8.5
8`XT`H End vertical offset: -0.75
<cW$
\P}hV Channel Thickness Tapering: Use Default
E}sjl Width: 1.5
\Q7Nz2X Depth: 0.0
RbKAB8 Profile: ChannelPro_n=1.5
3U9]&7^ Z;M]^? b. Linear waveguide 2
r+-KrO' Label: linear2
Pf5RlpL:p Start Horizontal offset: 0.5
|q"WJQ Start vertical offset: 0.05
B- =*"H?q End Horizontal offset: 1.0
+h_'hz&HlS End vertical offset: 0.05
#m{K Channel Thickness Tapering: Use Default
/~)vma1< Width: 0.1
{|=
8wB Depth: 0.0
{Hm0 Q Profile: ChannelPro_n=3.14
_IBIx\F ?W-J2tgss{ 7.加入水平平面波:
C8>zr6)1
Continuous Wave Wavelength: 0.63 General:
L\|p8jJ Input field Transverse: Rectangular
<yz)iCU? X Position: 0.5
"vQ$RW
- Direction: Negative Direction
"v@$CR9<T Label: InputPlane1
dIgaw;Ch] 2D Transverse:
+O>!x#)&" Center Position: 4.5
o<ak&LX`9 Half width: 5.0
<ek_n;R Titlitng Angle: 45
]CsF} wr'z Effective Refractive Index: Local Amplitude: 1.0
7t= e"|^ 图2.波导结构(未设置周期)
8gwJ%"-K H)S" `j 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
~?4'{Hc' 将Linear2代码段修改如下:
>Vz Gx(7q Dim Linear2
$BKGPGmh for m=1 to 8
T8+A`z=tSb Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
^vmT=f;TM Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
a<9gD,]P Linear2.SetAttr "WidthExpr", "0.1"
G&$+8r Linear2.SetAttr "Depth", "0"
t<s:ut)Q! Linear2.SetAttr "StartThickness", "0.000000"
m|!R/,>S4 Linear2.SetAttr "EndThickness", "0.000000"
&.D3f" Linear2.SetProfileName "ChannelPro_n=3.14"
yo]!Zn Linear2.SetDefaultThicknessTaperMode True
m"*j J.MX Hf!o6 o 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
+>mbBu!7 图3.光栅布局通过VB脚本生成
3;(;'5|Z :#W40rUb 设置仿真参数
Ex2TV7I 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
Nr)v!z~y
2. 在仿真参数对话框中,设置以下参数:
Sn=|Q4ZN TE simulation
C%#=@HC Mesh Delta X: 0.015
t"Ok-!c| Mesh Delta Z: 0.015
aHx(~&hRcL Time Step Size: Auto Run for 1000 Time steps
YCZl1ry:V= 设置边界条件设置X和Z边为各向异性PML边界条件。
6p`AdDV Number of Anisotropic PML layers: 15
6'
}oo'#~ 其它参数保持默认
D#|+PG7 运行仿真
Y^DS~CrM • 在仿真参数中点击Run按钮,启动仿真
WBT/;),}: • 在分析仪中,可以观察到各场分量的时域响应
.U|irDO • 仿真完成后,点击“Yes”,启动分析仪。
Wm>[5h%> F|p&v7T 远场分析
衍射波
"`]G>,r_ 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
P(pw$
q$S 2. 选择“Definition of the Cross Cut”为z方向
H0<(j(JK 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
5ZeE& vG2 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
Ojqbj0E9 图4.远场计算对话框
8OE=7PK N>qOiw[ 5. 在远场对话框,设置以下参数:
8q9HQ4dsL Wavelength: 0.63
~ED8]*H|` Refractive index: 1.5+0i
.%) FK#s- Angle Initial: -90.0
3db ,6R Angle Final: 90.0
Y+5nn Number of Steps: 721
`kb]tf Distance: 100, 000*wavelength
\HX'^t` Intensity
qW*JB4`?a x Vk|6vA7 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
wBz?OnD/D 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
1OB,UU"S$ 图5.“Opti 2D Viewer”中的远场模式