光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
nxx/26{
•使用VB脚本生成光栅(或周期性)布局。
;,e16^\' & •光栅布局
模拟和后处理分析
>KvK'Mus/ 布局layout
Ej
5_d 我们将模拟如图1所示的二维光栅布局。
-{8K/! 图1.二维光栅布局
%+Y wzL{ y1T(R# 用VB脚本定义一个2D光栅布局
CaO-aL 02trjp.f 步骤:
5%e+@X;j 1 通过在
文件菜单中选择“New”,启动一个新项目。
4OQ,|Wm4G 2 在“Wafer Properties”对话框中设置以下
参数 T_=WX_h $ Wafer Dimensions:
k.K#i /t Length (mm): 8.5
j7Ts&;`[* Width (mm): 3.0
yz=X{p1 t|i<}2 2D wafer properties:
1^E5VG1[ Wafer refractive index: Air
Mqvo
j7 3 点击 Profiles 与 Materials.
X(X[v] 6}e*!,2Xj 在“Materials”中加入以下
材料:
8.8t$ Name: N=1.5
h~](9 es Refractive index (Re:): 1.5
qt*+ D R3l{.{3p2 Name: N=3.14
m8b,_1 Refractive index (Re:): 3.14
|*UB/8C^/! {,+c 4.在“Profile”中定义以下轮廓:
M<n'ZDK`W Name: ChannelPro_n=3.14
jBOl:l,+ 2D profile definition, Material: n=3.14
(.V),NKG jVQ89vf
~ Name: ChannelPro_n=1.5
A;RV~!xx 2D profile definition, Material: n=1.5
L YF| C !Srv7 6.画出以下波导结构:
L
1!V'Hm{ a. Linear waveguide 1
{.jW"0U Label: linear1
AH5;6Q Start Horizontal offset: 0.0
^Y%_{
Start vertical offset: -0.75
$P?^GB>u End Horizontal offset: 8.5
_`&l46 End vertical offset: -0.75
$Oy&POe Channel Thickness Tapering: Use Default
16~E Width: 1.5
D_0Vu/v Depth: 0.0
C-;w}
Profile: ChannelPro_n=1.5
){"?@1vP S#y[_C?H b. Linear waveguide 2
OM&GypP6& Label: linear2
vQK/xg Start Horizontal offset: 0.5
7<;oz30G!L Start vertical offset: 0.05
>20dK End Horizontal offset: 1.0
[i ~qVn2vT End vertical offset: 0.05
Pap6JR{7 Channel Thickness Tapering: Use Default
h )5S4) Width: 0.1
Wu/#}Bw# Depth: 0.0
H4AT>}ri Profile: ChannelPro_n=3.14
U].]K L}Y.xi 7.加入水平平面波:
R=LiB+p Continuous Wave Wavelength: 0.63 General:
%J^x `P Input field Transverse: Rectangular
y7fy9jQ
8. X Position: 0.5
xi(\=LbhY Direction: Negative Direction
#xw*;hW< Label: InputPlane1
iI";m0Ny 2D Transverse:
@e
GBF
Ns Center Position: 4.5
I"vkfi#= Half width: 5.0
0O>ClE~P Titlitng Angle: 45
G_S>{<[ Effective Refractive Index: Local Amplitude: 1.0
ucx02^uA 图2.波导结构(未设置周期)
mL48L57Z ufL<L;Z\; 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
{XmCG%%L 将Linear2代码段修改如下:
71{jedT Dim Linear2
|50sGJE( for m=1 to 8
:1>?:3,` Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
3^+D,)#D^ Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
V&s|I oTR Linear2.SetAttr "WidthExpr", "0.1"
<4q H0< Linear2.SetAttr "Depth", "0"
src+z# Linear2.SetAttr "StartThickness", "0.000000"
Fds
11
/c7 Linear2.SetAttr "EndThickness", "0.000000"
6~x'~T Linear2.SetProfileName "ChannelPro_n=3.14"
=#S.t:HQ* Linear2.SetDefaultThicknessTaperMode True
+wmG5!%$| ~E7IU<B 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
*b.
> 图3.光栅布局通过VB脚本生成
^0OP&s;" \}?X5X> 设置仿真参数
7*{f*({ 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
-9i7Ja 2. 在仿真参数对话框中,设置以下参数:
nm,LKS7 TE simulation
4}uOut Mesh Delta X: 0.015
|j`73@6 Mesh Delta Z: 0.015
Km8aHc]O~ Time Step Size: Auto Run for 1000 Time steps
_V-K yK 设置边界条件设置X和Z边为各向异性PML边界条件。
1^}I?PbqV Number of Anisotropic PML layers: 15
Tn#Co$< 其它参数保持默认
*(F`NJ 3 运行仿真
6p)AQTh> • 在仿真参数中点击Run按钮,启动仿真
SXm%X(JU • 在分析仪中,可以观察到各场分量的时域响应
MVsFi]- • 仿真完成后,点击“Yes”,启动分析仪。
9_?xAJ .+/d08] 远场分析
衍射波
E=p+z"Ui 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
\:WWrY8& 2. 选择“Definition of the Cross Cut”为z方向
a4__1N^Qj 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
PC#^L$cg} 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
IT_I.5*A2 图4.远场计算对话框
,|({[9jA &3[oM)-V 5. 在远场对话框,设置以下参数:
-Lh7!d Wavelength: 0.63
4VwF\ Refractive index: 1.5+0i
%M@K(Qu Angle Initial: -90.0
ukW&\ Angle Final: 90.0
rGyAzL] Number of Steps: 721
YB5"i9T2 Distance: 100, 000*wavelength
6QX m]<
Intensity
E^axLp>(I 'BjTo*TB]Z 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
XVYFyza; 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
}'$PYAf6 图5.“Opti 2D Viewer”中的远场模式