ATAT 铝实例:电子自由能与总自由能的实际组合
用同一 PBE 铝的 DOS 与位移力组合原生自由能,说明静态能、零点能、单位和固定体积边界。
阅读本篇目录
本篇接续铝的位移力与振动自由能。振动项和电子项来自同一 Al、同一 PBE PAW 数据、同一基准晶格常数 4.05 Å,组合时按每个 Al 原子归一化。不会把 EMT 势的振动能与另一套 PBE 静态能拼成材料结果。
1. 从头提交本例的七个 VASP 任务#
在上一篇 Al-example 目录执行以下命令,重新解压到一个新目录:
cd ..
python3 -m zipfile -e atat-Al-PBE-free-energy-wave538-3049efce73cd.zip Al-fresh
cd Al-fresh
bash calculate.sh
脚本先生成位移,再通过普通账号 Slurm 提交七组静态计算,每个任务一张 GPU、一个 CPU 核心、一个 MPI 进程;默认交替使用 P100 和 V100 16G。也支持 bash calculate.sh p100 或 bash calculate.sh v100,选一种即可,不要在已有 work/ 的目录连续尝试多个入口。计算结束后自动进行 ATAT 后处理、画图和导出数据。
从头计算需要 VASP 使用权限和 Al 的 PBE PAW 路径。未初始化 ATAT 个人配置时可使用集群的 yskit atat-init;有配置时保留原配置,先核对其中的 POTPAWPBE。操作包不提供 PAW 文件与商业程序。默认 ATAT 的 CPU VASP 命令未被修改:本例明确分成 runstruct_vasp -nr 生成输入、GPU VASP 执行、runstruct_vasp -ex 提取结果三步。
cat work/SUBMISSIONS.json
cat work/cases/primitive-DOS/OSZICAR
SUBMISSIONS.json 可查看作业号。停止时先查看这些作业的状态,再用正常 scancel 操作处理自己的作业;终端中断不保证已经提交的作业自动取消。现有结果会保留,脚本不会自动删除数据或取消其他任务。
2. DOS 怎样进入 felec#
本例原胞 NELECT=3,DOSCAR 含 4001 个总 DOS 采样点。由 DOSCAR 头部上下限确定均匀间距约 0.00738548816 eV,DOS 数值本身不缩放。原生转换文件 dos.out 的开头为电子数、能量间隔和缩放因子,随后逐行写入总 DOS。
head -n 6 work/thermo/electronic/dos.out
head -n 5 work/thermo/electronic/felec.log
原生计算是 felec -T0=0 -T1=1000 -dT=1 -pa -sig=12;主表每 100 K 抽取一点,原始 1 K 温度数据仍保留。这里的 1 K 是电子积分温度步长,与声子倒空间网格无关。

左图使用实际 DFT DOS,横轴是相对 DFT 费米能的能量。中图是原生电子自由能修正及独立固定参照积分。右图显示原生数值与同一 DOS 模型独立积分的差异,保留微 eV 尺度细节,没有把偏差平滑掉。
ATAT 3.52 原生 felec 用第一个正温度的内能作为热修正参照。本例采用 1 K,并实际检查该内能与同一 DOS 的零温基准之差约为浮点舍入量级,因此可与这里的静态参照组合。这不是任意 DOS、任意温度步长都成立的结论;换材料时应检查参照,详见电子温度参照教程。1000 K 的电子自由能修正约 −0.00445362 eV/atom。
该模型固定零温能带/DOS,不包含温度导致的结构、磁序、强非谐或电子自洽能带变化。金属 DOS 和电子温度积分对 k 点很敏感,本例网格是演示设置,正式工作应另作收敛检查。
3. 静态能到底用 F 还是 E0#
同一原胞的实际 OSZICAR 结果为:
| 数值 | 本例值(eV/atom) | 用途 |
|---|---|---|
Gaussian 展宽下的 F |
−3.7538934 | 保留原生 ATAT energy 的含义 |
OSZICAR E0 |
−3.7537717 | 本例总曲线的静态参照 |
| 零点振动能 | 0.0374937 | 已包含于完整振动自由能中 |
E0 是给定展宽、k 网格和截断能下的零展宽外推值,不是严格收敛的材料零温能量。不能将 energy 文件里的 F 悄悄换名为 E0,也不能再给总曲线额外添加一次零点能。
4. 原生 mkteci 实际怎样组合#
固定体积模型为 F(T)=E0+Fvib(T)+Felec(T)。包内将静态参照放入仅含一个空簇的示范 ECI,各温度的振动与电子修正写入相同单空簇通道,再执行:
mkteci fvib.eci
mkteci felec.eci
mkteci fvib.eci felec.eci
这演示温度修正文件与原生组合接口,不是用纯铝拟合出了合金簇展开。文件在 work/combinations/ 中,每个子目录保留自己的 eci.out、Trange.in、修正文件与 teci.out。
cat work/combinations/joint/eci.out
cat work/combinations/joint/Trange.in
head -n 7 work/combinations/joint/teci.out
程序还实际做了第四种等价写法:静态项改为 E0+ZPE,振动项减去同一个 ZPE,电子项不变。两条最终曲线一致,用于确认零点能只计算一次。最终主曲线的各修正直接来自原生工具;独立积分只作交叉核对,没有替换原生输出。

| T(K) | Fvib | Felec | 原生组合总自由能(eV/atom) |
|---|---|---|---|
| 0 | 0.0374937 | 0 | −3.71628 |
| 300 | −0.00418766 | −0.000247222 | −3.75821 |
| 1000 | −0.335219 | −0.00445362 | −4.09344 |
各列显示精度不同,表中四舍五入后的数相加可能与总列末位略有差别。原始分量、原生组合和独立组合数据都在 CSV 中,保留各自含义。
5. 查看和重新画图#
head -n 5 tables/Al-PBE-free-energy.csv
bash plot.sh
绘图使用本次 work/ 产生的数据。若只想重画教程的原始示例图,可明确选择附带的原始参考数组:
bash plot.sh reference
参考图重画不等于又进行了一次 DFT。保留本次绘图时,先另存 figures/ 再选择参考图。更换结构应重新生成位移、计算力和 DOS,不能只改图题;更换体积应重新保证静态、振动和电子项的材料、体积与归一化一致。该例不包含磁性修正、构型熵或可靠相界,它们有各自的模型和输入,参见温度 ECI 参照教程。原生工具分工可查ATAT 官方说明。