BoltzTraP2 普通Hall与多带解释
按真实张量顺序提取Hall响应,对照净载流子数、Hall载流子数和单载流子近似。
阅读本篇目录
BoltzTraP2从能带速度和曲率计算普通弱场半经典Hall响应。这里没有在VASP中施加显式磁场,也不是Berry曲率异常Hall、自旋Hall或任意磁场磁阻。
下载完整BoltzTraP2实例包。包内有已有集群Si与石墨烯DFT数据、明确标注来源的上游格式例子、32个操作条件、原始输出、独立提取与绘图脚本,不含POTCAR。
1. 完成掺杂流程#
bash interpolate.sh
bash dope.sh
head work/si-dope-m5/bands.dope.halltens
完整结果也可直接由 bash run-all.sh得到。
2. 张量文件按Fortran顺序展开#
.halltens前三列为费米能、温度和净载流子数,后面27列是3×3×3张量。恢复时必须用 Fortran列主序:
python - <<'PYCODE'
import numpy as np
t = np.loadtxt('work/si-dope-m5/bands.dope.halltens')
h = t[0, 3:].reshape(3, 3, 3, order='F')
rh = (h[0,1,2] + h[1,2,0] + h[2,0,1]) / 3
print('RH =', rh, 'm^3/C')
PYCODE
默认行主序会颠倒部分反对称分量的含义,甚至使符号看起来相反。.condtens的各个9分量张量同样按Fortran顺序展开。配套提取脚本已按这一约定读取。
3. 单载流子解释的量#
nH[cm⁻³] = 1 / (e |RH|) / 10⁶
rH = |RH| e |n_net[m⁻³]|
nH用绝对值报告大小,符号另由RH说明。多谷、多带或高温双极输运中,nH不必等于净载流子数。
| 实际净载流子数 / cm⁻³ | RH / m³·C⁻¹ | nH / cm⁻³ | rH |
|---|---|---|---|
| -1.000e+20 | -5.20634e-08 | 1.1988e+20 | 0.8342 |
| -9.987e+18 | -6.23190e-07 | 1.0015e+19 | 0.9971 |
| -9.993e+17 | -6.54522e-06 | 9.5360e+17 | 1.0480 |
| -1.001e+17 | -6.56983e-05 | 9.5003e+16 | 1.0540 |
| +9.998e+16 | +6.81782e-05 | 9.1547e+16 | 1.0921 |
| +1.002e+18 | +6.78112e-06 | 9.2042e+17 | 1.0883 |
| +1.002e+19 | +6.60210e-07 | 9.4538e+18 | 1.0597 |
| +9.995e+19 | +7.19479e-08 | 8.6750e+19 | 1.1521 |

4. 用脚本提取整套结果#
先在新目录完成 bash run-all.sh,已有整套结果后执行:
bash analyze.sh work
head analysis/doping-summary.csv
表中的Hall标量是RH_xyz、RH_yzx、RH_zxy的平均。各向异性材料应读取目标方向的张量分量,不能把这个平均值当成任意几何的测量值。
5. 常τ为什么能消去#
全局常数寿命在这一Hall张量比值中消去,不代表真实散射不重要。能量、能带或方向依赖的寿命会改变权重;常平均自由程结果也不能被简单称为相同的常τ结果。
本例使用有限网格与PBE能带。请先检查插值、分箱和目标浓度,再对Hall因子作材料解释。
需要根据你的体系选择资源?联系讨论计算需求。实际可用软件与权限,以当前账户和运行环境为准。