VASP 专题

VASP数据如何用于CALPHAD建模

从Cu–Au实际计算出发,整理成分、构型、参照态和单位一致的热力学输入。

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

想把第一性原理结果交给热力学建模人员,第一步是整理清楚“什么结构、什么参照态、什么单位”。本文用鸢算科技集群已经计算的6个Cu–Au结构,演示怎样生成可追溯的DFT数据表。

1. 先计算纯元素和目标构型#

本例沿用相稳定性教程中的fcc Cu、fcc Au及4个合金构型。每个结构都优化晶胞和原子位置,采用PBE PAW64、ENCUT=550 eV、EDIFF=1E-6、ISIF=3,自由原子力低于0.02 eV/Å。4原子晶胞用9×9×9 k网格,8原子模型用5×9×9网格。

下载附件后,按每个POSCAR的元素顺序准备合法POTCAR,再进入相应目录:

sbatch run.sh

参照物必须采用相同泛函、兼容的PAW数据集和数值精度。各结构的网格可以因晶胞大小而不同,但能量差仍需检查截断能和k点收敛。本例使用vasp/6.6.1-p100,NVHPC25.3、CUDA12.8及配套MPI,经Slurm计算。

2. 先除以原子数,再减去参照物#

记合金Au原子分数为x,单胞有N个原子:

e = E_cell / N
Δe = e − (1−x) e_Cu_fcc − x e_Au_fcc
ΔE[J/mol atoms] = Δe[eV/atom] × 96485.33212331

本例纯Cu和Au的每原子能量分别为−3.7302235975和−3.2221795000 eV。这里的mol是“摩尔原子”,不是每摩尔CuAu化学式;每摩尔CuAu含2 mol原子,二者相差2倍。

在附件根目录运行:

module load ase/3.29.0
python export_calphad.py

脚本读取6个目录自己的vasprun.xml和OUTCAR,核对优化受力,输出CALPHAD-DFT-DATA.csv。CSV保留单胞能量、原子数、成分、构型名称和参照态,避免只留一列无法追溯的“形成能”。

3. 本例导出的结果#

构型目录 Au原子分数 静态形成能 / eV·atom⁻¹ 静态形成能 / J·mol原子⁻¹
cu-bulk 0.00 0.000000 0.00
au-bulk 1.00 0.000000 0.00
cuau-1 0.25 -0.047635 -4596.06
cuau-2 0.50 -0.056460 -5447.55
cuau-3 0.75 -0.027278 -2631.96
cuau-mixed 0.50 -0.040957 -3951.73

vasp-calphad-data 实算结果

两个x=0.5的周期构型能量不同,不能因为成分相同就把它们当作同一个数据点,更不能简单平均后称为无序固溶体能量。构型身份应随CSV一同交给后续建模人员。

4. 怎样继续形成CALPHAD模型#

这张表提供的是零温静态电子能参照;尚未包含零点振动、有限温度振动、电子激发、磁性与组态自由能。它可以约束选定相或子晶格模型的低温能量,但不是可直接导入并计算完整相图的TDB数据库。

下一步先确定要建模的相及其有序/无序描述,再结合声子、实验热化学和相平衡资料拟合自由能参数。对于有序结构,不能直接在每个DFT点上加理想混合熵就声称得到该合金相图。

对照已有数据库时,确认其参照元素相和参照温度。本文的“零温fcc元素电子能参照”与298.15 K标准元素参照并不自动相同;pycalphad允许明确指定参照相及温压条件。pycalphad参照态说明

实际交接时,建议同时保留CSV、结构输入、泛函/PAW版本、收敛参数和能量定义。本例展示到数据准备这一步,没有把这些点拟合成新的CALPHAD数据库。

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

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

查看配图

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

100%查看原图 ↗