光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
9hbn<Y •使用VB脚本生成光栅(或周期性)布局。
Vdpvo;4uy •光栅布局
模拟和后处理分析
_s(izc 布局layout
zQPQP` 我们将模拟如图1所示的二维光栅布局。
wO>P<KBU 图1.二维光栅布局
p bRU" qFV }Y0w 用VB脚本定义一个2D光栅布局
xzI?'?duC q!r4"#Y"@Z 步骤:
G; onJ> 1 通过在
文件菜单中选择“New”,启动一个新项目。
VZo,AP~ 2 在“Wafer Properties”对话框中设置以下
参数 uaiCyh1: Wafer Dimensions:
j B.ZF7q Length (mm): 8.5
D(z}c, Width (mm): 3.0
=.<S3? `fL81)!jI# 2D wafer properties:
X3# AYn, Wafer refractive index: Air
h#EksX 3 点击 Profiles 与 Materials.
J/-&Fa\( B '@a36 在“Materials”中加入以下
材料:
iUH{rh! Name: N=1.5
rhr(uCp/ Refractive index (Re:): 1.5
q-k~L\Ys Ok/U"N- Name: N=3.14
cVR#\OM Refractive index (Re:): 3.14
+f+#W W)OoHpdw 4.在“Profile”中定义以下轮廓:
94Hs.S) Name: ChannelPro_n=3.14
9hNHcl. 2D profile definition, Material: n=3.14
I"_``*/1 6Z:swgi6& Name: ChannelPro_n=1.5
@ xBw' 2D profile definition, Material: n=1.5
^y1P~4w? jdEqa$CXG 6.画出以下波导结构:
$h)VKW^\ a. Linear waveguide 1
"&@v[O)!xu Label: linear1
[WAnII Start Horizontal offset: 0.0
0/g 0=dW= Start vertical offset: -0.75
5VLJ:I?0O End Horizontal offset: 8.5
KcW]"K>p! End vertical offset: -0.75
Qr n^T Channel Thickness Tapering: Use Default
O=A(x m# Width: 1.5
q|EE
em Depth: 0.0
eHt |O~ Profile: ChannelPro_n=1.5
3%J7_e' rNl`w. b. Linear waveguide 2
0</]Jo% Label: linear2
CSBk Start Horizontal offset: 0.5
6q8b>LG| Start vertical offset: 0.05
>axf_k End Horizontal offset: 1.0
/ }tMb End vertical offset: 0.05
_$f XK Channel Thickness Tapering: Use Default
hj<h]dhp Width: 0.1
kv)IG$S0 Depth: 0.0
j,%<16f^A Profile: ChannelPro_n=3.14
x9lG$0k:V X
/
{; 7.加入水平平面波:
}ag
-J."5M Continuous Wave Wavelength: 0.63 General:
tt%lDr1A) Input field Transverse: Rectangular
;`(l)X+7 X Position: 0.5
FFvF4]|L Direction: Negative Direction
hG8!aJo Label: InputPlane1
<"SOH;w 2D Transverse:
KK|AXoBf Center Position: 4.5
13lJq:bM Half width: 5.0
"y5LojdCs Titlitng Angle: 45
$
M8ZF(W Effective Refractive Index: Local Amplitude: 1.0
AD=qB5: 图2.波导结构(未设置周期)
P%nN#Qm yH:gFEJ:x 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
([+u U! 将Linear2代码段修改如下:
jH4'jB Dim Linear2
}5I+VY7a for m=1 to 8
.0gF&>I} Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
b;AGw3SF Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
6(9S'~*'R Linear2.SetAttr "WidthExpr", "0.1"
o;#9$j7QP! Linear2.SetAttr "Depth", "0"
ux
7^PTgcO Linear2.SetAttr "StartThickness", "0.000000"
*$4 EXwt' Linear2.SetAttr "EndThickness", "0.000000"
H`XE5Hk)P% Linear2.SetProfileName "ChannelPro_n=3.14"
-76l*=| Linear2.SetDefaultThicknessTaperMode True
,o\-'
RdtF5#\z 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
`RriVYc< 图3.光栅布局通过VB脚本生成
b_p/ 1W: gFx2\QV 设置仿真参数
R54wNm@ 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
GIyb0XjTw 2. 在仿真参数对话框中,设置以下参数:
,$xV&w8f\" TE simulation
oOj7y>Nm Mesh Delta X: 0.015
"G+g(?N]j Mesh Delta Z: 0.015
h>A~.. Time Step Size: Auto Run for 1000 Time steps
;]/emw=a 设置边界条件设置X和Z边为各向异性PML边界条件。
Z fQzA}QD Number of Anisotropic PML layers: 15
>;9+4C<z0 其它参数保持默认
pm.Zc'23
运行仿真
x)h|!T=B~ • 在仿真参数中点击Run按钮,启动仿真
j\o<r0I • 在分析仪中,可以观察到各场分量的时域响应
("+J*u*kq_ • 仿真完成后,点击“Yes”,启动分析仪。
@Ft\~ +} 5,;>b^gXY` 远场分析
衍射波
bIR&e E 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
1F*3K3T { 2. 选择“Definition of the Cross Cut”为z方向
Rx}*I00 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
&ml7368@ 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
l4:5(1 图4.远场计算对话框
I>(3\z4s ZYi."^l 5. 在远场对话框,设置以下参数:
:nYnTo` Wavelength: 0.63
W'B=H1 Refractive index: 1.5+0i
p#yq 'kY Angle Initial: -90.0
sFvu@Wm'7W Angle Final: 90.0
PU"C('AP Number of Steps: 721
R;6$lO8C& Distance: 100, 000*wavelength
D (>,#F Intensity
|6ZH+6[ VX;br1$X 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
gYtv`O 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
dE`a1H% 图5.“Opti 2D Viewer”中的远场模式