光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
r<c #nD~K •使用VB脚本生成光栅(或周期性)布局。
@QdnjXII* •光栅布局
模拟和后处理分析
nIn2 *r 布局layout
H z@h0+h 我们将模拟如图1所示的二维光栅布局。
:g2
}C 图1.二维光栅布局
8[zb{PRu Izn
T|l^ 用VB脚本定义一个2D光栅布局
eY,O@'"8` GqLq gns 步骤:
Zw{MgoJ0Z 1 通过在
文件菜单中选择“New”,启动一个新项目。
V}"
g~= 2 在“Wafer Properties”对话框中设置以下
参数 CqFeF?xd8h Wafer Dimensions:
c~imE% Length (mm): 8.5
/=)L_ Width (mm): 3.0
khx.yRx O9s?h3 2D wafer properties:
WC*=rWRxF Wafer refractive index: Air
KjYAdia:H 3 点击 Profiles 与 Materials.
1%~[rnQ 6L9,'Bg 在“Materials”中加入以下
材料:
$*f?&U]k Name: N=1.5
%S@L|t Refractive index (Re:): 1.5
8(f:U@BS 6na^]t~ncm Name: N=3.14
dJ
~Zr)> Refractive index (Re:): 3.14
0;<)\Wt=i9 8'#/LA[uPe 4.在“Profile”中定义以下轮廓:
"Sridh? Name: ChannelPro_n=3.14
$f$|6jM 2D profile definition, Material: n=3.14
W)*p2#l AjkW0FB:1 Name: ChannelPro_n=1.5
Kj3?ve~ 2D profile definition, Material: n=1.5
y(W|eBe +f|BiW 6.画出以下波导结构:
G[,Q95`w?< a. Linear waveguide 1
4!.(|h@ Label: linear1
%lw! e Start Horizontal offset: 0.0
iW%8/$ Start vertical offset: -0.75
i7*EbaYzUO End Horizontal offset: 8.5
g}x(hF End vertical offset: -0.75
YXW%]Uy+ Channel Thickness Tapering: Use Default
^D{lPu
3 Width: 1.5
;*2>ES Depth: 0.0
#%lo;W~IY Profile: ChannelPro_n=1.5
x =q;O+7] ?r=jF)C<' b. Linear waveguide 2
HKDID[d0 Label: linear2
rl08R Start Horizontal offset: 0.5
2]cRXJ7h Start vertical offset: 0.05
_S}A=hK' End Horizontal offset: 1.0
=elpH^N End vertical offset: 0.05
YW/QC'_iC Channel Thickness Tapering: Use Default
PcT?<HU Width: 0.1
9(4&KZpK Depth: 0.0
$za8"T*I Profile: ChannelPro_n=3.14
5=|hC3h *{
{b~$ 7.加入水平平面波:
^T::-pN* Continuous Wave Wavelength: 0.63 General:
<h-vjz Input field Transverse: Rectangular
sEJC-$ X Position: 0.5
#S]ER907 Direction: Negative Direction
c yyVg!+ Label: InputPlane1
4JGtI*%5lq 2D Transverse:
TS2ZF{m Center Position: 4.5
{X(:jAy Half width: 5.0
~`M\Ir
Titlitng Angle: 45
*z*uEcitW Effective Refractive Index: Local Amplitude: 1.0
:a
->0 l 图2.波导结构(未设置周期)
xG&)1sT#-\ F8:vDv 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
}|u4 W?H 将Linear2代码段修改如下:
w-wV3Q6X Dim Linear2
x^4xq#Bb7 for m=1 to 8
u_(VEfs4 Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
'(bgs Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
InXn%9]p] Linear2.SetAttr "WidthExpr", "0.1"
2'EUy@0 Linear2.SetAttr "Depth", "0"
nD5 gP Linear2.SetAttr "StartThickness", "0.000000"
p2Zo Linear2.SetAttr "EndThickness", "0.000000"
n!p<A.O7@ Linear2.SetProfileName "ChannelPro_n=3.14"
&0 >Loja`^ Linear2.SetDefaultThicknessTaperMode True
3RLFp\i"s QnZcBXI8 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
)M6w5g 图3.光栅布局通过VB脚本生成
=6"2UC& T}V!`0vKw 设置仿真参数
]QzGE8jp* 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
wr[, 2. 在仿真参数对话框中,设置以下参数:
3s/H2fz TE simulation
vnWWneeNr Mesh Delta X: 0.015
h4q|lA6!k8 Mesh Delta Z: 0.015
O+y-}7YX Time Step Size: Auto Run for 1000 Time steps
L#E]
BY 设置边界条件设置X和Z边为各向异性PML边界条件。
oE#d,Z Number of Anisotropic PML layers: 15
rM'=_nmi 其它参数保持默认
1pArZzm> 运行仿真
='`/BY(m[ • 在仿真参数中点击Run按钮,启动仿真
{&jb5-*f • 在分析仪中,可以观察到各场分量的时域响应
IiY/(N+J • 仿真完成后,点击“Yes”,启动分析仪。
#Q2Y&2`yGT T:5fc2Ngv 远场分析
衍射波
1P~X8=9h 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
su*'d:L 2. 选择“Definition of the Cross Cut”为z方向
UK<Nj<-'t 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
g!rQ4#4 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
:2
*g~6 图4.远场计算对话框
x>Zn?YR," .zi_[ 5. 在远场对话框,设置以下参数:
^J$2?!~ Wavelength: 0.63
DRcNdO/1E Refractive index: 1.5+0i
N<~t3/Nm Angle Initial: -90.0
-i0~]* Angle Final: 90.0
C?lcGt!H Number of Steps: 721
z^'gx@YD*v Distance: 100, 000*wavelength
Z'"tB/=W Intensity
!\7!3$w'8, |Y?HA& 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
BO;6
u^[ 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
+j< p
\Kn> 图5.“Opti 2D Viewer”中的远场模式