光栅布局在大多数情况下是周期性
结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能:
.i;?8? •使用VB脚本生成光栅(或周期性)布局。
]2&RN@
•光栅布局
模拟和后处理分析
6 %` h2Z 布局layout
Jz0AYiCq 我们将模拟如图1所示的二维光栅布局。
$PlMyLu7jc 图1.二维光栅布局
H7drDw S]}}r) 用VB脚本定义一个2D光栅布局
^VnnYtCRz G `eU 步骤:
6h)
&h1Yd 1 通过在
文件菜单中选择“New”,启动一个新项目。
9%Vy, 2 在“Wafer Properties”对话框中设置以下
参数 qm9=Ga5 Wafer Dimensions:
[k%u$ Length (mm): 8.5
Tqs|2at<t Width (mm): 3.0
re4z>O* b'4}=Xpn 2D wafer properties:
44k8IYC*o Wafer refractive index: Air
lN"@5(5% 3 点击 Profiles 与 Materials.
L6jwJwD .Y!dO@$: 在“Materials”中加入以下
材料:
A&ceuu Name: N=1.5
".pQM.T Refractive index (Re:): 1.5
x*X{*?5@ ; Ob^@OM Name: N=3.14
1<Uv4S Refractive index (Re:): 3.14
W8-vF++R 0=9$k 4.在“Profile”中定义以下轮廓:
Ofb&W
AD Name: ChannelPro_n=3.14
oZL# *Z(h 2D profile definition, Material: n=3.14
]XX>h~0 3:c6x kaw Name: ChannelPro_n=1.5
8wkt9: 2D profile definition, Material: n=1.5
zlkW-rRkR %Yg|QBm| 6.画出以下波导结构:
0\k{v a. Linear waveguide 1
+T,0,^* Label: linear1
DdeKZ)8 Start Horizontal offset: 0.0
^FTS'/Q Start vertical offset: -0.75
VTX6_&Hc1g End Horizontal offset: 8.5
*k?y+}E_f End vertical offset: -0.75
v@fy*T\3 Channel Thickness Tapering: Use Default
|v#rSVx Width: 1.5
ra@CouR^c{ Depth: 0.0
@L 6)RF Profile: ChannelPro_n=1.5
j]mnH`#BL oykb8~u}} b. Linear waveguide 2
jnM}N:v Label: linear2
SC3_S. Start Horizontal offset: 0.5
^ME'D Start vertical offset: 0.05
* vqUOh End Horizontal offset: 1.0
S`TQWWQo; End vertical offset: 0.05
rzvKvGd#N Channel Thickness Tapering: Use Default
_1YC9} Width: 0.1
\IqCC h Depth: 0.0
wIWO?w2 Profile: ChannelPro_n=3.14
d+
[2Sm(7 5Z:qU{[ 7.加入水平平面波:
m G+=0Rn^ Continuous Wave Wavelength: 0.63 General:
NE Zu?g Input field Transverse: Rectangular
#D ]CuSi X Position: 0.5
)tS;gn Direction: Negative Direction
Ef@Et(f_mQ Label: InputPlane1
>4+KEK 2D Transverse:
bFH`wLW Center Position: 4.5
I_R 6
M1 Half width: 5.0
5-&"nn2*}1 Titlitng Angle: 45
x2OAkkH\]i Effective Refractive Index: Local Amplitude: 1.0
rrphOG 图2.波导结构(未设置周期)
Qf'g2
\ }iUpBn 8.单击“Layout Script”快捷工具栏或选择
仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。
rP!GS
_RG 将Linear2代码段修改如下:
:"@-Bcln Dim Linear2
#veV {,g for m=1 to 8
{r5OtYmpR Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) )
$Fy>N>,E( Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05
k7cY^&o Linear2.SetAttr "WidthExpr", "0.1"
|goK@< Linear2.SetAttr "Depth", "0"
+NiCt S Linear2.SetAttr "StartThickness", "0.000000"
sN#ju5 Linear2.SetAttr "EndThickness", "0.000000"
n@q-f-2 Linear2.SetProfileName "ChannelPro_n=3.14"
hp2$[p6O Linear2.SetDefaultThicknessTaperMode True
mGkQx
-| _qo\E=E 点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。
v?%vB#A^ 图3.光栅布局通过VB脚本生成
[r'A8!/|[ cF?0=un 设置仿真参数
*D9H3M[o# 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框
{.y_{yWo 2. 在仿真参数对话框中,设置以下参数:
7QoMroR TE simulation
~_g{P3 Mesh Delta X: 0.015
'6*9pG- Mesh Delta Z: 0.015
!DF5NAE Time Step Size: Auto Run for 1000 Time steps
]IzD` 设置边界条件设置X和Z边为各向异性PML边界条件。
e,W,NnCICj Number of Anisotropic PML layers: 15
O}}rosA 其它参数保持默认
AD@ {7 运行仿真
KCH`=lX • 在仿真参数中点击Run按钮,启动仿真
tE-g]y3 • 在分析仪中,可以观察到各场分量的时域响应
|>.</68Z • 仿真完成后,点击“Yes”,启动分析仪。
@g]EY&Uzl @X560_x[q 远场分析
衍射波
GS}JyU 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer”
KeXt"U 2. 选择“Definition of the Cross Cut”为z方向
a#& ( i 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场
D_)/.m 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4)
;y50t$0
图4.远场计算对话框
O}p<"3Ub )?c,& 5. 在远场对话框,设置以下参数:
^5(d^N Wavelength: 0.63
y~VI,82* Refractive index: 1.5+0i
)S/=5Uc Angle Initial: -90.0
bMNr +N Angle Final: 90.0
PL3hrI 5 Number of Steps: 721
D!.1R!(Z Distance: 100, 000*wavelength
9 %i\) Intensity
N^@:+,<3 cUdS{K&K 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。
RVLVY:h|F 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。
5Z5x\CcC3 图5.“Opti 2D Viewer”中的远场模式