用户工具

站点工具


atk:inas_p-i-n_结

差别

这里会显示出您选择的修订版和当前版本之间的差别。

到此差别页面的链接

两侧同时换到之前的修订记录前一修订版
后一修订版
前一修订版
atk:inas_p-i-n_结 [2017/03/20 16:56] – [分析结果] dong.dongatk:inas_p-i-n_结 [2018/03/20 22:06] (当前版本) liu.jun
行 46: 行 46:
 ==== 设置并运行计算 ==== ==== 设置并运行计算 ====
  
-我们用自洽的Vogl模型计算此体系的DOS,为此我们需要使用自定义的参数设置,这是因为VNL默认数据中不包含InAs和H的数据。+我们用自洽的Vogl模型计算此体系的DOS,为此我们需要使用自定义的参数设置,这是因为老版本中 VNL 默认数据中不包含 InAs 和 H 的数据。
  
 为此: 为此:
行 67: 行 67:
 === 自定义计算方法参数 === === 自定义计算方法参数 ===
  
-将脚本用Editor打开。ATK中缺少定义 H-端基的 InAs 紧束缚基组,下面脚本中提供了这个基组。在 ''InAs_5nm.py'' 中,将 Calculator一段用以下替代:+<WRAP center tip 100%> 
 +新版用户也可以在 Slater-Koster 基组中选择 Bassani.InAsH sp3d5s* 基组,并设置端基氢的电荷,将以下段落置于 Caculator 之前,不必再设置自定义基组。 
 + 
 +<code python> 
 +# Add external potential 
 +external_potential = AtomicCompensationCharge([ 
 +    ('H_As', -0.25), 
 +    ('H_In', 0.25) 
 +    ]) 
 + 
 +bulk_configuration.setExternalPotential(external_potential) 
 +</code> 
 + 
 +</WRAP> 
 + 
 +将脚本用Editor打开。QuantumATK中缺少定义 H-端基的 InAs 紧束缚基组,下面脚本中提供了这个基组。在 ''InAs_5nm.py'' 中,将 Calculator一段用以下替代:
  
 <code python> <code python>
行 180: 行 195:
 print bandstructure._directBandGap().inUnitsOf(eV) print bandstructure._directBandGap().inUnitsOf(eV)
 </file> </file>
-==== 电子亲和性 ====+==== 电子亲和能 ==== 
 + 
 +由于二维 InAs 体系的带隙大于 0 K 下块体 InAs的带隙(0.415 eV),可以想见此此体系的电子亲和能也与干净的(110)表面(4.55 eV)不同。 
 + 
 +在这一节中,我们这样计算未掺杂的半导体的电子亲和能($E_{aff}$),即导带底($CBM$)与真空能级($E_{vac}$)的能量差。 
 +使用之前的Bassani基组时,这两个能量无法直接关联起来,因此,我们可以使用DFT方法(如MGGA泛函)来计算。 
 + 
 +=== InAs 块体 === 
 + 
 +首先,我们将MGGA计算的带隙拟合到我们本教程采用Slater-Koster得到的带隙。详细方法参见【MetaGGA 与二维受限 InAs】。 
 + 
 +用 S-K 方法和Bassani基组计算得到的 InAs 块体带隙为 0.54 eV,MGGA TB09需要的拟合参数 c 值则为0.98614。在接下来本教程的MGGA计算中将一直采用这个数值: 
 + 
 +<code python> 
 +#---------------------------------------- 
 +# Exchange-Correlation 
 +#---------------------------------------- 
 +exchange_correlation = MGGA.TB09LDA(c=0.98614) 
 +</code> 
 + 
 +注意:增加自旋-轨道耦合可以进一步改善带隙计算的精度,然而,要小心计算量将大大增加。此处仅计算非极化的自旋态。 
 + 
 +=== InAs 片层 === 
 + 
 +下一步是用MGGA计算片层(slab)模型的电子能带结构以及真空能级。计算将使用之前已经计算过的二维片层,此结构后面将用于电极构建。 
 + 
 +将 ''InAs_5nm.nc'' 文件中的 bulk configuration 发送到 **Scripter**, 这样之前对氢原子进行的掺杂等信息都将得到保留。 
 +  * 将 Calculator 设为 ATK-DFT,选择 MGGA 交换关联泛函,使用 1x11x201 k点,以与电极设置匹配; 
 +  * 在 Poisson Solver 设置中选择 multigrid solver,在 A 方向选择 Dirichlet 边界条件; 
 +  * 添加 Analysis -> Bandstructure,points per segment 设为 201,bands above Fermi level 设为 50; 
 +  * 添加 Analysis -> HartreeDifferencePotential; 
 +  * 添加 Analysis -> ChemicalPotential; 
 +  * 保存脚本,并运行计算。 
 + 
 +由于 A 方向设置了 Dirichlet 边界条件,因此真空处真空能级为零。我们可以使用 1D Projector来将 A 方向的 HartreeDifferencePotential 的平均值作图,并分析片层外部的电势衰减。 
 + 
 +{{ :atk:electrostaticdifferencepotential_2dslab_mgga.png?400 |}} 
 + 
 +从能带结构图中,我们可以获得能带边缘相对于费米能级($E_F$)的数值。$CBM=0.325eV$,$VBM_0=-0.372eV$,因此带隙约为 0.697eV。 
 + 
 +{{ :atk:bs_slab_mgga.png?400 |}} 
 + 
 +最后,从费米能级的值(相对于Hartree Difference Potential中的零点)和能带边缘的位置可以计算电子亲和能。费米能级的数值可以直接从 Chemical Potential 中读取: 
 +$$ 
 +E_F=-5.41eV, CBM=E_F + CBM_0 = -5.41 + 0.325 = -5.085eV 
 +$$ 
 + 
 +这个二维片层模型的电子亲和能为 5.09 eV,比 InAs(110) 方向的电子亲和能高出 0.5 eV。 
 + 
 + 
  
  
