vasp声子谱计算(DFPT)
有人在后台私信老王,让老王分享一下计算声子谱的方法。今天就来简单说一说。更多细节的还是推荐看phonopy的官方手册(文末有链接)。
使用vasp计算声子谱有两种方法,一种是有限位移方法,一种是密度泛函微扰理论方法。无论哪一种首先都是要精细的优化晶格结构。
注:声子部分后续更新会有振动模导出,伯恩有效电荷计算,声子拓扑紧束缚模型构建(如何生成hr文件),请持续关注。
一、精细优化
用如下INCAR:
ENCUT = 500 #根据体系调节
IBRION = 2
ISIF = 3
NSW = 20
NELMIN = 5
EDIFF = 1.0e-08 # 高精度
EDIFFG = -1.0e-08 # 高精度
IALGO = 38
ISMEAR = 0; SIGMA = 0.1
LREAL = .FALSE.
LWAVE = .FALSE.
LCHARG = .FALSE.
优化完成,拷贝CONTCAR到POSCAR中,重新计算,重复几次。
二、扩胞
(1) 拷贝前面优化得到的CONTCAR文件为POSCAR-unitcell。
Na Cl
1.00000000000000
5.6903014761756712 0.0000000000000000 0.0000000000000000
0.0000000000000000 5.6903014761756712 0.0000000000000000
0.0000000000000000 0.0000000000000000 5.6903014761756712
Na Cl
4 4
Direct
0.0000000000000000 0.0000000000000000 0.0000000000000000
0.0000000000000000 0.5000000000000000 0.5000000000000000
0.5000000000000000 0.0000000000000000 0.5000000000000000
0.5000000000000000 0.5000000000000000 0.0000000000000000
0.5000000000000000 0.5000000000000000 0.5000000000000000
0.5000000000000000 0.0000000000000000 0.0000000000000000
0.0000000000000000 0.5000000000000000 0.0000000000000000
0.0000000000000000 0.0000000000000000 0.5000000000000000
(2) 采用Phonopy软件扩胞。
phonopy -d --dim ="2 2 2" -c POSCAR-unitcell
记下扩胞的大小2 2 2。得到disp.yamal、各POSCAR-00x及SPOSCAR文件。一般保证超胞中有~100原子。
三、vasp 计算力常数
cp SPOSCAR POSCAR
准备 KPOINTS、POTCAR 和 INCAR,进行 vasp 计算。此时,应确保设置的KPOINTS产生的NKPTS个数达到20个左右,kmesh可取在0.04~0.05之间的某一数值。
PREC = Accurate
ENCUT = 500
IBRION = -1
NELMIN = 5
EDIFF = 1.0e-08 # 重要参数
IALGO = 38
ISMEAR = 0; SIGMA = 0.1
LREAL = .FALSE. # 重要参数
LWAVE = .FALSE.
LCHARG = .FALSE.
四、收集力常数
用 vasp 计算得到的 vasprun.xml 生成力常数文件 FORCE_CONSTANTS。
phonopy --fc vasprun.xml
五、phonopy后期处理:声子谱及热学性质
1. 声子谱
准备band.conf、FORCE_CONSTANTS、POSCAR-unitcell文件
# band.conf如下
ATOM_NAME = Na Cl
DIM = 2 2 2
PRIMITIVE_AXIS = 0.0 0.5 0.5 0.5 0.0 0.5 0.5 0.5 0.0 # convert to primitive cell
BAND = 0.0 0.0 0.0 0.5 0.0 0.0 0.5 0.5 0.0 0.0 0.0 0.0 0.5 0.5 0.5
FORCE_CONSTANTS = READ
Note:
DIM #同扩胞设置一致。
PRIMITIVE_AXIS #将超胞转为原胞的矩阵,画出原胞声子谱。若POSCAR-unitcell已经是原胞结构,可以不设置。
BAND #声子谱路径,同能带路径。三个数字一组一个高对称点位置。
画图
1) phonopy -p --dim="2 2 2" -c POSCAR-unitcell band.conf 得到band.yaml
2) phonopy-bandplot --gnuplot > PhononBAND.dat 将band.yaml转化为可用orgin绘图的数据文件。
2. 声子态密度
准备mesh.conf、FORCE_CONSTANTS、POSCAR-unitcell文件
# mesh.conf
ATOM_NAME = Na Cl
DIM = 2 2 2
MP = 8 8 8
Note:
DIM #同扩胞设置一致。
画图
phonopy -p --dim="2 2 2" -c POSCAR-unitcell mesh.conf #dos plot
phonopy -t --dim="2 2 2" -c POSCAR-unitcell mesh.conf #thermal properties print
phonopy -t -p --dim="2 2 2" -c POSCAR-unitcell mesh.conf #thermal properties print and plot
3. 声子投影态密度
准备pdos.conf、FORCE_CONSTANTS、POSCAR-unitcell文件
# pdos.conf
ATOM_NAME =Na Cl
DIM = 2 2 2
MP = 8 8 8
PDOS = 1 2 3 4, 5 6 7 8
Note:
DIM #同扩胞设置一致。
PDOS #将位置1234原子的dos画在一起位置5678原子的dos图画在一起
画图
phonopy -p --dim="2 2 2" -c POSCAR-unitcell pdos.conf
参考:
https://atztogo.github.io/phonopy/vasp-dfpt.html
https://atztogo.github.io/phonopy/vasp.html
http://blog.sciencenet.cn/blog-567091-675178.html
评论
嘻嘻

干货推荐

计算机材料设计Materials-Studio教程11
活着
34 1

顶级期刊子刊的含金量怎么样?
九妹
41 1

Codex + Zotero + Obsidian,研究生真的可以构建自己的个人论文知识库
海山了
116 2

电镜的局限性
Mr弘🔬
82 6

lammps中文教程12
春风得意马蹄疾
86 2

神经元、星形胶质细胞、少突胶质细胞、小胶质细胞组织学区分
Mr弘🔬
90 7
