用户工具

站点工具

本页面的其他翻译:
  • zh

atk:硅p-n结中的非弹性电流

这是本文档旧的修订版!


硅p-n结中的非弹性电流

版本:2017.2

由电子-声子相互作用产生的非弹性散射效应在确定通过器件的载流子传输中起到了基本作用。在本教程中,你将研究在反向偏压情况下,这种效应对通过硅 $p$-$n$ 结中电流的影响。在这个系统中,载流子的传输主要是由 $p$ 区价带和 $n$ 区导带之间的带间隧穿控制。非弹性散射效应可大大增强该过程。

具体来说,您将使用 ATK 中可应用的 InelasticTransmissionSpectrum 模块来计算在电子-声子相互作用的情况下器件的透射光谱。您还将使用 QuantumATK 中的 Inelastic Transmission Spectrum Analyzer 插件对电流进行详细分析,并确定哪种声子模是造成电流增强的主要原因。

QuantumATK 中采用的方法基于 Lowest Order Expansion (LOE) [FPBJ07] 法和 eXtended LOE (XLOE) [LCF + 14] 法。在本教程中,您将使用 XLOE 法,该方法处理 $\mathbf{k} \to \mathbf{k}\pm\mathbf{q}$ 过渡中初始态和最终态间的有限能量差时会由于电子-声子的耦合而更精确。然而也可以使用更简单的 LOE 法执行本教程,将会获得定性相似的结果。您可以在 ATK 手册 InelasticTransmissionSpectrum 模块的“注释”部分中找到有关这两种方法的更多详细理论信息。

构建一个硅p-n结

为构建器件,您可以按照 Silicon p-n junction 教程中“构建器件”部分的说明进行操作。但在本教程中,您将创建一个较短的器件以加快计算速度。在 Builder,按照以下变动创建器件:

  • 利用 Surface (Cleave) 插件创建一个 <100> 向结构时,将 thickness 从 52 层更改为 24 层;
  • 使用 Device from Bulk plugin 插件时,设置 electrode length 为 5.4306 Å;
  • 点击 Miscellaneous Doping 的 Doping 插件设置 $p$ 区和 $n$ 区的掺杂。在本例中,选中器件的一半设置为 $p$ 掺杂区,按下 ctrl + i 反向选中剩余的一半器件设置为 $n$ 掺杂区,掺杂浓度为 $2 \cdot 10^{19} \mathrm{e/cm^{3}}$。

您可以在此处下载生成的器件构型:↓ Si_pn_junction.py

无电子-声子相互作用的透射计算

在本节,您将计算分析 $p$-$n$ 结在反向偏压 $V_\mathrm{bias} = -0.4\ \mathrm{V}$ 下的电子结构,以及使用 ATKTransmissionSpectrum 模块里常规 Landauer 公式获得的没有电子-声子相互作用的相关传输光谱。

设置计算

点击 按钮,将结构从 Builder 发送到 Script generator。按照以下添加模块并设置参数:

  • Calculators SemiEmpiricalCalculator
    • Main
      • 设置 Left electrode voltage 为 $-0.2\ \mathrm{V}$
      • 设置 Right electrode voltage 为 $0.2\ \mathrm{V}$
    • Hamiltonian
      • 不勾选 “No SCF iteration” 选项
    • Numerical Accuracy,设置 k-point Sampling 为:
      • $\mathrm{k_A} = 7$
      • $\mathrm{k_B} = 7$
      • $\mathrm{k_C} = 101$
    • Iteration control parameters 设置 Tolerance“4e-05”
  • Analysis ProjectedLocalDensityOfStates
    • 设置 k-point Sampling 为:
      • $\mathrm{k_A} = 21$
      • $\mathrm{k_B} = 21$
  • Analysis TransmissionSpectrum
    • 设置 k-point Sampling 为:
      • $\mathrm{k_A} = 21$
      • $\mathrm{k_B} = 21$

最后,在 Global IO 选项,更改 Default output file 名称为 transmission_V-0.4.hdf5

利用 按钮将脚本发送到 Job manager,保存为 transmission_V-0.4.py,然后按下 运行计算。使用 4 个 CPU 只需要不到 2 分钟就能完成。您可以在此处下载完整的脚本:↓ transmission_V-0.4.py

结果分析

LabFloor,从文件 transmission_V-0.4.hdf5 中选择 ProjectedLocalDensityOfStates 数据块,点击 Projected Local Density of States 插件。在插件窗口,从左上角的下拉菜单选择 Spectral Current,设置 Data range 的最大值为 0.1。在屏幕左侧的面板中,使用 Zoom 按钮确保电流的最小值约为 $10^{-24} \mathrm{A/eV}$。低于此值的特性可能与数字噪声相关。

从上图的左侧面板可以看出,谱电流的最大值出现在偏压窗口内($-0.2\ \mathrm{eV} \leq \mathrm{Energy} \leq 0.2\ \mathrm{eV}$)。此外,从右侧面板显示的器件态密度可以看出,在偏压窗口内,器件的中心区域(20\ \mathrm{Å} \leq \mathrm{z} \leq 45\ \mathrm{Å})没有电子态。因此,左右电极之间的隧穿是唯一可能的传输机制。这表明反向偏压下器件的电子输运受隧穿控制。

为分析在 $\mathbf{k}$ 空间隧穿的可能性。选择同一文件中 Transmission Spectrum 数据块,点击 Transmission Analyzer 插件。在插件窗口,设置 Data range 的最大值为 0.1。

从上图可以看出,费米能级处布里渊区的 $\Gamma$ 点是隧穿的隧道概率的最高峰值。

电子-声子作用下的透射计算

