光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
D,=~7/g •使用VB脚本生成光栅(或周期性)布局。
97 SS0J •光栅布局
模拟和后处理分析
274j7Y' 布局layout
D?y-Y
我们将模拟如图1所示的二维光栅布局。
dlvU=^G#G 图1.二维光栅布局
3]1 !g6 ds`YVXKH 用VB脚本定义一个2D光栅布局
U;3t{~Ym &wU"6E 步骤:
xppnBnu$7 1 通过在
文件菜单中选择“New”,启动一个新项目。
LS*L XC 2 在“Wafer Properties”对话框中设置以下
参数 W\j'8^kI9 Wafer Dimensions:
Q^<amM! Length (mm): 8.5
f'ld6jt|% Width (mm): 3.0
VEa"^{,w &(<>}
r 2D wafer properties:
fahQ^#&d` Wafer refractive index: Air
zATOFV 3 点击 Profiles 与 Materials.
|}^u<S8X YCP D+ 在“Materials”中加入以下
材料:
bX[ZVE(L Name: N=1.5
7>im2"zm Refractive index (Re:): 1.5
i<m)
s$u q;R&valn Name: N=3.14
b`%u}^B { Refractive index (Re:): 3.14
'r=2f6G>cP Wk^{Tn/] 4.在“Profile”中定义以下轮廓:
{_W8Qm`. Name: ChannelPro_n=3.14
:!Z |_y{b 2D profile definition, Material: n=3.14
fph+05.% nv0D4 t Name: ChannelPro_n=1.5
\aPH_sf, 2D profile definition, Material: n=1.5
Gfx!.[Y
LTBH/[q5 6.画出以下波导结构:
[ {"x{; a. Linear waveguide 1
>l-u{([B Label: linear1
OS%[SHs Start Horizontal offset: 0.0
JkR%o
#>5 Start vertical offset: -0.75
VO1 End Horizontal offset: 8.5
@Wd(>*"zw End vertical offset: -0.75
ox<6qW Channel Thickness Tapering: Use Default
nGTGX Width: 1.5
CUTjRWQ Depth: 0.0
((AK7hb Profile: ChannelPro_n=1.5
f3,LX]zKA RJ3uu NK7 b. Linear waveguide 2
| J'k9W" Label: linear2
,c&t#mu*0 Start Horizontal offset: 0.5
U*N{H$ACuR Start vertical offset: 0.05
l %zbx"%x End Horizontal offset: 1.0
3
u=\d)eq End vertical offset: 0.05
G$_)X%Vb I Channel Thickness Tapering: Use Default
Qd~7OH4Lp Width: 0.1
"Cvr("'O Depth: 0.0
5KbPpKpd Profile: ChannelPro_n=3.14
r9-ayp#pC 7H6Ge-u 7.加入水平平面波:
KN@ [hb7% Continuous Wave Wavelength: 0.63 General:
M-;MwLx Input field Transverse: Rectangular
3P75:v X Position: 0.5
!iHC++D Direction: Negative Direction
kDJqT Label: InputPlane1
Mx0~^l 2D Transverse:
l`6.(6 Center Position: 4.5
~f[;(?39xZ Half width: 5.0
3J8>r|u;1' Titlitng Angle: 45
,|8aDL? Effective Refractive Index: Local Amplitude: 1.0
F W2x 图2.波导结构(未设置周期)
]ZR`
6|"VO r1.zURY 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
_H}hK kG+ 将Linear2代码段修改如下:
X%99@ qv Dim Linear2
AW_ YlS for m=1 to 8
19% "F!^i Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
LO%e1y Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
S,|ZCl>+ Linear2.SetAttr "WidthExpr", "0.1"
G{|"WaKW Linear2.SetAttr "Depth", "0"
%H_-`A` Linear2.SetAttr "StartThickness", "0.000000"
8)s0$64Ra Linear2.SetAttr "EndThickness", "0.000000"
zSMM?g^T Linear2.SetProfileName "ChannelPro_n=3.14"
#u"@q< ) Linear2.SetDefaultThicknessTaperMode True
c|'$3dB* 37IHn6r\ 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
%#EzZD 图3.光栅布局通过VB脚本生成
'b [O-6v 2ZbSdaM= 设置仿真参数
'9qyf<MlY 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
3DCR n : 2. 在仿真参数对话框中,设置以下参数:
9!r0uU" TE simulation
V\n!?1{kdF Mesh Delta X: 0.015
W! |_ hL Mesh Delta Z: 0.015
pP# _B Time Step Size: Auto Run for 1000 Time steps
M/xm6 设置边界条件设置X和Z边为各向异性PML边界条件。
B4zuWCE@ Number of Anisotropic PML layers: 15
\Lb wfd= 其它参数保持默认
rHybP6C< 运行仿真
&eO.h%@ • 在仿真参数中点击Run按钮,启动仿真
,9F3~Ryt( • 在分析仪中,可以观察到各场分量的时域响应
V3|"
v4 • 仿真完成后,点击“Yes”,启动分析仪。
DqI "B mICx9oz] 远场分析
衍射波
xVI"sBUu 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
C>-}BeY! 2. 选择“Definition of the Cross Cut”为z方向
V%t_,AT 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
+wHa)A0MW 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
F}F{/
图4.远场计算对话框
;$ ]a.9
- VD!PF' 5. 在远场对话框,设置以下参数:
]$.w
I~J% Wavelength: 0.63
|Ul 4n@+2 Refractive index: 1.5+0i
Xrc{wDn Angle Initial: -90.0
bz,"TG[ Angle Final: 90.0
ZOppec1D Number of Steps: 721
:YLYCVi| Distance: 100, 000*wavelength
*. A-UoHa Intensity
cdI"=B+C\ ':
Ek3' L 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
3fE0cVG* 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
juu"V]Q1 图5.“Opti 2D Viewer”中的远场模式