ABACUS 专题

ABACUS D2、D3与D3(BJ)色散修正

D2、D3与D3(BJ)色散修正:终端操作、完整输入、真实结果与适用范围。

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

本篇采用鸢算科技集群 ABACUS 3.10.1 的实际输入与输出。下载实操资料包,解压后进入 abacus-examples。inputs 是干净输入,cases 是参考结果,work 用于你的新计算。

这篇要做什么#

vdw_method分别选择d2、d3_0、d3_bj。硅例子演示相同结构下能量修正的读取;层状材料、吸附和分子晶体应在选定修正方法下重新优化并验证。不同修正之间不能只按能量最低来选方法,需匹配泛函与适用参数。

1 准备并提交#

python new-case.py dispersion-d2
cd work/dispersion-d2
sbatch run.sh

提交脚本使用核时分区模板。套餐用户按自己的资源权限用 yskit 生成提交脚本,保留相同的 ABACUS 计算命令。不要在登录节点直接运行计算。

本篇资料目录:dispersion-d2、dispersion-d3_0、dispersion-d3_bj。其他对照例回到资料包根目录,换目录名后用同样三个命令提交。

2 核心输入#

dispersion-d2/INPUT 的完整内容:

INPUT_PARAMETERS
suffix tutorial
calculation scf
basis_type pw
ecutwfc 40
scf_thr 1e-8
scf_nmax 150
ks_solver cg
device gpu
precision double
cal_force 1
cal_stress 1
pseudo_dir ../../PP_ORB
orbital_dir ../../PP_ORB
vdw_method d2

重点检查:vdw_method。参数与说明应按3.10.1理解;官网 latest 的新增参数见版本与扩展范围。

展开完整 STRU 结构与 KPT 采样文件

STRU#

ATOMIC_SPECIES
Si 28.0855 Si_ONCV_PBE-1.0.upf

NUMERICAL_ORBITAL
Si_gga_8au_100Ry_2s2p1d.orb

LATTICE_CONSTANT
10.26

LATTICE_VECTORS
0 0.5 0.5
0.5 0 0.5
0.5 0.5 0

ATOMIC_POSITIONS
Direct
Si
0.0
2
0 0 0 1 1 1
0.25 0.25 0.25 1 1 1

KPT#

K_POINTS
0
Gamma
2 2 2 0 0 0

对照输入的差别#

dispersion-d3_0:

vdw_method d3_0

dispersion-d3_bj:

vdw_method d3_bj

3 检查输出和实际结果#

squeue -u "$USER"
tail -n 30 stdout.log
ls OUT.*

确认正常结束后,再检查电子收敛、几何或时间步终止条件以及本篇需要的结果文件。SCF电子收敛不等于晶胞或原子优化完成。

实算目录 最后总能量 / eV 计算类型 执行路径
dispersion-d2 -212.375033628 scf GPU
dispersion-d3_0 -212.216444603 scf GPU
dispersion-d3_bj -212.549738346 scf GPU

总能量是整个输入晶胞的量;不同原子数、赝势、泛函或物理条件的数值不能直接相减。CPU路径也在分配的计算资源中执行,本表不提供CPU节点性能对照。

ABACUS真实计算数据与结构:dispersion

4 提取和重画#

回到资料包根目录:

module load ase/3.29.0
python plot.py vdw
ls figures

plot.py读取对应原始日志或结果文件;已有CSV在 analysis。结构可打开输出的 STRU.cif,cube可在VESTA查看。保留原始数据、坐标单位和参数,修改绘图不能改变计算结果。

进一步查阅#

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

查看配图

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

100%查看原图 ↗