光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
2dXU0095 •使用VB脚本生成光栅(或周期性)布局。
tvTWZ` •光栅布局
模拟和后处理分析
"fRlEO[9 布局layout
SrdE>fNbs 我们将模拟如图1所示的二维光栅布局。
&aY/eD 图1.二维光栅布局
=
vY]G5y Ok*VQKyDLH 用VB脚本定义一个2D光栅布局
'uPxEu4 >4 P)Z/JHB 步骤:
v$[ @]` 1 通过在
文件菜单中选择“New”,启动一个新项目。
`oB' ( 2 在“Wafer Properties”对话框中设置以下
参数 [&1iF1)4 Wafer Dimensions:
w}IL
8L(D Length (mm): 8.5
3?.6K0L Width (mm): 3.0
mG>T`c|r3 J'|=*# 2D wafer properties:
_2]e1_= Wafer refractive index: Air
g!p+rq_f 3 点击 Profiles 与 Materials.
c zZrP" 01&*`0? 在“Materials”中加入以下
材料:
)WaX2uDA? Name: N=1.5
qRgK_/[] Refractive index (Re:): 1.5
| \AbL!u -;l`hRW Name: N=3.14
M7`UoTc+>d Refractive index (Re:): 3.14
dD[v=Z_ .Ql;(Wyl 4.在“Profile”中定义以下轮廓:
3Qqnw{* Name: ChannelPro_n=3.14
^fA3<| 2D profile definition, Material: n=3.14
x%b]ea CHQ{+?# Name: ChannelPro_n=1.5
^ze@#Cp 2D profile definition, Material: n=1.5
NFdJb\ 29R_n)ne 6.画出以下波导结构:
9QX&7cs&[ a. Linear waveguide 1
6$W -? Label: linear1
2Som0T<2 Start Horizontal offset: 0.0
zb@L)% Start vertical offset: -0.75
=@bXGMsV! End Horizontal offset: 8.5
O{;M6U8C\ End vertical offset: -0.75
JA}S{ Channel Thickness Tapering: Use Default
F@>w&A~K Width: 1.5
VFe-#"0ZO Depth: 0.0
Xulh.:N} Profile: ChannelPro_n=1.5
1.hOE>A% ZkJY.H-F b. Linear waveguide 2
fMWXo)rzj Label: linear2
,m #@%fa Start Horizontal offset: 0.5
;y:#S^|?-z Start vertical offset: 0.05
NUi{!< End Horizontal offset: 1.0
Iu=pk@*O End vertical offset: 0.05
3&.TU5]`- Channel Thickness Tapering: Use Default
"U/NMGMj Width: 0.1
I T*fjUY& Depth: 0.0
2jI4V;H8g Profile: ChannelPro_n=3.14
p[ks} mca@ jK ? 7.加入水平平面波:
{q5hF5!`) Continuous Wave Wavelength: 0.63 General:
sRkz
WMl Input field Transverse: Rectangular
kcg)_]~6 X Position: 0.5
EG Q1li'B Direction: Negative Direction
`~w%Jf Label: InputPlane1
J8qu]{0I" 2D Transverse:
i~v@ Center Position: 4.5
/u"
cl2| Half width: 5.0
`^s]? Titlitng Angle: 45
2:smt)f Effective Refractive Index: Local Amplitude: 1.0
!Szgph"ul 图2.波导结构(未设置周期)
J@u!S~&r |Fh`.iT%c 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
~2, wI<Nz 将Linear2代码段修改如下:
Ymrpf Dim Linear2
44/0}v] for m=1 to 8
4fU5RB7% Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
ve64-D Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
`Cb<KAaCH Linear2.SetAttr "WidthExpr", "0.1"
^c;skV&S Linear2.SetAttr "Depth", "0"
2vk8+LA(6 Linear2.SetAttr "StartThickness", "0.000000"
MJ*oeI!.= Linear2.SetAttr "EndThickness", "0.000000"
?kT~)k Linear2.SetProfileName "ChannelPro_n=3.14"
x~3>1Wr#M Linear2.SetDefaultThicknessTaperMode True
#b]}cwd! B?/12+sR 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
EF_h::A_ 图3.光栅布局通过VB脚本生成
@; j0c_^"! H|(*$!~e 设置仿真参数
d ~Z:$&r 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
~gzpX,{n 2. 在仿真参数对话框中,设置以下参数:
nKZRq&~^E TE simulation
D@YM}HXuj Mesh Delta X: 0.015
^<5^9]x Mesh Delta Z: 0.015
f|[5&,2< Time Step Size: Auto Run for 1000 Time steps
eog,EP"a8Y 设置边界条件设置X和Z边为各向异性PML边界条件。
5. +$v4 Number of Anisotropic PML layers: 15
a3E*%G 其它参数保持默认
*YEIG#` 运行仿真
#h5Hi9LKf • 在仿真参数中点击Run按钮,启动仿真
ZRVF{D??"% • 在分析仪中,可以观察到各场分量的时域响应
BZ'y}Zu*
• 仿真完成后,点击“Yes”,启动分析仪。
`6l24_eKf ^*owD;]4_ 远场分析
衍射波
XQ|j5] 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
JOE{&^j 2. 选择“Definition of the Cross Cut”为z方向
9g^./k\8% 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
< 8W:ij.` 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
hc4`'r; 图4.远场计算对话框
'!|E+P- "b+3 &i| 5. 在远场对话框,设置以下参数:
[/2@=Uh- Wavelength: 0.63
t g m{gR Refractive index: 1.5+0i
7UEy L
}N Angle Initial: -90.0
[]]LyWk Angle Final: 90.0
9M-]~.O Number of Steps: 721
dT0z^SG Distance: 100, 000*wavelength
94>7-d Intensity
=4%WOI /[)P^L` 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
s-YV_ 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
\FaB!7*~ 图5.“Opti 2D Viewer”中的远场模式