ATAT体模量实操:读取结果、单位与拟合图
区分线性应变、体积与体模量单位,对照原生拟合和独立状态方程。
阅读本篇目录
完成五点VASP计算后,在同一个ATAT-Al-bulk目录操作。下载完整实例包。
1 读取原生体模量与平衡应变#
cat new-work/bulkmod
cat new-work/strain.out
awk '{printf "B = %.6f GPa\n", $1*160.21766208}' new-work/bulkmod
这次实际输出bulkmod=0.505504 eV/ų,换算得到约80.990669 GPa。strain.out约为0.0010026,是相对于最初输入晶胞的平衡线性应变,即约+0.10026%,不是体积应变,也不是已经换算好的晶格常数。
若按初始a=4.04 Å换算,拟合晶格参数约4.04405 Å;工具生成的str_relax.out保留对应晶胞。这个拟合结果来自所列五点与计算参数,不等于完整收敛的实验体模量预测。
2 查看和画出五个点#
cat new-work/analysis/EOS.csv
bash plot.sh
ls -lh new-work/figures/*.png

左图按原生calcbulk的约定,对E(s)=a+bs+cs²拟合,保留实际VASP能量点;右图将实际晶胞向量计算的V与同一批能量交给ASE的Birch–Murnaghan状态方程。两者拟合模型不同,不能把左图的结果改名为Birch–Murnaghan体模量。
本站数据的独立Birch–Murnaghan拟合约为80.67236 GPa,与原生约80.99067 GPa接近。这个小差别反映有限五点与拟合形式的差别,不需要人为平移或改写原生能量。
3 每个文件的用途#
| 文件 | 用途 |
|---|---|
s_*/str.out、POSCAR、INCAR、KPOINTS |
每个实际计算点的结构和参数 |
s_*/energy |
ATAT提取的VASP能量 |
x.tmp、y.tmp |
拟合所用应变与能量 |
eos.tmp |
原生二次多项式系数 |
bulkmod |
原生体模量,eV/ų |
strain.out |
拟合平衡线性应变 |
str_relax.out |
体积拟合对应的晶胞;不是任意体系的完整原子位置优化结果 |
analysis/EOS.csv、VALIDATION.json |
五点数据与独立拟合比较 |
程序还会复制最低采样能量点的dos.out到顶层,这不表示它又在拟合体积上重新计算了DOS。需要平衡体积DOS时,应以拟合结构另做一次相应静态计算。
4 用到自己的结构时#
先确定晶体类型、磁态和统一赝势,选合适的初始结构。体积扫描中,应区分“固定离子坐标的能量”和“每个体积约束下先优化内部原子位置后的能量”;多原子体系二者可能不同。也要避免每个点都做自由ISIF=3优化,把指定体积又优化回同一个体积。
选择应变范围后检查最低点落在采样区间内部,再增加采样、k点与截断能验证。范围过大或跨越结构/磁性相变时,不宜继续用同一个简单二次式解释全部数据。保留原来的结果目录,新参数另开目录,便于比较。