ATAT 专题

ATAT 与 VASP 自动计算

准备vasp.wrap,理解结构、赝势、总能和受力的传递,连接自动结构计算。

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

ATAT 专题导读 · 查看全部文章

用 ATAT 调用 VASP:文件是如何传递的#

准备计算参数#

str.out 描述几何,vasp.wrap 描述电子结构计算设置。以下是静态能量输入的基本形式:

[INCAR]
ENCUT = 450
PREC = Accurate
EDIFF = 1e-7
ISMEAR = 1
SIGMA = 0.1
NSW = 0
IBRION = -1
KPPRA = 4000
USEPOT = PAWPBE
LREAL = .FALSE.
LASPH = .TRUE.

KPPRA 是与原子数结合用于生成 k 网格的目标,不是“每个方向有 4000 个点”。真正执行的网格必须查看生成的 KPOINTS。本文 Cu–Au 主数据集为了使不同超胞的倒空间密度接近,直接按倒格矢长度生成网格,其具体参数见二元簇展开实算;上面模板用于说明接口格式,不能拿来声称与主数据集逐字相同。

USEPOT=PAWPBE 选择个人配置中的 PBE PAW 路径。不要将不同赝势、泛函、磁性、ENCUT 或不同能量定义混到同一个训练集。

先生成文件,再计算#

runstruct_vasp -nr

检查 INCAR、POSCAR、KPOINTS 和 POTCAR 元素顺序。确认参数后,在作业中执行:

runstruct_vasp

如果已有完整 VASP 输出,只想提取 ATAT 文件:

runstruct_vasp -ex

主要结果是 energy、str_relax.out、force.out、stress.out、dos.out。提取受力时必须保持原子顺序与 str_relax.out 一致。

能量约定尤其重要#

当前 extract_vasp 将最后一步 OSZICAR 的 F 值写入 energy,也就是整个计算晶胞的能量数值;不会自动改用 E0。maps 再按照可替换格点数处理拟合中的归一化。普通全占据二元母晶格中,每个格点就是一个原子;有固定子晶格或空位时,必须重新确认“每格点”和“每原子”的区别。

因此:不要先把 energy 除以原子数再交给默认的 maps。 mmaps -pa、clusterexpand -pa 等用于已经归一化的输入,但它们并不是所有 ATAT 程序都通用的选项。

对金属,展宽影响能量和受力;ISMEAR=1、SIGMA=0.1 是本文 Cu–Au 的固定设置,不代表任意材料都适用。高精度形成能应进一步检查展宽、k 网格和静态积分方案。使用 DOSTATIC 会额外执行静态步骤,参数变化及 .static 输出应与训练集的能量约定保持一致。相关物理背景见 VASP 的展宽说明。

数据和配套算例#

下载完整实算资料包,保留 examples/common,进入所需算例目录执行 sbatch submit.sh。输入、参考结果、科学设置和重跑方式均在各目录的 README 中。

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

查看配图

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

100%查看原图 ↗