Vasp+phonopy 计算声子谱

来源

VASP计算笔记-声子谱计算 - 知乎

#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'

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值