光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
u6t%*'' •使用VB脚本生成光栅(或周期性)布局。
p=d,kY •光栅布局
模拟和后处理分析
{0o,2]o!: 布局layout
fi
tsu"G 我们将模拟如图1所示的二维光栅布局。
d5YL=o 图1.二维光栅布局
{hH8+4c7 yt4sg/]: 用VB脚本定义一个2D光栅布局
N hY`_?) HOr.(gL! 步骤:
<1pRAN0 1 通过在
文件菜单中选择“New”,启动一个新项目。
^&z3zFTp 2 在“Wafer Properties”对话框中设置以下
参数 v[b|J7k Wafer Dimensions:
j9d^8)O, Length (mm): 8.5
DUMC4+i Width (mm): 3.0
KKRj#m(:! z=j,-d%9 2D wafer properties:
@TraEBJGL Wafer refractive index: Air
\hO}3;*& 3 点击 Profiles 与 Materials.
GQ8A}gwH (^~0%1 在“Materials”中加入以下
材料:
sLOkLz"x Name: N=1.5
wZs jbNf`K Refractive index (Re:): 1.5
<*@!>6mS Swxur+hfH Name: N=3.14
-d]v6q'1 Refractive index (Re:): 3.14
E5X#9;U8E" ($X2SIZh 4.在“Profile”中定义以下轮廓:
g/W&Ap;qVL Name: ChannelPro_n=3.14
#GfM!<q< 2D profile definition, Material: n=3.14
(Rs|"];?Z 7csMk5NU'< Name: ChannelPro_n=1.5
S^:7V[=EgI 2D profile definition, Material: n=1.5
.)|2^ 'W ^fEer 6.画出以下波导结构:
,c&%/"i:w a. Linear waveguide 1
FwpTQix! Label: linear1
Blox~=cW Start Horizontal offset: 0.0
3|
F\a|N Start vertical offset: -0.75
mum4Uj End Horizontal offset: 8.5
9!,f4&G` End vertical offset: -0.75
Ewa/6=]LA Channel Thickness Tapering: Use Default
8FJPw"9 Width: 1.5
IWT
-)+ Depth: 0.0
/y3Lc.- Profile: ChannelPro_n=1.5
C,) e7 lbj_if; b. Linear waveguide 2
|H'wDw8 Label: linear2
Kwo0%2Onkd Start Horizontal offset: 0.5
>f:OU," Start vertical offset: 0.05
.F]"%RK[ End Horizontal offset: 1.0
qpX`ZY^ End vertical offset: 0.05
l}XnCOIT, Channel Thickness Tapering: Use Default
eEX* \1Gg Width: 0.1
IQyw>_~] Depth: 0.0
;0nL1R]w( Profile: ChannelPro_n=3.14
o(@^V!}V +<^c2diX 7.加入水平平面波:
?#|in} Continuous Wave Wavelength: 0.63 General:
gCZm7dgo Input field Transverse: Rectangular
t]XF*fZH X Position: 0.5
|6w{%xC?" Direction: Negative Direction
'^`% Label: InputPlane1
yhxZ^(I 2D Transverse:
_53NuEM1 Center Position: 4.5
P] Xl Half width: 5.0
'=(@3ggA: Titlitng Angle: 45
L[. )!c8k Effective Refractive Index: Local Amplitude: 1.0
w^)_Fk3 图2.波导结构(未设置周期)
yC9~X='D v4W<_
7L_ 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
13MB1n 将Linear2代码段修改如下:
Ze3sc$fG2 Dim Linear2
BUU ) Sz for m=1 to 8
"[2D&\$ Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
xX\A&9m Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
S!g0J}.z Linear2.SetAttr "WidthExpr", "0.1"
DC,]FmWs!+ Linear2.SetAttr "Depth", "0"
GQ1m
h*4$ Linear2.SetAttr "StartThickness", "0.000000"
)'e9(4[V1 Linear2.SetAttr "EndThickness", "0.000000"
7KZ>x*o Linear2.SetProfileName "ChannelPro_n=3.14"
AxiCpAS;J Linear2.SetDefaultThicknessTaperMode True
FK,Jk04on 3bR 6Y[ 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
dk@iAL*v 图3.光栅布局通过VB脚本生成
D*q:XO6b \)+s)&JLb 设置仿真参数
]3~X!(O 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
d^G5Pq 2. 在仿真参数对话框中,设置以下参数:
^e:rRk7 & TE simulation
? W2Wy\ Mesh Delta X: 0.015
'9Xw_1B Mesh Delta Z: 0.015
{p7b\=WB- Time Step Size: Auto Run for 1000 Time steps
X m%aT 设置边界条件设置X和Z边为各向异性PML边界条件。
p&cJo<]=LE Number of Anisotropic PML layers: 15
W4rh7e4 其它参数保持默认
DTM
xfQdk 运行仿真
xwZ7I • 在仿真参数中点击Run按钮,启动仿真
(d}z>?L • 在分析仪中,可以观察到各场分量的时域响应
'Q4V(. • 仿真完成后,点击“Yes”,启动分析仪。
^A;(#5A]7
4d )Q 远场分析
衍射波
)Ga 3Ji}' 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
ul ag$ge 2. 选择“Definition of the Cross Cut”为z方向
42 &m) 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
'H)l~L 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
]tO9< 图4.远场计算对话框
a+p_47 xa q-nM]Gm 5. 在远场对话框,设置以下参数:
/rmm@ Wavelength: 0.63
YhJ*(oWL Refractive index: 1.5+0i
u9,ZY> Angle Initial: -90.0
QTuj v<| Angle Final: 90.0
D>I|(B!.p8 Number of Steps: 721
q@&.)sLPgO Distance: 100, 000*wavelength
,?>:Cdz4 Intensity
I,YP{H 4 ]5hGSl2 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
XCku[?Ix 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
e!|T Tap 图5.“Opti 2D Viewer”中的远场模式