VASP 教程:VASP 机器学习力场计算硅的声子谱

在计算材料学研究领域,精确预测材料的声子谱和热力学性质对于理解材料本征特性具有重要意义。今天我将重点介绍如何整合第一性原理计算软件 VASP(Vienna Ab initio Simulation Package)和声子计算工具 Phonopy,构建一套完整的机器学习力场声子谱计算方案。VASP 作为基于量子力学的原子尺度材料建模软件,在电子结构计算和分子动力学模拟方面具有独特优势,能够为后续计算提供精确的初始数据。而 Phonopy 作为专业的声子计算 Python 工具包,则可以在简谐和准简谐近似框架下,高效完成声子能带结构、热力学性质等关键参数的计算。

本次教程将采用自动化脚本的方式,系统性地演示机器学习力场声子谱计算的全过程:从最基础的微扰差分超胞结构准备开始,到机器学习力场参数的设置与结构总能计算,再到关键的力常数矩阵构建,最后完成声子谱的计算与解析。整个流程不仅完整覆盖了声子谱计算的核心环节,还特别引入了机器学习力场的先进方法,在保证计算精度的同时显著提升运算效率。

教程链接: https://go.openbayes.com/GXljk

该教程将在云平台 http://OpenBayes.com 上使用 RTX 4090 进行演示,使用下方邀请链接注册即可获得 4 小时 RTX 4090 免费使用时长:
https://openbayes.com/console/signup?r=Dennis9801_1ohB

一、输入文件说明

输入文件包含

复制代码
├── POSCAR-unitcell
├── clean.sh
├── run.sh
└── run_vasp.sh
├── pt
│   ├── INCAR
│   ├── KPOINTS
│   ├── ML_FF
│   └── POTCAR(需自行上传)

POSCAR-unitcell

复制代码
Si #硅结构
   5.38930000000000
     0.0000000000000000    0.5071343999939496    0.5071343999939496
     0.5071343999939496    0.0000000000000000    0.5071343999939496
     0.5071343999939496    0.5071343999939496    0.0000000000000000
   2
Direct
  0.8750000000000000  0.8750000000000000  0.8750000000000000
  0.1250000000000000  0.1250000000000000  0.1250000000000000

clean.sh

复制代码
#!/bin/bash
rm -r *.yaml band.pdf band.yaml FORCE_SETS vasp poscar *out SPOSCAR 
# 删除不必要文件

run.sh

复制代码
#!/bin/bash
rm -r vasp poscar

#准备微扰差分超胞结构
##########################
phonopy -d --dim 2 2 2 --pa auto -c POSCAR-unitcell
mkdir poscar
mv POSCAR-unitcell pp
mv POSCAR-* poscar/
##########################


#计算所有结构的总能
##########################
mkdir vasp
cd vasp
Pnum=$(ls -l ../poscar/  -IR | grep "^-" | wc | awk -F ' ' '{print $1}')
cp ../run_vasp.sh .

t_head="for i in {1.."
t_tail="}"
sed -i "3c ${t_head}${Pnum}${t_tail}"  run_vasp.sh #生成vasp计算脚本

./run_vasp.sh
##########################

cd ../


mv pp POSCAR-unitcell

#计算力常数矩阵
##########################
phonopy -f vasp/*/vasprun.xml > pfcout
##########################

#根据力常数矩阵计算声子谱
##########################
phonopy-load --band "0.0 0.0 0.0  0.5 0.0 0.5  0.625 0.25 0.625,  0.375 0.375 0.75  0.0 0.0 0.0  0.5 0.5 0.5" --band-labels "Γ  X K K  Γ  L" -p -s
##########################

run_vasp.sh

复制代码
#!/bin/bash
#计算vasp流程自动脚本
for i in {1..8}
do
rm -r $i
mkdir $i
cd $i
ii=$(printf "%03d" $i)
cp ../../poscar/POSCAR-${ii} POSCAR
cp ../../pt/* .
mpirun -n 1 vasp_std
cd ../

done

文件夹 pt 中的文件

INCAR 标准静态计算

复制代码
ISTART =  1            (若有波函数、读取波函数)
ISPIN  =  1            (非极化计算)

Static Calculation
ISMEAR =  0            (高斯占据)
SIGMA  =  0.05         (高斯展宽)
NELM   =  60           (最大电子步)
EDIFF  =  1E-08        (SCF 收敛精度)


机器学习力场设置
ML_LMLFF  = T    (使用机器学习力场)
ML_ISTART = 2    (仅预测模式)

KPOINTS (启用机器学习时不使用,随便设置一个即可)

复制代码
K-Spacing Value to Generate K-Mesh: 0.040
0
Gamma
   4   4   4
0.0  0.0  0.0

POTCAR

系统对应元素的赝势组合,这里为 Si 的赝势

ML_FF

事先训练好的系统对应的机器学习力场参数文件,具体训练流程可参考 Si 的机器学习力场教程。

二、操作步骤

1. 克隆并启动容器

登录 http://OpenBayes.com,在「公共教程」页面,选择「VASP 机器学习力场计算硅的声子谱」教程。

页面跳转后,点击右上角「克隆」,将该教程克隆至自己的容器中。页面跳转后,点击右上角「克隆」,将该教程克隆至自己的容器中。

选择「NVIDIA GeForce RTX 4090」以及「vasp」镜像,OpenBayes 平台提供了 4 种计费方式,大家可以按照需求选择「按量付费」或「包日/周/月」,点击「继续执行」。可以使用文章开头的邀请链接,获得 RTX 4090 使用时长!

待系统分配好资源,当状态变为「运行中」后,点击「打开工作空间」。

2. 上传文件

首先打开「终端」,然后将准备好的赝势 POTCAR 放到目录中,这里可以使用官网例子

3. 安装 phonopy 环境

输入以下命令安装 phonopy 环境。

复制代码
conda install -c conda-forge phonopy

当模型运行到以下阶段,输入「y」同意安装。

4. 运行脚本

输入以下命令运行脚本。

复制代码
chmod 777 *.sh  ./run.sh

5. 查看声子谱

最后计算的结果将输出在 pdf 中,查看文件 band.pdf

相关推荐
Ronin-Lotus1 小时前
模型训练与部署注意事项篇---resize
人工智能·深度学习·计算机视觉
我爱一条柴ya2 小时前
【AI大模型】LLM模型架构深度解析:BERT vs. GPT vs. T5
人工智能·python·ai·ai编程
Coovally AI模型快速验证2 小时前
从FCOS3D到PGD:看深度估计如何快速搭建你的3D检测项目
人工智能·深度学习·神经网络·yolo·3d·cnn
kikikidult6 小时前
Ubuntu20.04运行openmvg和openmvs实现三维重建(未成功,仅供参考)
人工智能·笔记·ubuntu·计算机视觉
189228048616 小时前
NW728NW733美光固态闪存NW745NW746
大数据·服务器·网络·人工智能·性能优化
大模型最新论文速读7 小时前
模拟注意力:少量参数放大 Attention 表征能力
人工智能·深度学习·机器学习·语言模型·自然语言处理
lishaoan777 小时前
用TensorFlow进行逻辑回归(二)
人工智能·tensorflow·逻辑回归
慌ZHANG8 小时前
智慧气象新范式:人工智能如何重构城市级气象服务生态?
人工智能
Eumenidus8 小时前
使用ESM3蛋白质语言模型进行快速大规模结构预测
人工智能·语言模型·自然语言处理