chempeng

VASP的能带计算与绘图

chempeng / 2017-01-04


使用的软件:VASP, Origin, EidtPlus 辅助分析计算的小程序:gk.x, pbnf.x

一 能带计算

1 结构优化

建立opt文件夹,编辑以下文件:

INCAR

SYSTEM=x # x为注释名
ISTART=0
ENCUT=350
EDIFF=1E-5
IBRION=2
POTIM=0.25
NSW=100
EDIFFG=-1E-2
ISMEAR=0
SIGMA=0.05
PREC=ACCURATE
ISIF=2
NPAR=4
LWAVE=FALSE
LCHARG=FALSE
LREAL=Auto
IALGO=48
ISYM=0

KPOINTS

auto
0
Monkhorst
x y z # x y z 为K点选取
0 0 0

POSCAR

导入在 Materials Studio 中转换的坐标信息

POTCAR

导入赝势库中的原子信息,例:GeS

cat ~/xxx/PBE/Ge/POTCAR > POTCAR # ~/xxx 为赝势库存放路径
cat ~/xxx/PBE/S/POTCAR >> POTCAR # 原子赝势导入顺序以POSCAR中为准

如果是集群,还需提交作业的脚本 vasp.job 如下

#!/bin/bash
#PBS -N vasp
#PBS -o job.log
#PBS -e job.err
#PBS -q batch
#PBS -l walltime=100:00:00
#PBS -l nodes=1:ppn=8

source ~/.bashrc
cd ~/xxx # ~/xxx 为文件路径
mpirun -np 8 vasp > out </dev/null

提交作业

qsub vasp.job

计算结束后,cat out 查看体系是否收敛,如收敛则进入下一步计算。

2 静态自洽计算

在 opt 文件夹下建立 scf 文件夹,编辑以下文件

INCAR

SYSTEM=x
ISTART=0
ENCUT=350
EDIFF=1E-5
IBRION=2
POTIM=0.25
NSW=0 # 修改
EDIFFG=-1E-2
ISMEAR=0
SIGMA=0.05
PREC=ACCURATE
ISIF=2
NPAR=4
#LWAVE=FALSE # 修改
#LCHARG=FALSE # 修改
LREAL=Auto
#IALGO=48 # 修改
ISYM=0

KPOINTS

auto
0
Monkhorst
x y z # 较opt选取,k值增大
0 0 0

POSCAR和POTCAT

cp ../CONTCAR POSCAR
cp ../POTCAR .

提交作业,产生WAVECAR进行下一步计算

3 能带计算

在 opt 文件夹下拷贝建立 band 文件夹

cp -rf scf band

编辑 band 下文件

INCAR

SYSTEM=x
ISTART=1 # 修改
ICHARG=11 # 从CHGCAR中读入电荷分布,并且在计算中保持不变
LORBIT=10 # 增加
ENCUT=350
EDIFF=1E-5
IBRION=2
POTIM=0.25
NSW=0
EDIFFG=-1E-2
ISMEAR=0
SIGMA=0.05
PREC=ACCURATE
ISIF=2
NPAR=4
LWAVE=FALSE # 修改
#LCHARG=FALSE
LREAL=Auto
#IALGO=48
ISYM=0

KPOINTS

1. 设置环境变量

vi ~/.bashrc
alias gk="~/software/ktool/gk.x"
alias pb="~/software/ktool/pbnf.x"
alias f="grep E-fermi OUTCAR"
alias lv="grep -A3 'lattice vectors' OUTCAR"
source ~/.bashrc

2. 编辑syml文件,例:

5 # 高对称点数目
20 20 20 20 # 高对称点间隔取点数目
G 0.0    0.0    0.0
M 0.5    0.0    0.0
K 0.5    0.0    0.5
Z 0.0    0.0    0.5
G 0.0    0.0    0.0 # 高对称点选取
    12.840000153  0.000000000  0.000000000     0.077881619  0.000000000  0.000000000
     0.000000000 10.406299591  0.000000000     0.000000000  0.096095638  0.000000000
     0.000000000  0.000000000 39.669998169     0.000000000  0.000000000  0.025207967 # 实坐标与虚坐标
-20.0 20.0 # 取值范围
-0.0460 # 费米能级

实坐标与虚坐标通过命令lv得到,费米能级通过命令f得到,高对称点可查阅参考文献选取。

4 KPOINTS的获取与编辑

输入命令gk获取KOINTS文件,若文件后有多行零,则删去,且第二行数据减去相应删去行数。

提交作业,计算结束后生成 EIGENVAL 文件,输入命令pb得到能带数据文件 bnd.dat 和 highk.dat,将数据导入Origin绘图。

二 能带绘图

将能带数据文件 bnd.dat 和 highk.dat 导入Origin, 前两列为 bnd.dat 数据,后两列为 highk.dat 数据,格式如图,可使用 EditPlus 进行数据编辑。

参考资料

  1. VASP 软件包的使用入门指南