光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
:h
tOz. •使用VB脚本生成光栅(或周期性)布局。
a
W`q •光栅布局
模拟和后处理分析
O!}TZfC 布局layout
$!L'ZO1_r 我们将模拟如图1所示的二维光栅布局。
.$/Su3]K/ 图1.二维光栅布局
O+Fu zCWj {$,e@nn 用VB脚本定义一个2D光栅布局
Wc4F'}s 1MH[-=[Q 步骤:
8,p nm 1 通过在
文件菜单中选择“New”,启动一个新项目。
ty|E[Ez1 2 在“Wafer Properties”对话框中设置以下
参数 {(@M0? Wafer Dimensions:
.(OFYK< Length (mm): 8.5
_ cK"y2 Width (mm): 3.0
H 3YFbR 05mjV6j7m 2D wafer properties:
>(s)S[\ Wafer refractive index: Air
nc#}-}`5 3 点击 Profiles 与 Materials.
Y
'&&1R ,y}?Z8?63 在“Materials”中加入以下
材料:
[R[]&\W Name: N=1.5
bT<if@h- Refractive index (Re:): 1.5
TT3GFP _5(lp} s Name: N=3.14
9kmkF, Refractive index (Re:): 3.14
x2*l5t oa(R,{_*q 4.在“Profile”中定义以下轮廓:
=X[]0.I% Name: ChannelPro_n=3.14
`LU[+F8< 2D profile definition, Material: n=3.14
iB;EV8E fmf3Hp@ Name: ChannelPro_n=1.5
S"ZH5O( 2D profile definition, Material: n=1.5
YIv!\`^ \ 0b%"=J2/p. 6.画出以下波导结构:
4.:2!Q a. Linear waveguide 1
<rZ(B>$ Label: linear1
fvn`$ Start Horizontal offset: 0.0
+;uP)
"Q/L Start vertical offset: -0.75
{ O+d7,C End Horizontal offset: 8.5
yOwo(+
2 End vertical offset: -0.75
W($}G_j[B1 Channel Thickness Tapering: Use Default
TbqH-R3W Width: 1.5
H`#{zt); Depth: 0.0
36mp+}R# Profile: ChannelPro_n=1.5
od=%8z 6%bZZTP` b. Linear waveguide 2
v?e@`;-
< Label: linear2
JDcc`&`M Start Horizontal offset: 0.5
{"T$jV:GB Start vertical offset: 0.05
-FRMal4Pg0 End Horizontal offset: 1.0
HBHDu;u End vertical offset: 0.05
bBwQ1,c$ Channel Thickness Tapering: Use Default
77D>;90>? Width: 0.1
#-5.G>8
Depth: 0.0
5}S~8 Profile: ChannelPro_n=3.14
"M#A `b {j$ :9 H 7.加入水平平面波:
-]$q8Q(hM Continuous Wave Wavelength: 0.63 General:
B:Y"X:Y Input field Transverse: Rectangular
iI T7pq1 X Position: 0.5
N 4Kj)E@ Direction: Negative Direction
\*x'7c/qg Label: InputPlane1
!C13E lf 2D Transverse:
e
]-fb{oVH Center Position: 4.5
Er /:iO)_ Half width: 5.0
j#:IG/)GL Titlitng Angle: 45
D%[yAr;r Effective Refractive Index: Local Amplitude: 1.0
+i"^"/2f{ 图2.波导结构(未设置周期)
wq K:= r<< ]41 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
n
hT%_se4 将Linear2代码段修改如下:
G8bc\] Dim Linear2
?|4Y(0N for m=1 to 8
-rg >y!L Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
:wWPEhK Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
N@}5Fnk- Linear2.SetAttr "WidthExpr", "0.1"
(*qMs)~]B Linear2.SetAttr "Depth", "0"
MZJ@qIg[Y Linear2.SetAttr "StartThickness", "0.000000"
&+0WZ#VI Linear2.SetAttr "EndThickness", "0.000000"
h 8Shf" Linear2.SetProfileName "ChannelPro_n=3.14"
?2d! ^!9 Linear2.SetDefaultThicknessTaperMode True
bhk:Szqz Fsdp"X. 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
Bs?B\k= 图3.光栅布局通过VB脚本生成
dWKjVf Hs9; &C 设置仿真参数
|| p>O 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
b*5Yy/U 2. 在仿真参数对话框中,设置以下参数:
V
LXU TE simulation
q>X30g Mesh Delta X: 0.015
{$
a
$m Mesh Delta Z: 0.015
h7?uM^p Time Step Size: Auto Run for 1000 Time steps
^9_4#Ep( 设置边界条件设置X和Z边为各向异性PML边界条件。
vZ6_/ew8 Number of Anisotropic PML layers: 15
yj<j>JtN 其它参数保持默认
,a6Oi=+>/U 运行仿真
d ,"L8 • 在仿真参数中点击Run按钮,启动仿真
%"yy8~| • 在分析仪中,可以观察到各场分量的时域响应
)t?_3'W • 仿真完成后,点击“Yes”,启动分析仪。
4Su|aWL- :`Sd5b> 远场分析
衍射波
!tuN_ 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
b79z<D 2. 选择“Definition of the Cross Cut”为z方向
1uwzo9Yg 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
`4Db( ~ 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
vV$6fvS 图4.远场计算对话框
w^EUBRI- PR+L6DT_ 5. 在远场对话框,设置以下参数:
5w9oMM{ Wavelength: 0.63
A?zxF5rfp Refractive index: 1.5+0i
<>l! Angle Initial: -90.0
=w,cdU* Angle Final: 90.0
W)LtnD2 w Number of Steps: 721
sUe<21: Distance: 100, 000*wavelength
W{!Slf Intensity
*B*dWMh }L|cg2y 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
k $d+w][ 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
[&MhAzF 图5.“Opti 2D Viewer”中的远场模式