VASPKIT专题

VASPKIT:弹性常数、方向性与状态方程

先生成形变结构,逐个计算能量或应力,再回到上一级拟合。金刚石实例固定分数坐标,得到的是本组参数下的钳位离子响应,不能直接当成收敛后的实验对照。

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

先生成形变结构,逐个计算能量或应力,再回到上一级拟合。金刚石实例固定分数坐标,得到的是本组参数下的钳位离子响应,不能直接当成收敛后的实验对照。

返回专题导航 · 全部功能索引

先准备示例#

下载输入、后处理数据与绘图脚本,解压后进入目录:

unzip vaspkit-examples-*.zip
cd vaspkit-examples
python3 prepare.py
module load vaspkit/1.5.1

prepare.py从集群安装的官方examples复制需要的原始示例;附件本身不转发这些分发文件。每个功能的目录独立,下面的cd cases/...均从附件根目录开始。完成一个功能后可用cd ../..回到根目录。

本例结果图#

VASPKIT弹性常数、方向性与状态方程实测数据图

图由实际导出的数据绘制。附件根目录执行module load phonopy/4.8.3,再执行python plot.py可重画;此模块提供绘图所需的Python环境。

主要例子的文件#

本专题在集群计算/建立的 cases/201 模型。

INCAR#

ENCUT=450
EDIFF=1E-6
EDIFFG=-0.02
PREC=Accurate
ISMEAR=0
SIGMA=0.05
LREAL=.FALSE.
IBRION=-1
NSW=0
ISIF=2
LWAVE=.FALSE.
LCHARG=.FALSE.

KPOINTS#

Demonstration mesh
0
Gamma
3 3 3
0 0 0

INPUT.in#

2
3D
5
-0.01 -0.005 0.00 0.005 0.01

完整的配套文件通过附件和prepare.py准备。若本功能需要WAVECAR/WAVEDER,先按新计算与波函数准备运行自己的VASP,不使用其他体系的波函数代替。

如何理解两种弹性结果#

本次固定原子位置的金刚石示例得到:

方法 C11(GPa) C12(GPa) C44(GPa)
200,应力—应变,3点 1047.444 127.033 559.154
201,能量—应变,5点 1080.683 116.499 570.320

这里使用ENCUT=450 eV、3×3×3网格和有限应变区间,数值差异提醒我们:流程走通后仍要检查截断能、k网格、残余应力和拟合区间。不要仅因两种菜单都有输出,就把差异解释为材料的新物理性质。

本篇的EOS图来自另一套官方GaInO3示例,不能与金刚石弹性数据混为同一材料。

各功能操作#

200 · 应力—应变弹性常数#

INPUT.in第一行1生成应变结构,完成VASP后改2提取。本例3个应变点−1%、0、+1%,使用应力响应。

实例来源:本专题在集群计算/建立的 cases/200 模型。

在附件根目录执行:

cd cases/200
vaspkit < answers.in

answers.in实际内容如下,每行对应一次输入;也可运行vaspkit后逐行手动键入。

200

目录中的主要配套文件:INCAR、INPUT.in、KPOINTS、POSCAR。

本次得到:C11_C12_C44/STRAIN_STRESS.dat、C11_C12_C44/strain_+0.010/INCAR、C11_C12_C44/strain_+0.010/KPOINTS、C11_C12_C44/strain_+0.010/POSCAR、C11_C12_C44/strain_-0.010/INCAR、C11_C12_C44/strain_-0.010/KPOINTS、C11_C12_C44/strain_-0.010/POSCAR、C11_C12_C44/strain_0.000/INCAR、C11_C12_C44/strain_0.000/KPOINTS、C11_C12_C44/strain_0.000/POSCAR、ELASTIC_TENSOR。原始输入与结果保持在同一例子目录;表格文件先查看首行列名,再选择横纵轴。

本例输出摘要(数值仅对应上述输入):

[6] Chen X-Q, Intermetallics 19, 1275 (2011)
[7] Tian Y-J, Int. J. Refract. Hard Met. 33, 93–106 (2012)
Eigenvalue lamda_1 =   559.154 > 0 meeted.
Eigenvalue lamda_2 =   559.154 > 0 meeted.
Eigenvalue lamda_3 =   559.154 > 0 meeted.
Eigenvalue lamda_4 =   920.411 > 0 meeted.
Eigenvalue lamda_5 =   920.411 > 0 meeted.
Eigenvalue lamda_6 =  1301.510 > 0 meeted.
Elastic stability criteria as seen in PRB 90, 224104 (2014).
Criteria (i) C11 - C12 > 0 meeted.
Criteria (ii) C11 + 2C12 > 0 meeted.
Criteria (iii) C44 > 0 meeted.