行 186: 行 251:
  
 ==== 建立FET器件结构模型 ==== ==== 建立FET器件结构模型 ====
 +
 +器件模型建立自 5nm 厚的片层模型。打开 **Builder**,导入 ''InAs_5nm.py'' 结构。
 +
 +注意:如果有原子位于单胞外面,将导致电极模型错误。因此我们需要移动结构,使得所有原子都位于晶胞内部。
 +
 +为此,使用 ''Coordinate Tools'' -> ''Translate'',选中 fractional coordinates,使用 0,0,-0.15 矢量平移。这将使下一步 wrap 原子时所有氢原子都移到单胞中间。
 +
 +打开 ''Bulk Tools'' -> ''Wrap'',点击 **Apply**。所有原子都进入晶胞。
 +
 +最后,打开 ''Bulk Tools'' -> ''Center'',点击 **Apply**,将结构置于单胞中央。
 +
 +结构如下:
 +{{ :atk:inas-electrode.png?400 |}}
 +
 +我们要创建一个 60 nm 长的器件,因此这个结构要在 C 方向重复 100 次。打开 ''Bulk Tools'' -> ''Repeat'',设置 A=1,B=1,C=100,点击 **Apply**。
 +
 +=== 定义栅极 ===
 +
 +接下来我们在两侧设置 1 nm 厚的介电绝缘层,并在中间设置双栅极。
 +
 +打开 ''Miscellaneous'' -> ''Spatial Region...'':
 +  * 右单击弹出窗口的空白区域,选择 insert new spatial region;
 +  * 将其改为 dielectric,并设置介电常数为3.9。定义分数坐标 a:0.0375-0.165;b:0-1;c:0-1。
 +  * 再添加一个介电区域,介电常数为3.9.分数坐标为 a:0.8375-0.9625;b:0-1;c:0-1。
 +  * 再添加一个金属区域,电势为 0.0 Volt。分数坐标为 a:0-0.0375;b:0-1;c:0.33-0.66。
 +  * 再添加一个金属区域,电势为 0.0 Volt。分数坐标为 a:0。9625-1;b:0-1;c:0.33-0.66。
 +
 +{{ :atk:inas-spatialregions.png?400 |}}
 +
 +最后,将结构转变成器件模型:打开 ''Device Tools'' -> ''Device from Bulk...'',使用默认设置即可。
 +
 +接下来是在电极区域也添加绝缘的介电层,这个操作目前无法在图形界面上实现,因此需要使用 Editor 修改脚本。
 +
 +首先,将以下脚本放入左电极定义之后:
 +
 +<code python>
 +# Add dielectric region
 +
 +dielectric_region_0 = BoxRegion(
 +    3.9,
 +    xmin = 3.0*Ang, xmax = 13.0*Ang,
 +    ymin = 0.0*Ang, ymax = 4.28387*Ang,
 +    zmin = 0.0*Ang, zmax = 6.0583*Ang,
 +)
 +
 +dielectric_region_1 = BoxRegion(
 +    3.9,
 +    xmin = 67.0*Ang, xmax = 77.0*Ang,
 +    ymin = 0.0*Ang, ymax = 4.28387*Ang,
 +    zmin = 0.0*Ang, zmax = 6.0583*Ang,
 +)
 +
 +dielectric_regions = [dielectric_region_0, dielectric_region_1]
 +left_electrode.setDielectricRegions(dielectric_regions)
 +</code>
 +
 +再在右电极定义之后加入下面脚本:
 +
 +<code python>
 +# Add dielectric region
 +right_electrode.setDielectricRegions(dielectric_regions)
 +</code>
 +
 +将脚本发回到Builder,现在结构看上去如下图。
 +
 +{{ :atk:inas_pin_viewer.png?600 |}}
 +
 +=== 定义掺杂 ===
 +
 +在新版的 VNL 中,掺杂变得十分容易,可以直接在图形界面上实现。
 +
 +为此,我们先选定左侧三分之一区域的原子(与左电极)设置掺杂为 p 型,浓度 $10^{19}$;右侧设置为 n 型,浓度 $10^{19}$。
 +
 +  * 使用表达式选择工具比直接用鼠标拖选要方便得多。打开 ''Selection Tools'' -> ''By Expression'',输入“c<0.33”,按回车键(注意观察选定原子的情况);
 +  * 打开 ''Miscellaneous''->''Doping'',添加一个新的掺杂区域,并设为p型,浓度为默认$10^{19}$;
 +  * 打开 ''Selection Tools'' -> ''By Expression'',输入“c>0.66”,按回车键(注意观察选定原子的情况);(设置 underlap 结构时,输入“c>0.833”)
 +  * 打开 ''Miscellaneous''->''Doping'',添加一个新的掺杂区域,并设为n型,浓度为默认$10^{19}$。
 +
 +
 +接下来,将结构发送到 **Script Generator** 来设置计算。
 +
  
 ==== 零栅压计算 ==== ==== 零栅压计算 ====
atk/inas_p-i-n_结.1490000170.txt.gz · 最后更改: 2017/03/20 16:56 由 dong.dong

© 2014-2022 费米科技(京ICP备14023855号