WannierTools专题

WannierTools:薄膜波函数的分层权重

用8层开边界模型读取psi_abs.txt,说明选带、归一化和实际能量单位。

更新于 2026-11-14约 4 分钟阅读按任务与环境选择适用配置
阅读本篇目录

薄膜能带告诉我们能量随k怎样变化,分层波函数权重则告诉我们某条带主要分布在哪些层。这里使用8层简单立方单轨道模型,固定二维k点 (0.125,0.25),读取第1、4、8条带。

下载完整输入、原生输出和读取绘图脚本,保存为 example.zip:

python3 -m zipfile -e example.zip .
cd wanniertools-grids-slabstates
bash read.sh
bash plot.sh

默认读取真实计算结果,不重新提交任务。使用WannierTools 2.7.0 CPU模块 wanniertools/2.7.0-8173m,Intel MPI/oneAPI运行环境;读取和绘图使用NumPy、Matplotlib。模型为晶格常数3Å的简单立方格子,每个格点一个轨道,最近邻跃迁为−1eV,没有进行新的DFT计算,不对应一种真实材料的拟合参数。

三条实际波函数的分层权重,以及第4条带的层分布

本模块使用oneAPI 2023.2构建:ifort 2021.10.0、Intel MPI 2021.10、MKL 2023.2.0,配合ARPACK-NG 3.9.1;本例使用CPU MPI程序。

1. 完整输入与选带#

&TB_FILE
 Hrfile='model_hr.dat'
/
&CONTROL
 SlabBandWaveFunc_calc=T
/
&SYSTEM
 NumOccupied=1, SOC=0, E_FERMI=0, Nslab=8
/
&PARAMETERS
 Nk1=9,Nk2=9,Nk3=9
/
LATTICE
Angstrom
3 0 0
0 3 0
0 0 3
ATOM_POSITIONS
1
Direct
X 0 0 0
PROJECTORS
1
X s
SURFACE
1 0 0
0 1 0
KPLANE_BULK
0 0 0
1 0 0
0 1 0
KCUBE_BULK
0 0 0
1 0 0
0 1 0
0 0 1
SINGLEKPOINT_2D
Direct
0.125 0.25
SELECTEDBANDS
3
1 4 8

SlabBandWaveFunc_calc=T 打开该入口,Nslab=8 指定8层,SINGLEKPOINT_2D 是二维分数坐标。SELECTEDBANDS 第一行3表示选择3条带,下一行 1 4 8 是从1开始的带号;不是选择第3条带。

2. 从终端读文件#

cat reference-results/slab-wavefunction/psi_abs.txt
grep 'Eigenvalue for band' reference-results/slab-wavefunction/WT.out
bash read.sh
cat analysis-read/slab-layer-probabilities.csv

psi_abs.txt 第一列为层号,其后三列依次是所选第1、4、8条带的层概率,已经对该层轨道的模平方求和。每条带的8层权重相加约为1。

本例第4条带的8层权重为:

0.215521402  0.025995062  0.166666667  0.091816869
0.091816869  0.166666667  0.025995062  0.215521402

第1与第8条带在本对称模型里的模平方相同,因此图中曲线重合。这不代表波函数相同:概率文件不保留振幅的正负或复相位,不能仅凭相同层权重认定两个态相同。

3. 怎样解释和核对#

对于这个均匀开边界模型,第n条带第l层的概率为 2/9 × sin²(nπl/9)。实际文件与该关系的逐层差低于 2E-8,归一化误差低于 1E-8。

当前程序在WT.out里打印这几条本征能量时用的是Hartree,保留6位小数,不能把它们当作eV。第1、4、8条带分别打印−0.121038、−0.064734、0.017095 Hartree。本版本转换常数为 1 Hartree=27.211385 eV。这种打印精度不足以证明 1E-6 eV 级的能量差异,细小能量比较应使用有足够精度的输出;本例重点是分层概率。

4. 重新计算与用于材料模型#

python3 prepare.py
cd work-new
sbatch ../submit.sh
# 等待作业完成
cd ..
bash read.sh work-new
bash plot.sh

模板实际1个MPI进程、OMP线程1,申请56核整节点,顺序执行资料包内三个小例。

换材料时,先确认表面取向与薄膜层数,再选择想观察的k点和带号。表面态往往集中在边界若干层,但本例是均匀模型的驻波,不能把边界层权重较大直接称为拓扑表面态。判断材料表面态还需结合体带、能隙、层数依赖与表面谱。

分层权重CSV可直接用于重新绘图。

需要根据你的体系选择资源?联系讨论计算需求。实际可用软件与权限,以当前账户和运行环境为准。

查看配图

放大后可滚动查看细节,按 Esc 关闭。

100%查看原图 ↗