VASP 原子电荷与COHP成键分析
用NaCl的Bader电荷与硅的LOBSTER结果理解电子转移和成键指标。
阅读本篇目录
“电子转移了多少”和“这条键是成键还是反键”是不同问题。本页先用Bader划分空间密度,再用LOBSTER分析能量分辨的轨道成键贡献。
1. Bader电荷流程#
- 在所需结构上做收敛静态计算,输出CHGCAR,并设置
LAECHG=.TRUE.获得AECCAR0与AECCAR2。 - 保持三份密度来自同一个结构、同一个FFT网格。将AECCAR0与AECCAR2相加作为划分盆的全电子参考。
- 在这个参考划分下积分CHGCAR的价电子密度,读取ACF.dat。
- 根据POTCAR的ZVAL,把价电子人口换成净电荷:q=ZVAL−Nvalence;再检查总电子数与总电荷守恒。
chgsum.pl AECCAR0 AECCAR2
bader CHGCAR -ref CHGCAR_sum
使用已安装的VTST脚本和Bader模块提供上述命令。不要把AECCAR总电子人口拿来减ZVAL,两种电子计数不能混用。
2. NaCl实算#
本例NaCl原胞2原子,a=5.70 Å的面心立方原胞,电荷网格120³。Cl、Na的ZVAL分别为7、1。
| 元素 | Bader价电子人口 | 净电荷 / e |
|---|---|---|
| Cl | 7.834655 | −0.834655 |
| Na | 0.165345 | +0.834655 |
| 合计 | 8.000000 | 0.000000 |
独立使用critic2在相同全电子参考盆内积分价电子,得到Cl约7.834550、Na约0.165450,差别约0.0001个电子。Bader电荷是密度划分结果,不要求恰好等于形式氧化态±1;不同分区定义如Hirshfeld也不应混成同一指标。

3. LOBSTER与COHP流程#
- 准备静态VASP计算,设置足够NBANDS并写出WAVECAR。选用与元素和POTCAR匹配的LOBSTER基组。
- 在lobsterin中定义基组、能量范围与感兴趣的原子对。
- 完成VASP后,在同一计算目录运行
lobster。 - 先看lobsterout的投影质量,再读COHPCAR.lobster和ICOHPLIST.lobster。
- 画能量分辨COHP,或者积分到相同能量上限比较同类键;说明画的是COHP还是−COHP。
本例硅2原子原胞、7³ k网格、NBANDS=8、ISYM=−1,使用LOBSTER 6.0.0;绝对电荷spilling约1.42%。四条等价Si–Si键长2.36811 Å,ICOHP分别为−4.50545、−4.50562、−4.50562、−4.50580 eV,积分到费米能。图中为了让成键方向朝上,画的是−ICOHP。
4. 怎样避免误读#
spilling较小有助于判断投影质量,但不能自动保证任意轨道分解都可靠。ICOHP依赖基组、能量窗口与计算设置;它不是直接可替代解离能的“键能”。Bader、ELF、差分电荷与COHP可以互相补充,但分别回答不同问题。
差分电荷ρAB−ρA−ρB还要求片段在完全相同晶胞、原子几何和FFT网格下计算,不能把独立优化后的密度直接相减。
计算环境与资料下载#
本页数据来自鸢算科技集群实际计算。VASP 6.6.1 GPU版采用 NVHPC 25.3、CUDA 12.8、HPC-X 2.22.1 与 MKL 2023.2;PBE、PAW PBE 版本64、ENCUT=550 eV、EDIFF=1E-6。需要优化的自由原子采用0.02 eV/Å;静态位移点、外加应变点和动力学轨迹不按结构优化阈值判断。
下载输入、分析脚本和实算数据(ZIP) · 下载结果表(CSV)
解压后先读 README,选择本文对应目录,按POSCAR元素顺序准备本人有权使用的POTCAR,再运行 sbatch run.sh。POTCAR、WAVECAR及电荷密度大文件不随资料包分发。各目录的原始输入和实际结果表用于复现;更换体系后应重新提取自己的结果。