VASP 专题

VASP与外部DFT-D4色散修正

用双层石墨烯固定结构实算,演示PBE能量与独立D4修正的组合。

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

如果手中的VASP可执行文件没有链接外部D4库,仍可以对固定结构单独计算D4色散能,再与同一几何的基础DFT能量组合。本例展示这个能量后处理流程,不把它称为已经接入VASP结构优化器。

1. 先计算不含色散项的PBE能量#

沿用层间距离扫描的4C双层石墨烯:层间距3.0、3.4、3.8、4.4 Å,横向晶胞和堆垛不变,z方向20 Å。VASP 6.6.1 P100,PBE PAW64,11×11×1 k网格、ENCUT=550 eV、EDIFF=1E-6、NSW=0、IVDW=0。

VASP构建使用NVHPC 25.3、CUDA 12.8、MKL 2023.2及配套MPI。这里全部是固定结构单点能,不需要把瞬时力压到结构优化阈值。

2. 对同一POSCAR运行D4#

本例调用集群CP2K工具链内的独立DFT-D4 4.2.0程序,CPU执行,链接OpenBLAS 0.3.33。它是独立色散程序;不会因为Slurm资源位于GPU节点就自动使用GPU加速。

在每个模型目录提交附件的run_d4.sh。实际调用的核心选项是:

dftd4 POSCAR --func pbe --json

附件脚本已写好集群程序位置,客户只需sbatch run_d4.sh。POSCAR保留周期晶胞,D4会按周期格式处理;不要为了方便转换成不含晶胞的普通XYZ,否则周期模型就变了。DFT-D4官方说明

本次使用默认EEQ电荷模型、PBE的阻尼参数与ATM三体项(s9=1)。它不是从VASP读取Bader电荷,也不是另一个名为libMBD的多体色散实现。

3. 统一单位并相加#

ED4(eV) = ED4(Hartree) × 27.211386245988
EPBE+D4 = EPBE + ED4

DFT-D4的JSON能量单位为Hartree,本例通过文本输出中的Eh标识一并核对。只有同一结构、同一基础泛函、相同周期边界的能量才可以这样组合。若VASP已加入D3、D4或其他色散项,不能再直接加一次本修正。

4. 本次结果#

层间距 / Å D4修正 / eV每4C晶胞 PBE相对能 / meV C⁻¹ PBE+D4相对能 / meV C⁻¹
3.0 -0.603897 34.4826 1.8140
3.4 -0.554260 8.3217 -11.9376
3.8 -0.513784 1.5728 -8.5676
4.4 -0.473222 0.0000 0.0000

vasp-external-d4 实算结果

两条曲线各减去自己的4.4 Å参照,再除以4个C原子。本模型四个采样点中,PBE+D4在3.4 Å点能量最低;这只是离散扫描结果,不能把3.4 Å直接当作已经精确优化的平衡距离。

D4修正的绝对值包含层内和层间等周期贡献。4.4 Å也并非无限分离,所以相对能不能称为严格层间结合能;求结合能还需要一致的分离层参照。

5. 怎样用于结构优化#

固定几何后处理只给出本次选定结构的能量。若要用PBE+D4优化结构或晶胞,需要在每个优化步一致地提供D4力与应力,或使用已正确链接D4的VASP分支。不能先用纯PBE得到结构,再只加一个能量数字就说完成了PBE+D4优化。

输入和提取#

下载输入、结果与提取脚本(ZIP)

先在四个graphene-bilayer-pbe目录运行VASP的run.sh,再在相同目录提交run_d4.sh。全部结束后,在包根目录运行python extract_d4.py,读取自己的vasprun.xml和dftd4.json,输出D4-DATA.json。附件不含POTCAR;原始图是本次实际计算的参考结果。

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

查看配图

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

100%查看原图 ↗