光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
iHOvCrp+X •使用VB脚本生成光栅(或周期性)布局。
Mw $.B# •光栅布局
模拟和后处理分析
1b"3]? 布局layout
$5yH8JU 我们将模拟如图1所示的二维光栅布局。
-Ly A 图1.二维光栅布局
MW.,}f Ils^t 用VB脚本定义一个2D光栅布局
_k5-Wd5Ypw `l}r&z(8 步骤:
8F`799[p 1 通过在
文件菜单中选择“New”,启动一个新项目。
ez *O'U 2 在“Wafer Properties”对话框中设置以下
参数 af2yng Wafer Dimensions:
~D Ta%J Length (mm): 8.5
=^3B&qQNq Width (mm): 3.0
"C%* 'k LfS]m>>e 2D wafer properties:
:j!N7c{ Wafer refractive index: Air
A
v%'#1w<" 3 点击 Profiles 与 Materials.
Q\v^3u2;m` q"^T}d d, 在“Materials”中加入以下
材料:
N%+ C5e< Name: N=1.5
]a=Bc~g91 Refractive index (Re:): 1.5
fyt`$y_E[ ?9AtFT Name: N=3.14
EY
9N{ Refractive index (Re:): 3.14
IDv|i.q3 !F*CE cB 4.在“Profile”中定义以下轮廓:
8:(e~?
f6 Name: ChannelPro_n=3.14
<D M:YWNa 2D profile definition, Material: n=3.14
wrt^0n'r)c %Nm69j-5% Name: ChannelPro_n=1.5
Ej64^* 2D profile definition, Material: n=1.5
g JMv @8GW?R 6.画出以下波导结构:
MDKiwT@# a. Linear waveguide 1
k7Z1Y!n7 Label: linear1
j*)K>
\ Start Horizontal offset: 0.0
IGtqY8 Start vertical offset: -0.75
*l4`2 eqZ End Horizontal offset: 8.5
Nl `8Kcv End vertical offset: -0.75
}fKpih Channel Thickness Tapering: Use Default
7Cj6Kw5k Width: 1.5
VN9C@ ;'$ Depth: 0.0
,t_Fo-i7vI Profile: ChannelPro_n=1.5
%phv <AW LK[%}2me b. Linear waveguide 2
x?B 8b-* Label: linear2
(t)a u Start Horizontal offset: 0.5
DR6 OR B7 Start vertical offset: 0.05
Tb6c]?'U End Horizontal offset: 1.0
${%*O}$ End vertical offset: 0.05
UA}oOteG Channel Thickness Tapering: Use Default
F[SYs/M Width: 0.1
& ]/Z~V t Depth: 0.0
v(tr:[V Profile: ChannelPro_n=3.14
Pa!r*(M)C 6+[7UH~pm^ 7.加入水平平面波:
9>"To Continuous Wave Wavelength: 0.63 General:
7EAkY`Op Input field Transverse: Rectangular
"Aq-H g X Position: 0.5
lE?F Wt Direction: Negative Direction
4^O'K;$leD Label: InputPlane1
"xV9$m> 2D Transverse:
&t\KKsUtd Center Position: 4.5
M _z-~G Half width: 5.0
:2fz4n0{/ Titlitng Angle: 45
Qm\VZ<6/5 Effective Refractive Index: Local Amplitude: 1.0
a~F`{(Q2 图2.波导结构(未设置周期)
`<L6Q2Y>j _ADK8a6%) 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
`)W}4itm
将Linear2代码段修改如下:
Dab1^H!KT Dim Linear2
JUlV$b.)J for m=1 to 8
.Lk2S "+ Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
'J`%[,@V Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
HEjrat;5 Linear2.SetAttr "WidthExpr", "0.1"
An e.sS Linear2.SetAttr "Depth", "0"
R3$K[Lv, Linear2.SetAttr "StartThickness", "0.000000"
Rz!E=1Y$ Linear2.SetAttr "EndThickness", "0.000000"
Y`u.P(7# Linear2.SetProfileName "ChannelPro_n=3.14"
X192Lar Linear2.SetDefaultThicknessTaperMode True
0r+%5}|-K ^vmyiF 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
>_y>["u6J# 图3.光栅布局通过VB脚本生成
m"!!) ;ml;{<jI 设置仿真参数
K6.*)7$# 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
l }?'U 2. 在仿真参数对话框中,设置以下参数:
Q
b5AQf30 TE simulation
'~E&^K5hr Mesh Delta X: 0.015
@,-xaZ[ Mesh Delta Z: 0.015
m3k}Q3&6Z Time Step Size: Auto Run for 1000 Time steps
,!f*OWnZ 设置边界条件设置X和Z边为各向异性PML边界条件。
B=/*8,u Number of Anisotropic PML layers: 15
10JxfDceD 其它参数保持默认
)h~MIpWR 运行仿真
PF1m :Iz`d • 在仿真参数中点击Run按钮,启动仿真
Z50]g • 在分析仪中,可以观察到各场分量的时域响应
CW Y'q • 仿真完成后,点击“Yes”,启动分析仪。
P(W7,GD,k =^P<D&%q 远场分析
衍射波
a<[@p 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
Ywf.,V 2. 选择“Definition of the Cross Cut”为z方向
;&|ja]r 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
hIw<gb4J% 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
~<pGiW'w5 图4.远场计算对话框
1x]U&{do Nvs8t% 5. 在远场对话框,设置以下参数:
WZ'3 Wavelength: 0.63
bf
`4GD( Refractive index: 1.5+0i
b0i]T?# Angle Initial: -90.0
EM*YN=S o Angle Final: 90.0
UKx91a}g Number of Steps: 721
tWi@_Rlx; Distance: 100, 000*wavelength
#Vanw ! Intensity
r}P{opn$t
aF$HF;-y 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
GP uAIoBo 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
;""V s6 图5.“Opti 2D Viewer”中的远场模式