在本节,您将采用 XLOE 近似 [LCF+14] 计算硅 $p$-$n$ 结在反向偏压 $V_\mathrm{bias} = -0.4\ \mathrm{V}$ 和电子-声子相互作用下的透射谱。

为计算 InelasticTransmissionSpectrum,您首先需要计算系统的 DynamicalMatrixHamiltonianDerivatives

设置动力矩阵计算

LabFloor,将文件 transmission_V-0.4.hdf5 中的 DeviceConfiguration 数据块拖拽到 Script generator。删除 DeviceSemiEmpiricalCalculator 并替换为 ForceFieldCalculator

  • Parameter set 菜单的可选经典势中选择“StillingerWeber_Si_1985”

按照以下添加模块并设置其参数:

  • Study Objects DynamicalMatrix
    • 设置 Repetitions“Custom”
    • 设置 number of repetitions 为:
      • $\mathrm{n_A} = 3$
      • $\mathrm{n_B} = 3$
      • $\mathrm{n_C} = 1$
    • 取消勾选 “Acooustic sum rule” 选项
    • 勾选 “Constrain electrodes” 选项
    • 取消勾选 “Equivalent bulk” 选项
  • Analysis VibrationalMode

最后,在 Global IO 选项处,将 Default output file 的名称更改为 dynmat.hdf5

点击 按钮将脚本发送到 Job manager,保存为 dynmat.py。按下 按钮运行计算。您也可以在此处下载完整的脚本:↓ dynmat.py

注意

或者,您也可以采用 special thermal displacement - Landauer method (STD-Landauer)将电声耦合效应包含在传输计算内,计算成本会降低很多。The STD-Landauer case study 中探讨的系统与本教程讨论的相似。

设置哈密顿量导数计算

LabFloor,将文件 transmission_V-0.4.hdf5 中的 DeviceConfiguration 数据块拖拽到 Script generator,按照以下修改 New Calculator 模块:

  • Hamiltonian,勾选 “No SCF iteration” 选项

添加一个 Study Objects HamiltonianDerivatives 模块,参照以下设置参数:

  • 设置 Repetitions“Custom”
  • 设置 number of repetitions
    • $\mathrm{n_A} = 3$
    • $\mathrm{n_B} = 3$
    • $\mathrm{n_C} = 1$
  • Constraints,点击 Add,利用 Fixed 约束电极重读,因此受到约束的原子应该是:0,1,2,3,44,45,46,47
  • 取消勾选 “Equivalent Bulk” 选项。

Global IO 的选项里,更改 Default output file 的名称为 dHdR_V-0.4.hdf5

点击 按钮将脚本发送到 Job manager,保存为 dHdR_V-0.4.py,按下 按钮运行计算。本次计算使用 8 个 CPU 将耗时 20 分钟。您可以在此处下载完整的脚本:↓ dHdR_V-0.4.py

注意

在此,为加快计算速度,对哈密顿量导数做了非自洽计算。

计算非弹性透射谱

为计算电流的非弹性部分,点击 Script generator,添加以下模块:

  • Analysis from File
  • Analysis InelasticTransmissionSpectrum

打开 Analysis from File 模块,选择 transmission_V-0.4.hdf5 文件,加载文件中包含的 DeviceConfiguration 数据块。

您将会注意到还添加了两个其他的模块:

  • DynamicalMatrix
  • HamiltonianDerivaties

在我们的示例中,动力学矩阵和哈密顿量导数已经在之前计算出来了,可以重复使用。删除这两个模块,再添加两个 Analysis from File 模块,按照下图排列:

点击从上数第二个 Analysis from File 模块。选择 dynmat.hdf5 文件,加载 DynamicalMatrix 数据块。取消勾选这个文件中包含的 DeviceConfiguration 数据块。该面板应如下图所示:

然后,点击从上数第三个 Analysis from File 模块。选择 dHdR_V-0.4.hdf5 文件,加载 HamiltonianDerivatives 数据块。该面板应如下图所示:

最后,为 Analysis InelasticTransmissionSpectrum 模块设置如下参数:

  • Energy 部分,设置:
    • $\mathrm{E_0} = -0.5\ \mathrm{eV}$
    • $\mathrm{E_1} = 0.5\ \mathrm{eV}$
    • Points = 25
  • k-point Sampling 部分:
    • 设置 Grid type“Regular k-point grid”
    • 设置 $\mathrm{k_A}$ 和 $\mathrm{k_B}$ 的网格范围为 $[-0.2 : 0.2]$
    • 设置 Sampling 为:
      • $\mathrm{k_A} = 3$
      • $\mathrm{k_B} = 3$
  • q-point Sampling 部分:
    • 设置 Grid type“Regular q-point grid”
    • 设置 $\mathrm{q_A}$ 和 $\mathrm{q_B}$ 的网格范围为 $[-0.5 : 0.5]$
    • 设置 Sampling 为:
      • $\mathrm{q_A} = 9$
      • $\mathrm{q_B} = 9$

Global IO 选项里,更改 Default output file 的名称为 xloe_V-0.4.hdf5

点击 按钮将脚本发送到 Job manager,保存为 xloe_V-0.4.py,按下 按钮运行计算。本次计算使用 24 个 CPU 将耗时一个半小时。您可以在此处下载完整的脚本:↓ xloe_V-0.4.py

分析非弹性透射谱

分别在有和无电子-声子作用下电流的计算

加速计算

“声子能量间隔”法

使用块体动力学矩阵和哈密顿量导数

参考

atk/硅p-n结中的非弹性电流.1582703224.txt.gz · 最后更改: 2020/02/26 15:47 由 xie.congwei

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