201 · 能量—应变弹性常数#

本例使用5个应变点−1%、−0.5%、0、+0.5%、+1%。先在INPUT.in写1生成结构,逐目录完成VASP后改2拟合。至少准备足够点数,不能用3点套本例拟合流程。

实例来源:本专题在集群计算/建立的 cases/201 模型。

在附件根目录执行:

cd cases/201
vaspkit < answers.in

answers.in实际内容如下,每行对应一次输入;也可运行vaspkit后逐行手动键入。

201

目录中的主要配套文件:INCAR、INPUT.in、KPOINTS、POSCAR。

本次得到:C11_C12_I/STRAIN_ENERGY.dat、C11_C12_I/strain_+0.005/INCAR、C11_C12_I/strain_+0.005/KPOINTS、C11_C12_I/strain_+0.005/POSCAR、C11_C12_I/strain_+0.010/INCAR、C11_C12_I/strain_+0.010/KPOINTS、C11_C12_I/strain_+0.010/POSCAR、C11_C12_I/strain_-0.005/INCAR、C11_C12_I/strain_-0.005/KPOINTS、C11_C12_I/strain_-0.005/POSCAR、C11_C12_I/strain_-0.010/INCAR、C11_C12_I/strain_-0.010/KPOINTS 等。原始输入与结果保持在同一例子目录;表格文件先查看首行列名,再选择横纵轴。

本例输出摘要(数值仅对应上述输入):

[6] Chen X-Q, Intermetallics 19, 1275 (2011)
[7] Tian Y-J, Int. J. Refract. Hard Met. 33, 93–106 (2012)
Eigenvalue lamda_1 =   570.320 > 0 meeted.
Eigenvalue lamda_2 =   570.320 > 0 meeted.
Eigenvalue lamda_3 =   570.320 > 0 meeted.
Eigenvalue lamda_4 =   964.183 > 0 meeted.
Eigenvalue lamda_5 =   964.183 > 0 meeted.
Eigenvalue lamda_6 =  1313.681 > 0 meeted.
Elastic stability criteria as seen in PRB 90, 224104 (2014).
Criteria (i) C11 - C12 > 0 meeted.
Criteria (ii) C11 + 2C12 > 0 meeted.
Criteria (iii) C44 > 0 meeted.

202 · 从弹性矩阵计算模量#

矩阵输入单位为GPa;二维矩阵用ELASTIC_TENSOR_2D.in及N/m。不能把含真空的三维模量直接当成二维面内模量。

实例来源:安装包示例 elastic/elastic_from_file_3D,在集群重新执行本功能;不是本轮重新进行全部上游VASP计算。

在附件根目录执行:

cd cases/202
vaspkit < answers.in

answers.in实际内容如下,每行对应一次输入;也可运行vaspkit后逐行手动键入。

202

目录中的主要配套文件:POSCAR。

本次得到:ELASTIC_TENSOR。原始输入与结果保持在同一例子目录;表格文件先查看首行列名,再选择横纵轴。

本例输出摘要(数值仅对应上述输入):

[6] Chen X-Q, Intermetallics 19, 1275 (2011)
[7] Tian Y-J, Int. J. Refract. Hard Met. 33, 93–106 (2012)
Eigenvalue lamda_1 =   559.861 > 0 meeted.
Eigenvalue lamda_2 =   559.861 > 0 meeted.
Eigenvalue lamda_3 =   559.861 > 0 meeted.
Eigenvalue lamda_4 =   924.000 > 0 meeted.
Eigenvalue lamda_5 =   924.000 > 0 meeted.
Eigenvalue lamda_6 =  1303.920 > 0 meeted.
Elastic stability criteria as seen in PRB 90, 224104 (2014).
Criteria (i) C11 - C12 > 0 meeted.
Criteria (ii) C11 + 2C12 > 0 meeted.
Criteria (iii) C44 > 0 meeted.

203 · 从OUTCAR提取弹性#

本例从硅IBRION=6、ISIF=3的OUTCAR提取。晶胞很小,只示范输出衔接。

实例来源:本专题在集群计算/建立的 si-phonon 模型。

在附件根目录执行:

cd cases/203
vaspkit < answers.in

answers.in实际内容如下,每行对应一次输入;也可运行vaspkit后逐行手动键入。

203

目录中的主要配套文件:KPOINTS、OUTCAR、POSCAR。

