VASP计算声子谱

2024-10-18 16:19   广东  
主要使用phonopy软件计算声子谱。
一、密度泛函微软理论/线性响应方法 (DFPT)
  必要的输入文件:
INCAR
KPOINTS
POSCAR-unitcell # 优化得到的初始晶胞
POTCAR
band.conf
1.扩胞得到计算所需的POSCAR
#在Linux终端直接运行命令
#1. 生成超胞
phonopy -d --dim="2 2 2" -c POSCAR-unitcell #--dim='2 2 2'表示'x y z'方扩的大小

#2. 将生成的SPOSCAR拷贝成POSCARcp SPOSCAR POSCAR

2.提交VASP计算
INCAR设置如下:
 ISMEAR =  0            (Gaussian smearing)
 SIGMA  =  0.05         (Smearing value in eV)
 IBRION =  8            (determines the Hessian matrix using DFPT)
 EDIFF  =  1E-08        (SCF energy convergence; in eV) 
 PREC   =  Accurate     (Precision level)  
 ENCUT  =  500          (Cut-off energy for plane wave basis set, in eV) 
 IALGO  =  38           (Davidson block iteration scheme)
 LREAL  = .FALSE.       (Projection operators: false)
 LWAVE  = .FLASE.       (Write WAVECAR or not)
 LCHARG = .FLASE.       (Write CHGCAR or not) 
 ADDGRID= .TRUE.        (Increase grid; helps GGA convergence) 
 NSW    = 1
 NELM   = 100
 NELMDL = -5
KPOINTS需适当减小,可以的话最好再进行一次收敛测试;
A
0
M
3  3  3
0  0  0
提交VASP计算
mpirun -np 16 vasp_std > vasp.log

3.计算声子谱
准备band.conf文件,如下所示:(参数含义详见phonopy官网)
 ATOM_NAME =Si
 DIM = 2 2 2
 PRIMITIVE_AXES=Auto
 MP = 24 24 24
 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  00 0.0 0.0  0.5 0.5 0.5
 BAND_POINTS = 101
 FORCE_CONSTANTS= READ
获取声子谱后处理步骤;
 #直接在终端运行
 #1. 提取力常数,得到FORCE_CONSTANTS文件。
 phonopy --fc vasprun.xml 
 
 #2. 计算声子谱并保存为pdf格式
 phonopy -c POSCAR-unitcell band.conf -p -s 
 
 #3. 将声子谱进一步输出为数据文件,用于其它软件画图。

 #旧版本phonopy
 bandplot  --gnuplot> phonon.out 
 #新版本phonopy
 phonopy-bandplot --gnuplot > phonon.out 
 #phonon.out文件中首行是高对称点在x轴上的坐标

二、有限位移方法
必要的输入文件:
INCAR 
KPOINTS
POSCAR-unitcell # 优化得到的初始晶胞
POTCAR
band.conf
1. 扩胞得到计算所需的POSCAR
#在Linux终端直接运行命令
#1. 生成超胞
phonopy -d --dim="2 2 2" -c POSCAR-unitcell #--dim='2 2 2'表示'x y z'扩胞的大小#会得到一系列POSCAR-001,POSCAR-002,... 数量由对称性决定。
#2. 建立disp-*文件夹,具体数量以生成POSCAR-*的数量决定。将POSCAR-POTCAR, INCAR, KPOINTS放入disp-*文件夹
mkdir disp-001
cp POSCAR-001 ./disp-001/POSCAR
cp POTCAR ./disp-001/POTCAR
cp INCAR ./disp-001/INCAR
cp KPOINTS ./disp-001/KPOINTS

2. 提交VASP计算
INCAR设置如下(静态计算):
 PREC = Accurate
 IBRION = -1
 ENCUT = 500
 EDIFF = 1.0e-08
 EDIFFG = -0.001
 ISMEAR = 0
 SIGMA = 0.05
 ALGO = 38
 LREAL = .FALSE.
 LWAVE = .FALSE.
 LCHARG = .FALSE.
KPOINTS需适当减小,可以的话最好再进行一次收敛测试
A
0
M
3  3  3
0  0  0
提交VASP计算
mpirun -np 16 vasp_std > vasp.log

3.计算声子谱
准备band.conf文件,如下所示:(参数含义详见phonopy官网)
 ATOM_NAME =Si
 DIM = 2 2 2
 PRIMITIVE_AXES=Auto
 MP = 24 24 24
 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_POINTS = 101
 FULL_FORCE_CONSTANTS = .TRUE.
 FORCE_CONSTANTS= WRITE #生成FORCE_CONSTANTS
准备mesh.conf文件,如下所示:
ATOM_NAME = Si
DIM = 2 2 2
MP = 24 24 24
获取声子谱后处理步骤
bash
 #直接在终端运行
 #1. 提取动力学矩阵,进入disp-*的上一级文件夹
 phonopy -f ./disp-*/vasprun.xml #会生成FORCE_SET
 
 #2. 计算声子谱并保存为pdf格式,同时生成FORCE_CONSTANTS
 phonopy -c POSCAR-unitcell band.conf -p -s 
 
 #3. 将声子谱进一步输出为数据文件,用于其它软件画图。
 #旧版本phonopy
 bandplot  --gnuplot> phonon.out 
 #新版本phonopy
 phonopy-bandplot --gnuplot > phonon.out 
 #phonon.out文件中首行是高对称点在x轴上的坐标

https://blog.sciencenet.cn/blog-3469498-1280197.html。
如果侵权,请及时告知我们,我们将在最短的时间内删除。


DFT计算参谋长
华算科技朱参谋长公众号,十余年VASP重度使用经验,每天给大家带来期刊速览,学术新闻,欢迎关注!
 最新文章