光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
"0z4mQ}>N •使用VB脚本生成光栅(或周期性)布局。
{9Q**U`w •光栅布局
模拟和后处理分析
0juP"v$C> 布局layout
|a'$v4dCF 我们将模拟如图1所示的二维光栅布局。
9El{>&Fs4 图1.二维光栅布局
AJ#YjkO>] Y%(8'Ch 用VB脚本定义一个2D光栅布局
eG.s|0` ;1r|Bx <5 步骤:
Cw5B
p9 1 通过在
文件菜单中选择“New”,启动一个新项目。
f|j<Mj+\ 2 在“Wafer Properties”对话框中设置以下
参数 N6*FlG- Wafer Dimensions:
:/>Zky8,k Length (mm): 8.5
8@FgvWC Width (mm): 3.0
2';{o=TXV $$B#S' 2D wafer properties:
yRp&pUtb Wafer refractive index: Air
TeJ=QpGW2 3 点击 Profiles 与 Materials.
-f<}lhmQ 19Mu}.+; 在“Materials”中加入以下
材料:
}/L#<n`Z Name: N=1.5
? a/\5`gnN Refractive index (Re:): 1.5
|h.@Xy dI%N wl% Name: N=3.14
6r h#ATep Refractive index (Re:): 3.14
:{KpnJvd :"K9(XKKU 4.在“Profile”中定义以下轮廓:
pqohLA Name: ChannelPro_n=3.14
1V,DcolRY 2D profile definition, Material: n=3.14
Nr*o
RYY 0R-W9qP Name: ChannelPro_n=1.5
Zb<D%9 2D profile definition, Material: n=1.5
d^5x@E_Td Y44[2 :m 6.画出以下波导结构:
Dh68=F0 a. Linear waveguide 1
CX]L' Label: linear1
''p<C)Q Start Horizontal offset: 0.0
.kfx\,lgm Start vertical offset: -0.75
;2aPhA End Horizontal offset: 8.5
wf^p?=Ke End vertical offset: -0.75
rX?%{M,xFw Channel Thickness Tapering: Use Default
( De>k8 Width: 1.5
VMu?mqEa Depth: 0.0
UhU"[^YO Profile: ChannelPro_n=1.5
=8Z-ORW51 #9HX"<5
b. Linear waveguide 2
g6OPYUPg Label: linear2
=9:gW5F69 Start Horizontal offset: 0.5
n8z++T& Start vertical offset: 0.05
!-JvVdM;( End Horizontal offset: 1.0
2~yj
=D27Z End vertical offset: 0.05
DjvPeX Channel Thickness Tapering: Use Default
^SIA%S3 Width: 0.1
(543`dqAmC Depth: 0.0
34J*<B[Njo Profile: ChannelPro_n=3.14
;B{oGy. 0W)|n9 7.加入水平平面波:
G#1W":|` Continuous Wave Wavelength: 0.63 General:
l.BiE<& Input field Transverse: Rectangular
;Qq7@(2y X Position: 0.5
@=BApuer+ Direction: Negative Direction
xiqeKoAD Label: InputPlane1
]VS:5kOj` 2D Transverse:
rrG}; A Center Position: 4.5
`4ti?^BNm Half width: 5.0
({cWb:+r Titlitng Angle: 45
Us%g&MWdpb Effective Refractive Index: Local Amplitude: 1.0
PlwM3lrj 图2.波导结构(未设置周期)
1aPFpo! 60WlC0Y~u 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
Fv:x>qZr@ 将Linear2代码段修改如下:
NIp]n[=.q Dim Linear2
tY#Zl 54~{ for m=1 to 8
yqP=6 Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
>1` '5A}s Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
?[)V Linear2.SetAttr "WidthExpr", "0.1"
"@t bm[ Linear2.SetAttr "Depth", "0"
;
FHnu| Linear2.SetAttr "StartThickness", "0.000000"
l9&L$,= Linear2.SetAttr "EndThickness", "0.000000"
_\{/#J;lN Linear2.SetProfileName "ChannelPro_n=3.14"
28 zZ3|Z3 Linear2.SetDefaultThicknessTaperMode True
~JP3C5q ~Q}!4LH 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
g@Rs.Zq 图3.光栅布局通过VB脚本生成
a;\a>N4 O,#,` 2Qc 设置仿真参数
:`uu[^ 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
Emw]` 2. 在仿真参数对话框中,设置以下参数:
2#s8Dxt TE simulation
0-/@-qV\ Mesh Delta X: 0.015
3Z7gPU!H= Mesh Delta Z: 0.015
[p]UM;+ Time Step Size: Auto Run for 1000 Time steps
(i1p6 设置边界条件设置X和Z边为各向异性PML边界条件。
uavyms^ Number of Anisotropic PML layers: 15
bgkBgugZhX 其它参数保持默认
N1"bH~ 运行仿真
t$?#@8Yk • 在仿真参数中点击Run按钮,启动仿真
K#VGG,h7Y • 在分析仪中,可以观察到各场分量的时域响应
$f>(TW • 仿真完成后,点击“Yes”,启动分析仪。
Vt:\llsin t. DnF[ 远场分析
衍射波
+{#Z^y6& 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
*w/N>:V0p 2. 选择“Definition of the Cross Cut”为z方向
3_]QtP3 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
'}-QZ$|* 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
QP>F *A
图4.远场计算对话框
4M+f#b1 VKg9^%#b`[ 5. 在远场对话框,设置以下参数:
ZvK.X*~s Wavelength: 0.63
~yA^6[a = Refractive index: 1.5+0i
Bj\Us$cZ Angle Initial: -90.0
"~Zdv}^xS Angle Final: 90.0
AoK;6je`K^ Number of Steps: 721
!sYZ1;WAO Distance: 100, 000*wavelength
ac1(lD Intensity
[w)KNl G&4D0f 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
K??jV&Xor 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
_Ih"*~ r/& 图5.“Opti 2D Viewer”中的远场模式