光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
BLno/JK0} •使用VB脚本生成光栅(或周期性)布局。
*.+Eg$'~V •光栅布局
模拟和后处理分析
PX5K-|R 布局layout
_ +"V5z 我们将模拟如图1所示的二维光栅布局。
C0Oe$&
_ 图1.二维光栅布局
_NkVi_UX
N1pw*<& 用VB脚本定义一个2D光栅布局
~EV7E F *j`{ K 步骤:
Fq-AvU 1 通过在
文件菜单中选择“New”,启动一个新项目。
ne~=^IRB 2 在“Wafer Properties”对话框中设置以下
参数 #RyX}t X, Wafer Dimensions:
jTDaW8@L Length (mm): 8.5
_xHEA2e! Width (mm): 3.0
nw)yK%`;M ['G@`e*\ 2D wafer properties:
~boTh Wafer refractive index: Air
&4m\``//9 3 点击 Profiles 与 Materials.
QoU0>p+2 &:}{?vU 在“Materials”中加入以下
材料:
S<-e/`p=H Name: N=1.5
gbl`_t/ Refractive index (Re:): 1.5
\["'%8[:gR "IvFkS=*Q Name: N=3.14
]csfK${ Refractive index (Re:): 3.14
~S$\ PG4 l<89[{9o 4.在“Profile”中定义以下轮廓:
3~r>G Name: ChannelPro_n=3.14
IwR/4LYI 2D profile definition, Material: n=3.14
Zeeixg-1< -=+@/@nV Name: ChannelPro_n=1.5
Kc%GxD` 2D profile definition, Material: n=1.5
)PU_'n=> Q;'{~! = 6.画出以下波导结构:
o\M a. Linear waveguide 1
N
N1(f Label: linear1
:M |<c9I
Start Horizontal offset: 0.0
;;3oWsil} Start vertical offset: -0.75
7a0kat'\ End Horizontal offset: 8.5
xv+47.?N End vertical offset: -0.75
8,l~e8 & Channel Thickness Tapering: Use Default
zS6oz= Width: 1.5
]{/1F:bcQ Depth: 0.0
qkLp8/G>pO Profile: ChannelPro_n=1.5
j~'a %P C.& R,$ b. Linear waveguide 2
0+vt LDq@P Label: linear2
Y
>83G`*}b Start Horizontal offset: 0.5
y\M K d[G7 Start vertical offset: 0.05
+W8L^Wl End Horizontal offset: 1.0
j\uh]8N3< End vertical offset: 0.05
_T{
"F Channel Thickness Tapering: Use Default
{ +$zgg Width: 0.1
Q8~|0X\.g Depth: 0.0
WqHsf1?N Profile: ChannelPro_n=3.14
$&C~Qti|G Ow@}6&1 7.加入水平平面波:
"s!|8F6$ Continuous Wave Wavelength: 0.63 General:
t.ci!#/d Input field Transverse: Rectangular
uE]kv X Position: 0.5
?|`Ba- Direction: Negative Direction
4fq:W`9sN Label: InputPlane1
J$/'nL<{^ 2D Transverse:
#ox&=MY Center Position: 4.5
Q ,`:RF3 Half width: 5.0
$$tFP"pZ Titlitng Angle: 45
X>$s>})Y Effective Refractive Index: Local Amplitude: 1.0
>p[skN 图2.波导结构(未设置周期)
z
:q9~ b":3J)Y6. 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
k-zkb2 将Linear2代码段修改如下:
FS1>
J%P Dim Linear2
5r-OE-U{ for m=1 to 8
W{v{sQg Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
g9XAUZe Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
TGxmc37? Linear2.SetAttr "WidthExpr", "0.1"
V?0Yzg$sy Linear2.SetAttr "Depth", "0"
NY,ZTl_ Linear2.SetAttr "StartThickness", "0.000000"
oQS_rv\Ber Linear2.SetAttr "EndThickness", "0.000000"
/ p PSo Linear2.SetProfileName "ChannelPro_n=3.14"
q5UD!&W Linear2.SetDefaultThicknessTaperMode True
eBs4:R_i _Z>I"m 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
(z:DTe 图3.光栅布局通过VB脚本生成
}5??n~:*5 43HZ)3!me 设置仿真参数
\uUd * 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
VxKD>:3c 2. 在仿真参数对话框中,设置以下参数:
0&@pD`K e TE simulation
?:
XY3!{ Mesh Delta X: 0.015
XS&oW Mesh Delta Z: 0.015
w9W0j Time Step Size: Auto Run for 1000 Time steps
W7
.Y`u[ 设置边界条件设置X和Z边为各向异性PML边界条件。
|_A DG
Number of Anisotropic PML layers: 15
_x&fK$Y)B 其它参数保持默认
6bacU#0o 运行仿真
"{lw;AA5F • 在仿真参数中点击Run按钮,启动仿真
it\U+xu • 在分析仪中,可以观察到各场分量的时域响应
;G=:>m~ • 仿真完成后,点击“Yes”,启动分析仪。
l?rT_uO 4 ku&m)' 远场分析
衍射波
j/Dc';,d.( 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
qVidubsW 2. 选择“Definition of the Cross Cut”为z方向
v
Wt{kg; 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
kR1dk4I4 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
e+? -# 图4.远场计算对话框
M#U #I:z% l[cBDNlrC; 5. 在远场对话框,设置以下参数:
u[>hs
\3k Wavelength: 0.63
~ ZN]2} Refractive index: 1.5+0i
@S>$y5if Angle Initial: -90.0
P\3$Y-id Angle Final: 90.0
c'LDHh7b Number of Steps: 721
[/Figr] Distance: 100, 000*wavelength
(oiF05n
h Intensity
qtQB}r8 M.(shIu!+ 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
Naqz":%. 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
yOQEF\ 图5.“Opti 2D Viewer”中的远场模式