光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
7r6.n61F
•使用VB脚本生成光栅(或周期性)布局。
Hus)c3Ty7 •光栅布局
模拟和后处理分析
<$D`Z-6 布局layout
L^1NY3=$ 我们将模拟如图1所示的二维光栅布局。
(d(CT; 图1.二维光栅布局
{i;r XY5K%dMU 用VB脚本定义一个2D光栅布局
k
R?qb6 Ki;*u_4{ 步骤:
O%\*@4zM 1 通过在
文件菜单中选择“New”,启动一个新项目。
j
*
% 2 在“Wafer Properties”对话框中设置以下
参数 P0;n9>g Wafer Dimensions:
{a =#B)6 Length (mm): 8.5
mVj9 ,q0 Width (mm): 3.0
KYB`D.O a1T'x~ ' 2D wafer properties:
sU=H&D99 Wafer refractive index: Air
Na<pwC 3 点击 Profiles 与 Materials.
CXH&U@57{ ))qy;Q, 在“Materials”中加入以下
材料:
.#EFLXs Name: N=1.5
1y:-N6 Refractive index (Re:): 1.5
})'B<vq b!+hH Hv: Name: N=3.14
8=!D$t\3 Refractive index (Re:): 3.14
Lc}LGq! n'"/KS+_ 4.在“Profile”中定义以下轮廓:
&5>Kl}7 Name: ChannelPro_n=3.14
W~)}xy 2D profile definition, Material: n=3.14
Q-(zwAaE ,<.V7(|t) Name: ChannelPro_n=1.5
`~cqAs}6]Q 2D profile definition, Material: n=1.5
2_>N/Z4T ~?l |
[ 6.画出以下波导结构:
b]e"1Y)D- a. Linear waveguide 1
QRw"H 8nW Label: linear1
."g`3tVK Start Horizontal offset: 0.0
}H53~@WP> Start vertical offset: -0.75
)L? P}$+ End Horizontal offset: 8.5
<3nMx^ End vertical offset: -0.75
Usvl}{L[ Channel Thickness Tapering: Use Default
%O;:af"Ja8 Width: 1.5
T9=I$@/ Depth: 0.0
&0d#Y]D4` Profile: ChannelPro_n=1.5
7P} W
* 5%"V[lDx@ b. Linear waveguide 2
[+^1.N Label: linear2
IW5,7. Start Horizontal offset: 0.5
GblA9F7 Start vertical offset: 0.05
*tA1az-jO End Horizontal offset: 1.0
*;W+>W End vertical offset: 0.05
Zpt\p7WQ Channel Thickness Tapering: Use Default
+w`2kv Width: 0.1
{ qk1_yP Depth: 0.0
10Q ]67 Profile: ChannelPro_n=3.14
p%ki>p )E| :
6jbt: 7.加入水平平面波:
!|(-=2` Continuous Wave Wavelength: 0.63 General:
ROI7eU Input field Transverse: Rectangular
2Ah#<k-gC; X Position: 0.5
&C_j\7Dq Direction: Negative Direction
3Tcms/n Label: InputPlane1
FaAC&F@u 2D Transverse:
g&L!1<,
p Center Position: 4.5
+Ze}B*0 Half width: 5.0
M-VX;/&FR Titlitng Angle: 45
qZdQD Effective Refractive Index: Local Amplitude: 1.0
#\{l"- 图2.波导结构(未设置周期)
AYBns]! }rUN_.n4z 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
>>r(/81S 将Linear2代码段修改如下:
`v!urE/gg% Dim Linear2
yZY \MB/ for m=1 to 8
:U|1 xgB Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
.vf'YNQ% Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
Pm6pv;WK Linear2.SetAttr "WidthExpr", "0.1"
NWESP U):w Linear2.SetAttr "Depth", "0"
J3V=
46Yc Linear2.SetAttr "StartThickness", "0.000000"
; nfdGB Linear2.SetAttr "EndThickness", "0.000000"
I9A~Ye
5O& Linear2.SetProfileName "ChannelPro_n=3.14"
n`_{9R Linear2.SetDefaultThicknessTaperMode True
5Pc;5
o0C XT%nbh&y 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
Z?q]bSIT 图3.光栅布局通过VB脚本生成
:LQYo'@yB tU5zF.% 设置仿真参数
QW~E&B% 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
U+jOTq8 M 2. 在仿真参数对话框中,设置以下参数:
1ba~SHi TE simulation
!qQl@j O Mesh Delta X: 0.015
\!X8
Mesh Delta Z: 0.015
1t~G|zhX Time Step Size: Auto Run for 1000 Time steps
nF]W,@u"h 设置边界条件设置X和Z边为各向异性PML边界条件。
?=msH=N<l Number of Anisotropic PML layers: 15
! I:%0D 其它参数保持默认
s]0{a.Cpv 运行仿真
oSKXt}sh • 在仿真参数中点击Run按钮,启动仿真
_yx>TE2e • 在分析仪中,可以观察到各场分量的时域响应
($MlX BI • 仿真完成后,点击“Yes”,启动分析仪。
u@)U"FZ r|8d
4 远场分析
衍射波
n38p !oS 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
Xu'&ynID 2. 选择“Definition of the Cross Cut”为z方向
Vm(y7}Aq{ 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
%\#8{g 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
u~:y\/Y6 图4.远场计算对话框
s\(k<Ks +) om^e@. 5. 在远场对话框,设置以下参数:
2,oKVm+ Wavelength: 0.63
:S83vE81WK Refractive index: 1.5+0i
J4C.+![!Ah Angle Initial: -90.0
fw~Bza\e Angle Final: 90.0
>2)OiQ`zg Number of Steps: 721
UgSB>V<? Distance: 100, 000*wavelength
bH9kj/q\b Intensity
jOunWv| 8'[7
)I= 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
{]!mrAjD 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
,-c6dS 图5.“Opti 2D Viewer”中的远场模式