来源
#phonopy 可以随意打开一个conda 环境进行安装,我自己安装到了wnw_pyw90上。
密度泛函微软理论/线性响应方法 (DFPT)
必要的输入文件:
INCAR
KPOINTS
POSCAR1
POTCAR
band.conf
1 扩胞得到计算所需的POSCAR
vaspkit 401 可以直接创建超胞
#在Linux终端直接运行命令
#1. 生成超胞
phonopy -d --dim="2 2 1" -c POSCAR1 #--dim='2 2 1'表示'x y z'方扩的大小
#2. 将生成的SPOSCAR拷贝成POSCAR
cp SPOSCAR POSCAR
2 提交VASP计算
INCAR设置如下: EDIFF = 1E-08 精度一定高一点,不然虚频很大
发现vaspkit 可直接生成计算phono的INCAR vaspkit 101 PY
ISMEAR = 0 (Gaussian smearing)
SIGMA = 0.1 (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 = 520 (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)
NCAR=4
K-Spacing Value to Generate K-Mesh: 0.040
0
Gamma
3 3 1
0.0 0.0 0.0
提交VASP计算
3 计算声子谱
准备band.conf文件,如下所示:(参数含义详见phonopy官网)
ATOM_NAME =Al S
DIM = 2 2 1
BAND=0.0000000000 0.0000000000 0.0000000000 0.3333333333 0.3333333333 0.0000000000 0.5000000000 0.0000000000 0.0000000000 0.0000000000 0.0000000000 0.0000000000
BAND_LABELS = $\Gamma$ K M $\Gamma$
FORCE_CONSTANTS= READ
提交命令 PBS bsub<sub (me)
获取声子谱后处理步骤
#直接在终端运行
#1. 提取力常数,得到FORCE_CONSTANTS文件。
phonopy --fc vasprun.xml
#2. 计算声子谱
phonopy --dim='2 2 1' -c POSCAR1 band.conf
#3. 将声子谱进一步输出为数据文件,用于其它软件画图。
#新版本phonopy
phonopy-bandplot --gnuplot > phonopy.out
最后gnuplot -p phonopy.gnu绘图
画图脚本 phonopy.gnu
高对称点坐标(在phonopy.out的第一行)
#0.00000000 0.19034020 0.28551030 0.45034980 高对称点坐标(在phonopy.out的第一行)
#0.00000000 0.18586310 0.27879460 0.43975670
xmin= 0
xmax=0.44
ymin=-2
ymax=14
set xrange [xmin:xmax]
set yrange [ymin:ymax]
G=0
M=0.185
K=0.28
set arrow 1 from xmin,0 to xmax,0 nohead dashty 2
set arrow 2 from K, ymin to K, ymax nohead dashty 2
set arrow 2 from M, ymin to M, ymax nohead dashty 2
#set arrow 3 from 0, 1.9 to 3.110,1.9 nohead dashty 2
set xtics ("{/symbol G}" xmin, "M" M, "K" K,"{/symbol G}" xmax)
set ylabel 'Thz'
set xtics nomirror ###右上无刻度线
set ytics nomirror
set xlabel font "Times New Roman,,25" offset 0,0.5
set ylabel font "Times New Roman,25" offset 0.1,0
set xtics font "Times New Roman,18"
set ytics font "Times New Roman,18"
set key font "Times New Roman, 18"
set key outside ###将key 放在外面
set key right top
plot\
'phonopy.out' u 1:2 w l linewidth 2 lc rgb 'blue' title 'phonopy'