vasptool超胞、缺陷与应变建模
用Si核对基矢变换、原胞、空位、替位、随机扰动和应变输入。
阅读本篇目录
下载完整输入、结果和复跑脚本。解压后在集群运行 bash run.sh,结果位于 work/,原结果在 reference/。这是19个工具流程的实操资料,不会自动启动新的VASP计算。
1 每项操作放在独立目录#
module load vasptool/1.5.2
cp reference/supercell/POSCAR POSCAR
vasptool 401
本例先输入 1 选择POSCAR,再输入 2 2 2。8原子Si得到64原子 SUPERCELL_222.vasp,体积变为8倍。
若想使用一般整数矩阵:
vasptool 400
400直接读取三行矩阵,不先输入文件选项1。 本例输入:
2 0 0
0 1 0
0 0 1
得到16原子 SUPERCELL.vasp,体积为2倍。先核对矩阵行列式和原子数,避免交互输入错位却仍生成一个文件。
2 对称性、原胞和常规胞#
在各自新目录复制同一份8原子Si POSCAR后:
vasptool 601
vasptool 602
vasptool 603
每条按当前提示输入 1 选择POSCAR。本例空间群227,原胞 PRIMCELL.vasp 含2个原子,常规胞 CONVCELL.vasp 含8个原子。不同结构的输出不一定相同,含磁序或约束的模型还需检查原子映射。

3 空位和替位#
vasptool --feature vacancy-models
本例输入 1 1 1,生成不等价空位模型;Si的单一等价位置得到7原子Si结构。随后在新的完整Si目录运行:
vasptool --feature substitution-models
依次输入 1 1 1 和 Si Ge,本例输出Si7Ge1。这里仅完成模型构造;缺陷形成能还需计算完整胞、缺陷胞,并选定元素化学势、超胞大小和电荷态等条件。
4 随机扰动不是MD采样#
vasptool --feature training-structures
依次输入 2 和 3,生成两个原子位移扰动结构。当前默认限制每个笛卡尔分量约±0.05 Å,因此三维位移长度可以超过0.05 Å。本次两结构的最大原子位移长度约0.07182和0.07059 Å。随机坐标每次可不同,不用坐标逐字相同判断成败。
这些结构还没有能量、力标签。用于机器学习势训练前,需再做实际电子结构单点计算,并检查近距离原子和构型覆盖。
5 一次生成三档应变输入#
准备自己的POSCAR、INCAR、KPOINTS和合法POTCAR,再写入 INPUT.in:
1
3D
3
-0.01 0.00 0.01
1 0 0 0 0 0
vasptool --feature strain-series
得到−1%、0、+1%三档应变目录;本例只改变第一晶格矢量,体积分别为158.50197693、160.10300700、161.70403707 ų。确认每个目录含完整计算输入后,再自行提交任务。
该操作生成应变结构,不等于已经得到弹性常数。拟合前需要足够应变档位、相同数值精度、明确固定离子或松弛离子条件。
6 导出带晶胞的XYZ#
vasptool --feature export-xyz
输入 1 后得到 POSCAR.xyz。本例核对原子数、坐标和晶胞一致。普通XYZ通常不保存晶胞;继续计算时应使用能读取本文件扩展元数据的软件,并重新核对周期性设置。