OptiFDTD应用:光栅衍射的远场分布
光栅布局在大多数情况下是周期性结构。OptiFDTD中有两种实现周期性布局的方法:PBG编辑器和VB脚本。本课将重点介绍以下功能: P/PS(` •使用VB脚本生成光栅(或周期性)布局。 %<muVRkB\ •光栅布局模拟和后处理分析 Csc2 yI%3 布局layout Rt:PW}rFf 我们将模拟如图1所示的二维光栅布局。 d<3"$%C 图1.二维光栅布局 P*T)/A%4 anwn!Eqk" 用VB脚本定义一个2D光栅布局 0?h .X=G V7@xr
M 步骤: T+ t-0k 1 通过在文件菜单中选择“New”,启动一个新项目。 Elq8WtS 2 在“Wafer Properties”对话框中设置以下参数 T?ZMmUE Wafer Dimensions: 5Q}@Y3 i= Length (mm): 8.5 K/,lw~> Width (mm): 3.0 N_DgnZ7* &4[iC/} 2D wafer properties: dbXG?K][ Wafer refractive index: Air I^|bQ3sor 3 点击 Profiles 与 Materials. "}EbA3 U+i[r&{gb 在“Materials”中加入以下材料: UiEB?X]-l' Name: N=1.5 XHg%X Refractive index (Re:): 1.5 #"M Pe4 t;1NzI$^ Name: N=3.14 e.GzGX Refractive index (Re:): 3.14 Ja&%J: {L eEnh- 4.在“Profile”中定义以下轮廓: u~kwNN9t3 Name: ChannelPro_n=3.14 o|W? a#_\ 2D profile definition, Material: n=3.14 >?'FH +2K HW G~m:km Name: ChannelPro_n=1.5 I{PN6bn{> 2D profile definition, Material: n=1.5 RVsN r
rZ /fq6-;co+ 6.画出以下波导结构: ?:nZv<
x a. Linear waveguide 1 -CrZ'k;4 Label: linear1 g3XAs@ Start Horizontal offset: 0.0 7. .vaq# Start vertical offset: -0.75 7e<Q{aB End Horizontal offset: 8.5 D=>^m=?0 End vertical offset: -0.75 bH{aI:9Fb Channel Thickness Tapering: Use Default ;^*!<F%t9R Width: 1.5 zOOX>3^ Depth: 0.0 f tPw6 Profile: ChannelPro_n=1.5 lRr-S% Q ?t b. Linear waveguide 2 v1=X =H Label: linear2 o4;Nb|kk9+ Start Horizontal offset: 0.5 Mg$9'a"[\ Start vertical offset: 0.05 ,Tl5@RN End Horizontal offset: 1.0 GvOAs-$ End vertical offset: 0.05 eNFUjDm Channel Thickness Tapering: Use Default \ c&)8.r Width: 0.1 }j1Zk4}[x Depth: 0.0 ^gyp-
! Profile: ChannelPro_n=3.14 N0[I2'^. ^BX@0"&- 7.加入水平平面波: 0AKwZ'
&H Continuous Wave Wavelength: 0.63 General: o
z{j2% Input field Transverse: Rectangular m[j3s=Gr X Position: 0.5
A*~1Uz\t Direction: Negative Direction i)i)3K2 Label: InputPlane1 )X;cS}
yp 2D Transverse: <\g&%c, Center Position: 4.5 /AW>5r] Half width: 5.0 t`,IW{ Titlitng Angle: 45 -<!17jy Effective Refractive Index: Local Amplitude: 1.0 %UQB?dkf$ 图2.波导结构(未设置周期) gj,J3x4TK/ &;U7/?Q 8.单击“Layout Script”快捷工具栏或选择仿真菜单下的“Generate Layout Script…”。这一步将把布局对象转换为VB脚本代码。 A'1AU:d 将Linear2代码段修改如下: {7>CA'> Dim Linear2 O)uM&B= for m=1 to 8 vqOLSE"t*O Set Linear2 = WGMgr.CreateObj ( "WGLinear", "Linear2"+Cstr(m) ) oB
R(7U~0 Linear2.SetPosition 0.5+(m-1)*1.0, 0.05, 1+(m-1)*1.0, 0.05 bV*zMoD# Linear2.SetAttr "WidthExpr", "0.1" vGwD~R Linear2.SetAttr "Depth", "0" u^zitW!X$ Linear2.SetAttr "StartThickness", "0.000000" <]^;/2.B Linear2.SetAttr "EndThickness", "0.000000" dm=F:\C Linear2.SetProfileName "ChannelPro_n=3.14" @:9fS Linear2.SetDefaultThicknessTaperMode True rDX'oP: BemkCj2
点击“Test Script”快捷工具栏运行修改后的VB脚本代码。生成光栅布局,布局如图3所示。 .Pes{uHg 图3.光栅布局通过VB脚本生成 ;kW}'&Ug n
E}<e: 设置仿真参数 Ja v2A6a 1. 在Simulation菜单下选择“2D simulation parameters…”,将出现仿真参数对话框 *P R_Y=v% 2. 在仿真参数对话框中,设置以下参数: L?27q TE simulation MlK`sH6 Mesh Delta X: 0.015 G+ v, Hi1 Mesh Delta Z: 0.015 $>ZP%~O
Time Step Size: Auto Run for 1000 Time steps 9m!! b{ 设置边界条件设置X和Z边为各向异性PML边界条件。 Z/kaRnG[@t Number of Anisotropic PML layers: 15 1DLG]-j} 其它参数保持默认 .q`H`(QM 运行仿真 Jrd4a~XP • 在仿真参数中点击Run按钮,启动仿真 rk,1am:cg • 在分析仪中,可以观察到各场分量的时域响应 R:OU>HsdX • 仿真完成后,点击“Yes”,启动分析仪。 ^I<T+X+< O| J`~Lk 远场分析衍射波 Lp`<L -s 1. 在OptiFDTD Analyzer中,在工具窗口中选择“Crosscut Viewer” #C1A5JE& 2. 选择“Definition of the Cross Cut”为z方向 /;NE]{K 3. 将位置移动到等于92的网格点,(位置:-0.12)观察当前位置的近场 3zTE4pHzu+ 4. 在Crosscut Viewer的工具菜单中选择“Far Field”,出现远场转换对话框。(图4) Yuo1'gE+ 图4.远场计算对话框 2K rqY 4^[}]'w 5. 在远场对话框,设置以下参数: afF+*\xXN Wavelength: 0.63 vdT+,x` Refractive index: 1.5+0i (#B^Hyz! Angle Initial: -90.0 i<wU.JX&h Angle Final: 90.0
}d~wDg<# Number of Steps: 721 w"a 9'r Distance: 100, 000*wavelength [Ba2b: l6v Intensity 7<1fKrN?GF gJPDNZ*6pk 6. 点击“计算”按钮开始计算,并将结果保存为 Farfield.ffp。 f']sU/c= 7. 启动“Opti 2D Viewer”并加载Farfield.ffp。远场如图5所示。 yMbcFDlBr 图5.“Opti 2D Viewer”中的远场模式
|