光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
g}9,U&$]y •使用VB脚本生成光栅(或周期性)布局。
%6ckau1_; •光栅布局
模拟和后处理分析
HB9"T5Pd* 布局layout
piIZ*@' 我们将模拟如图1所示的二维光栅布局。
XT0-"-q 图1.二维光栅布局
8%4;'[UV :GvC#2p 用VB脚本定义一个2D光栅布局
}#zL)+XI m?-)SA 步骤:
.]9`eGVWj 1 通过在
文件菜单中选择“New”,启动一个新项目。
EXdX%T\ 2 在“Wafer Properties”对话框中设置以下
参数 1@Ba7>%' Wafer Dimensions:
{[uhIJD3g6 Length (mm): 8.5
+kI}O*s Width (mm): 3.0
Q-) ( s .)*&NY!nsl 2D wafer properties:
P, x"![6 Wafer refractive index: Air
\Y,P 3 点击 Profiles 与 Materials.
Jq1oQu|rs df{?E): 在“Materials”中加入以下
材料:
IO7z}![V; Name: N=1.5
e{6wFN Refractive index (Re:): 1.5
D(z#)oDr :7@[=n Name: N=3.14
l_yy;e Refractive index (Re:): 3.14
2<7pe@c98 y^r'4zN' 4.在“Profile”中定义以下轮廓:
j'*.=cwsp Name: ChannelPro_n=3.14
2tU3p<[ 2D profile definition, Material: n=3.14
~U+<JC Z ErN[maix# Name: ChannelPro_n=1.5
|A4B4/! 2D profile definition, Material: n=1.5
2NFk#_9e~ Gn7\4,C 6.画出以下波导结构:
W3l[a^1d a. Linear waveguide 1
*wAX&+); Label: linear1
+sJ{9# 6 Start Horizontal offset: 0.0
tE>FL Start vertical offset: -0.75
-raK End Horizontal offset: 8.5
oD%n} End vertical offset: -0.75
NO/$}vw Channel Thickness Tapering: Use Default
C,,T7(: k Width: 1.5
?Gf'G{^} Depth: 0.0
4][VK/v+ Profile: ChannelPro_n=1.5
S|d /?}C|e l="(Hp%b b. Linear waveguide 2
=$}`B{(H Label: linear2
:WH{wm| Start Horizontal offset: 0.5
[1~3\-Y Start vertical offset: 0.05
}P=FMme{F( End Horizontal offset: 1.0
D~qi6@Ga End vertical offset: 0.05
.aL%}`8l? Channel Thickness Tapering: Use Default
C\rT'!Uk\Q Width: 0.1
; 8VZsh Depth: 0.0
~m R^j Profile: ChannelPro_n=3.14
!'\(OFv9Im 7|Vpk&.> 7.加入水平平面波:
0#c-qy Continuous Wave Wavelength: 0.63 General:
&2@"zD Input field Transverse: Rectangular
y;0Zk~R$ X Position: 0.5
'bv(T2d~~ Direction: Negative Direction
zCq6k7u Label: InputPlane1
'Q'-7z-6 2D Transverse:
W9Us I Center Position: 4.5
q.:a4w J Half width: 5.0
wV-N\5!r%H Titlitng Angle: 45
57 Vn- Effective Refractive Index: Local Amplitude: 1.0
<)cmI .J3 图2.波导结构(未设置周期)
^=I[uX-3ue
-vT$UP 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
r& RJ'z 将Linear2代码段修改如下:
bq7()ocA Dim Linear2
*~`oA~-Q for m=1 to 8
AED
9vDE Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
Q#*qPgs Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
HVC|0} Linear2.SetAttr "WidthExpr", "0.1"
z:n
JN%Qb Linear2.SetAttr "Depth", "0"
( ^=kV?< Linear2.SetAttr "StartThickness", "0.000000"
PzjIM!> Linear2.SetAttr "EndThickness", "0.000000"
J_
h\tM Linear2.SetProfileName "ChannelPro_n=3.14"
?#5)TAW Linear2.SetDefaultThicknessTaperMode True
$
z+
=lF G4F~V't 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
}WQ:Rmi 图3.光栅布局通过VB脚本生成
;r;>4+zn\ Cn9MboXX 设置仿真参数
"|
oW6@ 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
BZQJ@lk5 2. 在仿真参数对话框中,设置以下参数:
B]D51R\}VE TE simulation
a(U/70j Mesh Delta X: 0.015
fQU_A Mesh Delta Z: 0.015
RvW>kATb_F Time Step Size: Auto Run for 1000 Time steps
^-}3+YA 设置边界条件设置X和Z边为各向异性PML边界条件。
+c'I7bBr Number of Anisotropic PML layers: 15
bF@iO316H 其它参数保持默认
yErvgf 运行仿真
D@mqfi(x • 在仿真参数中点击Run按钮,启动仿真
zpcm`z • 在分析仪中,可以观察到各场分量的时域响应
[s!c c:JR • 仿真完成后,点击“Yes”,启动分析仪。
$L"-JNS v2#qs*sW8 远场分析
衍射波
Z*5]qh2r8 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
(i'wa6[E8 2. 选择“Definition of the Cross Cut”为z方向
4p&SlJ 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
RG_)<U/B 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
K)oN^ 图4.远场计算对话框
RK]."m0c~# $r)nvf`\ 5. 在远场对话框,设置以下参数:
dZbG#4oO Wavelength: 0.63
5.)/gK2$ Refractive index: 1.5+0i
7w"YCRKh Angle Initial: -90.0
Kib?JRYt Angle Final: 90.0
q->46{s| Number of Steps: 721
pQxi0/d p Distance: 100, 000*wavelength
I=`efc]T Intensity
"2/VDB4!FG X"G3lG 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
dv\oVD 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
Fx*IeIs(:~ 图5.“Opti 2D Viewer”中的远场模式