光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
crqpV F]1] •使用VB脚本生成光栅(或周期性)布局。
&=#[(vl •光栅布局
模拟和后处理分析
%<E$,w> 布局layout
~p1j`r; 我们将模拟如图1所示的二维光栅布局。
^.#jF#u~ 图1.二维光栅布局
]vgB4~4#LP 7[I}*3Q' 用VB脚本定义一个2D光栅布局
{k>Ca qR(\5} 步骤:
h!&prYx 1 通过在
文件菜单中选择“New”,启动一个新项目。
"]z-: \ V 2 在“Wafer Properties”对话框中设置以下
参数 o=21|z Wafer Dimensions:
ZT,B(#m Length (mm): 8.5
TR<<+ Width (mm): 3.0
99}(~B Qk\A
c 2D wafer properties:
dik:4; Wafer refractive index: Air
7]9
a< 3 点击 Profiles 与 Materials.
?mWw@6G, ZkA U17f 在“Materials”中加入以下
材料:
V\u>"3BQw Name: N=1.5
G>wqt@%r9 Refractive index (Re:): 1.5
RT)d ]u o>/YAX:.!T Name: N=3.14
Cz72?[6 Refractive index (Re:): 3.14
/x5rf zRq-b`<7V 4.在“Profile”中定义以下轮廓:
>+]_5qc Name: ChannelPro_n=3.14
%;e/7`>Ma 2D profile definition, Material: n=3.14
)6+eNsxMlC L1ieaKw Name: ChannelPro_n=1.5
NbC@z9Q 2D profile definition, Material: n=1.5
|55N?=8 AI,(z;{P 6.画出以下波导结构:
Q.]}]QE
a. Linear waveguide 1
1jN-4& Label: linear1
4zJtOK?r" Start Horizontal offset: 0.0
P5
K' p5}# Start vertical offset: -0.75
u[L`-zI End Horizontal offset: 8.5
*Txl+zTY End vertical offset: -0.75
enp)-nS0 Channel Thickness Tapering: Use Default
TQx.KM>y Width: 1.5
ix(=3/Dgz Depth: 0.0
<FWF<r3F Profile: ChannelPro_n=1.5
pcT:]d[1) fcNL$U&-,i b. Linear waveguide 2
(xVsDAp=@ Label: linear2
} p&&_? Start Horizontal offset: 0.5
RA G3o- Start vertical offset: 0.05
|g
#K]v End Horizontal offset: 1.0
o(:[r@Z0z End vertical offset: 0.05
%!du,2 Channel Thickness Tapering: Use Default
F8;dKyT?q Width: 0.1
u>TZt]h8 Depth: 0.0
TiYnc3Bz}J Profile: ChannelPro_n=3.14
&4b&X0pU D9FJ 1~ 7.加入水平平面波:
m|=H# Continuous Wave Wavelength: 0.63 General:
=,Dqqf Input field Transverse: Rectangular
~ECD`N<YF X Position: 0.5
.Fnwm} Direction: Negative Direction
Z00+!Tnd Label: InputPlane1
]`&Yqg 2D Transverse:
H63,bNS s Center Position: 4.5
Z\HX~*,6 Half width: 5.0
:,J}z~I,lB Titlitng Angle: 45
]3g?hM6 Effective Refractive Index: Local Amplitude: 1.0
;PjQt=4K 图2.波导结构(未设置周期)
Yc,7tUz# 6(G?MW. 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
Zf'TJ`S 将Linear2代码段修改如下:
:{oZ ~< Dim Linear2
i { \%e for m=1 to 8
#m[|2R Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
,t`Kv1 Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
d1U\ft:gV Linear2.SetAttr "WidthExpr", "0.1"
!"<MsoY@ Linear2.SetAttr "Depth", "0"
`67[O4$< Linear2.SetAttr "StartThickness", "0.000000"
#Sa27$&.> Linear2.SetAttr "EndThickness", "0.000000"
E;1Jh(58)b Linear2.SetProfileName "ChannelPro_n=3.14"
Db6om7N Linear2.SetDefaultThicknessTaperMode True
/Wy.>YC| '1$!jmY 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
N_pJk2E 图3.光栅布局通过VB脚本生成
s1e:v+B] tl><"6AIP 设置仿真参数
"dI; 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
2 Sh
2. 在仿真参数对话框中,设置以下参数:
BM(]QUxRd TE simulation
PJ2qfYsH=> Mesh Delta X: 0.015
uPRQU+ Mesh Delta Z: 0.015
4"xPr[=iG Time Step Size: Auto Run for 1000 Time steps
Rr!Y3)f; 设置边界条件设置X和Z边为各向异性PML边界条件。
*&d<yJM`b Number of Anisotropic PML layers: 15
jK' N((Hz 其它参数保持默认
\mV'mZ9> 运行仿真
h+a S4Q& • 在仿真参数中点击Run按钮,启动仿真
Z7RiPSdxp • 在分析仪中,可以观察到各场分量的时域响应
C-Ht(x | • 仿真完成后,点击“Yes”,启动分析仪。
^|TG$`M(w Y_]De3:V0B 远场分析
衍射波
T}4/0yR2 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
A0fFv+RN3 2. 选择“Definition of the Cross Cut”为z方向
jiYmb8Q4D 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
bzvh%RsW 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
D`xHD#j h 图4.远场计算对话框
!w H'b y|Ir._bt 5. 在远场对话框,设置以下参数:
#vzEu
)Ul Wavelength: 0.63
g7&9" Refractive index: 1.5+0i
YSj+\Z$( Angle Initial: -90.0
8X I? Angle Final: 90.0
&m[Qn!>i6 Number of Steps: 721
3;8!rNN Distance: 100, 000*wavelength
Dc+'<" Intensity
9JWa$iBH@ )x]3Zq 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
8Th` ]tI 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
tqy@iEz+ 图5.“Opti 2D Viewer”中的远场模式