光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
N.D7 •使用VB脚本生成光栅(或周期性)布局。
Yx3ivjX.> •光栅布局
模拟和后处理分析
U6x$R O! 布局layout
_-c1" Kl 我们将模拟如图1所示的二维光栅布局。
MR3\7D+9y 图1.二维光栅布局
rJ=r_v iRK&-wn 用VB脚本定义一个2D光栅布局
T:!f_mu| 3)0z( 30 步骤:
@t{`KB+
^ 1 通过在
文件菜单中选择“New”,启动一个新项目。
UVlh7w jg 2 在“Wafer Properties”对话框中设置以下
参数 #ni:Bwtl{ Wafer Dimensions:
Bj*\)lG<
Length (mm): 8.5
`)WC|= w2 Width (mm): 3.0
U!O"f P1qQ)-J 2D wafer properties:
f(UB$^4 Wafer refractive index: Air
j{&$_ 3 点击 Profiles 与 Materials.
L"Dos + ,Z$!:U 在“Materials”中加入以下
材料:
yE{\]j|Zf Name: N=1.5
;}KT 3Q<^ Refractive index (Re:): 1.5
A~M .v0 I#UL nSJ3 Name: N=3.14
WG]`Sy Refractive index (Re:): 3.14
'PWX19 JA2oy09G 4.在“Profile”中定义以下轮廓:
u2
t=*<X Name: ChannelPro_n=3.14
Dn[u zY6 2D profile definition, Material: n=3.14
MN^d28^/ ~+S,`8-P Name: ChannelPro_n=1.5
?<efKs 2D profile definition, Material: n=1.5
l8 H8c & ^I:f4RWo 6.画出以下波导结构:
r)|6H"n#]S a. Linear waveguide 1
XImX1GH Label: linear1
V>(>wSR Start Horizontal offset: 0.0
SQT]' Start vertical offset: -0.75
YkF52_^_ End Horizontal offset: 8.5
3g87i r End vertical offset: -0.75
~B\O{5W Channel Thickness Tapering: Use Default
PS$g*x Width: 1.5
utU;M* Depth: 0.0
&fe67#0r) Profile: ChannelPro_n=1.5
4L/nEZ!Nsu Xmw%f[Xl b. Linear waveguide 2
{J*|)-eAw Label: linear2
4 z^7T Start Horizontal offset: 0.5
}6"l`$=Ev Start vertical offset: 0.05
N<~LgH End Horizontal offset: 1.0
=wznkqyhi End vertical offset: 0.05
y*e({fio_ Channel Thickness Tapering: Use Default
\ 0/m$V. Width: 0.1
s1bb2R Depth: 0.0
:"'*1S* Profile: ChannelPro_n=3.14
L~("C 2$b JMx> 7.加入水平平面波:
^VsE2CX Continuous Wave Wavelength: 0.63 General:
I#/"6%e Input field Transverse: Rectangular
n{(,r' X Position: 0.5
lUIh0%O Direction: Negative Direction
3,0b<vfSv Label: InputPlane1
1EWskmp 2D Transverse:
-_BX\iP{ Center Position: 4.5
89UR w9 Half width: 5.0
; sAe#b Titlitng Angle: 45
Ze?n Q- Effective Refractive Index: Local Amplitude: 1.0
Ac'pu,v 图2.波导结构(未设置周期)
h{:
]'/@~ 3QCCX$, 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
{hoe^07XK 将Linear2代码段修改如下:
y#FFxSH> Dim Linear2
X7txAp. for m=1 to 8
3LZvlcLb Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
X*M2 O%g`L Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
9^E!2CJ Linear2.SetAttr "WidthExpr", "0.1"
d%:J-UtG" Linear2.SetAttr "Depth", "0"
5DJ!:QY! Linear2.SetAttr "StartThickness", "0.000000"
tA^CuJR Linear2.SetAttr "EndThickness", "0.000000"
T0N6k acl Linear2.SetProfileName "ChannelPro_n=3.14"
LtGjHB\+ Linear2.SetDefaultThicknessTaperMode True
p\Fxt1Y@X ee{K5 G 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
Z|xgZG{ 图3.光栅布局通过VB脚本生成
@M6F?; j>G|Xv 设置仿真参数
xy4P_ 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
,I
H~ 2. 在仿真参数对话框中,设置以下参数:
N%9?8X[5 TE simulation
K%UjPzPWw Mesh Delta X: 0.015
"A0y&^4B@ Mesh Delta Z: 0.015
=R)w=ce Time Step Size: Auto Run for 1000 Time steps
yIg^iZD
设置边界条件设置X和Z边为各向异性PML边界条件。
!Y 9V1oVf" Number of Anisotropic PML layers: 15
vj|#M/3> 其它参数保持默认
sF3@7~m4 运行仿真
OHt^e7\ • 在仿真参数中点击Run按钮,启动仿真
zU'7x U- • 在分析仪中,可以观察到各场分量的时域响应
55/)2B2J • 仿真完成后,点击“Yes”,启动分析仪。
eQ*zi9na tAkv'. 远场分析
衍射波
mV+9*or 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
~=9S AJr] 2. 选择“Definition of the Cross Cut”为z方向
`6(Zc"/
\m 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
VO~%O.> 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
39L_O RMH 图4.远场计算对话框
iNilk!d6Q3 .)<l69ZD Z 5. 在远场对话框,设置以下参数:
:KqSMuKR Wavelength: 0.63
;U#=H9_ Refractive index: 1.5+0i
]|u7P{Z"R Angle Initial: -90.0
~V0 GRPnI Angle Final: 90.0
@"H7Q1Hg!* Number of Steps: 721
1jE {]/Y7& Distance: 100, 000*wavelength
#J t1AV Intensity
H;0K4|I @>&b&uj7T 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
D=K{(0{"/, 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
'
H4m" 图5.“Opti 2D Viewer”中的远场模式