本次得到:ELASTIC_TENSOR。原始输入与结果保持在同一例子目录;表格文件先查看首行列名,再选择横纵轴。

本例输出摘要(数值仅对应上述输入):

[6] Chen X-Q, Intermetallics 19, 1275 (2011)
[7] Tian Y-J, Int. J. Refract. Hard Met. 33, 93–106 (2012)
Eigenvalue lamda_1 =    79.124 > 0 meeted.
Eigenvalue lamda_2 =    79.124 > 0 meeted.
Eigenvalue lamda_3 =    79.124 > 0 meeted.
Eigenvalue lamda_4 =   101.006 > 0 meeted.
Eigenvalue lamda_5 =   101.006 > 0 meeted.
Eigenvalue lamda_6 =   282.759 > 0 meeted.
Elastic stability criteria as seen in PRB 90, 224104 (2014).
Criteria (i) C11 - C12 > 0 meeted.
Criteria (ii) C11 + 2C12 > 0 meeted.
Criteria (iii) C44 > 0 meeted.

204 · 方向相关力学性质#

2选择平面上的方向扫描,1 0 0为该平面的法向;先确认与晶格坐标的约定。

实例来源:安装包示例 angular_dependent_mechanics,在集群重新执行本功能;不是本轮重新进行全部上游VASP计算。

在附件根目录执行:

cd cases/204
vaspkit < answers.in

answers.in实际内容如下,每行对应一次输入;也可运行vaspkit后逐行手动键入。

204
2
1 0 0

目录中的主要配套文件:本任务使用交互输入或内置数据库,不需要VASP结果文件。

本次得到:MECHANICS_2D_100.dat。原始输入与结果保持在同一例子目录;表格文件先查看首行列名,再选择横纵轴。

本例输出摘要(数值仅对应上述输入):

85.741    217.470     94.201      0.000    -20.213      0.000
81.503     94.201    178.810      0.000     -9.472      0.000
0.000      0.000      0.000     35.094      0.000    -17.851
-0.737    -20.213     -9.472      0.000     37.778      0.000
0.000      0.000      0.000    -17.851      0.000     42.708
Compliance Tensor S_ij (in GPa^{-1}):
0.005594  -0.001532  -0.001804   0.000000  -0.001163   0.000000
-0.001532   0.006607  -0.002632   0.000000   0.002845   0.000000
-0.001804  -0.002632   0.007829   0.000000   0.000520   0.000000
0.000000   0.000000   0.000000   0.036189   0.000000   0.015126
-0.001163   0.002845   0.000520   0.000000   0.028100   0.000000
0.000000   0.000000   0.000000   0.015126   0.000000   0.029737

205 · 状态方程拟合#

输入为EOS.in。本例官方GaInO3数据表按EOS.in指定的8个体积点拟合;输出的按原子归一化依赖该文件原子数字段,本示例字段为1,不能从其标签推断真实每原子能量。用于学习拟合时保持输入归一化一致,换实际材料时填写真实原子数。

实例来源:安装包示例 EOS/read_from_file,在集群重新执行本功能;不是本轮重新进行全部上游VASP计算。

在附件根目录执行:

cd cases/205
vaspkit < answers.in

answers.in实际内容如下,每行对应一次输入;也可运行vaspkit后逐行手动键入。

205

目录中的主要配套文件:EOS.in。

本次得到:ENERGY_VOLUME_DFT.dat、ENERGY_VOLUME_FIT.dat、ENTHALPY_VOLUME_FIT.dat、PRESSURE_VOLUME_DFT.dat、PRESSURE_VOLUME_FIT.dat。原始输入与结果保持在同一例子目录;表格文件先查看首行列名,再选择横纵轴。

本例输出摘要(数值仅对应上述输入):

Based on Birch-Murnaghan 4th-order EOS
V0  =  122.128372 Angstrom^3
E0  =  -73.073380 eV
B0  =  146.977291 GPa
B0' =  5.591438

换成自己的体系#

先复制一份计算目录,确认POSCAR、INCAR、KPOINTS和各结果来自同一计算,再运行所需菜单。涉及静态、优化或声子等前置VASP任务,先完成计算再后处理;VASPKIT不会替代这些计算。保留结构、输入参数、工具版本和提取后的数据,后续改图时不必反复重算。

方法参考:VASPKIT官方教程;菜单与交互输入以本专题实际使用的安装版本为准。使用结果开展研究时引用VASPKIT论文。

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

查看配图

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

100%查看原图 ↗