VASP 结合 Phonopy 计算硅的声子谱
Vienna Ab initio Simulation Package (The VASP Manual – VASP Wiki) 是一个计算机程序,用于从第一性原理进行原子尺度材料建模,例如电子结构计算和量子力学分子动力学。
Phonopy (Welcome to phonopy — Phonopy v.2.37.1) 是一款用于在简谐和准简谐水平下计算声子能带结构、热学性质、群速度以及其他与声子相关物理量的 python 工具包。
一、教程内容
本次教程将使用自动化脚本来进行 phonopy 进行演示计算流程。通过本教程,您将学会声子谱计算的基本流程:
- 准备微扰差分超胞结构
- 计算所有结构的总能
- 计算力常数矩阵
- 根据力常数矩阵计算声子谱
二、输入文件简介
输入文件包含
├── 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.4 进入目录
cd phonon_dft
上传准备好的硅赝势
可以使用官网例子里的赝势 POTCAR 放到目录中

3. 继续输入以下命令安装 phonopy 环境
conda install -c conda-forge phonopy
然后输入 y 回车,同意安装

4. 输入以下命令运行脚本
chmod 777 *.sh
./run.sh
5. 查看声子谱
查看文件 band.pdf
