VASP超胞能带展开
用纯Si超胞作检查,再看固定几何Si₃Ge模型的谱权重,理解能带折叠与展开。
阅读本篇目录
原胞扩大为超胞后,布里渊区缩小,能带会折叠。掺杂、缺陷和合金的超胞能带因此往往线条很多,难以直接与原胞比较。展开的作用,是给超胞态赋予相对于选定原胞k点的谱权重。
1. 先用纯晶体检查流程#
本例从Si两原子原胞生成2×1×1超胞,共4个Si。再把其中一个Si替换为Ge,得到Si₃Ge模型;保持Si宿主晶格与分数坐标,未进行合金结构优化。因此它是一个小周期、有序、固定几何的演示模型,不是随机SiGe合金的统计平均。
超胞变换矩阵为:
2 0 0
0 1 0
0 0 1
原胞路径选Γ=(0,0,0)到X=(0.5,0,0.5),坐标按原胞倒格矢表示。这里划分20个间隔,包含端点共21个k点;只检查这一条方向,不把它说成完整布里渊区的能带调查。
2. 先自洽,再计算映射后的k点#
纯Si₄与Si₃Ge各做一组4×7×7 Gamma网格自洽,PBE PAW64、550 eV、EDIFF=1E-6、32条带。完成后把各自CHGCAR复制到对应bands目录,再提交非自洽能带:
ICHARG = 11
ISTART = 0
LWAVE = .TRUE.
LCHARG = .FALSE.
ISYM = 0
在每个目录准备合法、与元素分组顺序一致的POTCAR,执行sbatch run.sh。附件还包含Si两原胞的直接能带参照;该参照的密度来自原有11³网格自洽计算,不能用Si₄的CHGCAR替代。
三个自洽目录全部完成后,可在附件根目录运行python prepare_bands.py复制对应电荷密度,再分别进入三个bands目录提交任务。
映射使用K_super=k_primitive·Sᵀ,并按超胞倒格周期折回。脚本和附件已给出所需k点;超胞态不能仅靠把横轴标签改成原胞标签就完成展开。
3. 从波函数得到谱权重#
所有计算完成后,在附件根目录:
module load pymatgen/2026.9.24
python extract_unfolding.py
脚本读取自己的WAVECAR平面波系数,按原胞平移对应的倒格扇区求系数模平方之和,再除以该态的系数总范数。对本例二倍超胞,两个互补扇区的权重和应为1;每个权重在0到1之间。
该脚本针对本例2×1×1、非磁性std波函数及给定路径,不是任意超胞/SOC/非共线体系的通用展开程序。权重来自赝波函数,没有额外加入PAW全电子增广修正。平面波展开方法、pymatgen Wavecar接口
4. 看实际结果与检查项#

左图为Si₄展开权重,并叠加原胞直接能带;右图为同宿主几何的Si₃Ge。能量分别以各模型自己的价带顶为0,不能据此读取两种材料的绝对带阶。绘图只显示权重大于0.02的点以便阅读,JSON保留全部权重。
纯Si中,检查价带顶下6 eV到上4 eV范围内、权重大于0.2的态,其能量到对应原胞能带的最大最近距离约1.30 meV。两扇区权重和的最大误差小于10⁻¹²。这些是对本例映射和数据读取的检查,不是合金收敛性结论。
简并态可以在数值求解中混合,因此纯晶体中个别态也可能分摊权重,应结合简并子空间整体看。Ge替换打破原胞平移对称性后,权重可分布到更多折叠态;这些权重不是电子占据数,也不是已经算出的光谱寿命或实验ARPES强度。
5. 用于缺陷或合金时#
先选择有物理意义的参考原胞,再记录准确的超胞矩阵、结构坐标变换和k点映射。研究真实合金通常还需更大超胞、结构优化、多个构型和收敛检查;单个4原子模型不能替代这些步骤。破坏对称性的体系还需注意参考路径等价方向不再完全等价。
本例在鸢算科技集群通过Slurm计算,使用vasp/6.6.1-p100,NVHPC25.3、CUDA12.8及配套MPI。公开包提供输入、映射、谱权重参考和提取脚本;WAVECAR须由自己的计算产生,不随附件分发。