HyperAI超神经

VASP 结合 Phonopy 计算硅的声子谱

Vienna Ab initio Simulation Package (The VASP Manual – VASP Wiki) 是一个计算机程序,用于从第一性原理进行原子尺度材料建模,例如电子结构计算和量子力学分子动力学。

Phonopy (Welcome to phonopy — Phonopy v.2.37.1) 是一款用于在简谐和准简谐水平下计算声子能带结构、热学性质、群速度以及其他与声子相关物理量的 python 工具包。

一、教程内容

本次教程将使用自动化脚本来进行 phonopy 进行演示计算流程。通过本教程,您将学会声子谱计算的基本流程:

  1. 准备微扰差分超胞结构
  2. 计算所有结构的总能
  3. 计算力常数矩阵
  4. 根据力常数矩阵计算声子谱

二、输入文件简介

输入文件包含

├── POSCAR-unitcell
├── clean.sh
├── run.sh
└── run_vasp.sh
├── pt
│   ├── INCAR
│   ├── KPOINTS
│   └── 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-connection   -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 收敛精度)

KPOINTS

K-Spacing Value to Generate K-Mesh: 0.040
0
Gamma
   4   4   4
0.0  0.0  0.0

POTCAR

系统对应元素的赝势组合,这里为 Si 的赝势,可使用官网例子

上手体验

1. 克隆容器

找到教程工作目录克隆容器

2. 设置容器

2.1 选择 4090 — 按量付费 — vasp 6.3.0-cuda11.8 — 工作空间

2

2.2 加载完毕后打开工作空间

3

2.3 打开终端

4

2.4 进入目录

cd phonon_dft

上传准备好的硅赝势

可以使用官网例子里的赝势 POTCAR 放到目录中

5

3. 继续输入以下命令安装 phonopy 环境

conda install -c conda-forge phonopy

然后输入 y 回车,同意安装

6

4. 输入以下命令运行脚本

chmod 777 *.sh

./run.sh

5. 查看声子谱

查看文件 band.pdf

8