前言
能带结构是目前采用第一性原理计算所得到的常用信息,可用来结合解释金属、半导体和绝缘体的区别。能带用来定性地阐明了晶体中电子运动的普遍特点。价带,或称价电带,通常指绝对零度时,固体材料里电子的最高能量。在导带中,电子的能量范围高于价带,而所有在传导带中的电子均可经由外在的电场加速而形成电流。对与半导体以及绝缘体而言,价带的上方有一个能隙,能隙上方的能带则是传导带,电子进入传导带后才能在固体材料内自由移动,形成电流。对金属而言,则没有能隙介于价带与传导带之间,因此价带是特指半导体与绝缘体的状况。原则上讲,态密度可以作为能带结构的一个可视化结果。很多分析和能带的分析结果可以一一对应,很多术语也和能带分析相通。但是因为它更直观,因此在结果讨论中用得比能带分析更广泛一些。本文主要讲解使用VASP计算BN能带和态密度。
一、前期准备
需要使用VASP、vaspkit、Originlab
vasp的准备,需要INCAR(控制文件),POSCAR(晶格位置文件或者结构文件),POTCAR(赝势文件),KPOINTS(是k点路径),四个输入文件以及一个运行文件。只要有了POSCAR其他的三个文件可以可以通过vaspkit得到。其中赝势文件是提前导入设置好路径。
二、计算流程
1.静态自洽(scf)
新建一个文件夹scf,INCAR可以简单设置为如下
Global Parameters
ISTART = 1 (Read existing wavefunction; if there)
# ISPIN = 2 (Spin polarised DFT)
# ICHARG = 11 (Non-self-consistent: GGA/LDA band structures)
LREAL = Auto (Projection operators: automatic)
# ENCUT = 400 (Cut-off energy for plane wave basis set, in eV)
PREC = Normal (Precision level)
LWAVE = .TRUE. (Write WAVECAR or not)
LCHARG = .TRUE. (Write CHGCAR or not)
ADDGRID= .TRUE. (Increase grid; helps GGA convergence)
# LVTOT = .TRUE. (Write total electrostatic potential into LOCPOT or not)
# LVHAR = .TRUE. (Write ionic + Hartree electrostatic potential into LOCPOT or not)
# NELECT = (No. of electrons: charged cells; be careful)
# LPLANE = .TRUE. (Real space distribution; supercells)
# NPAR = 4 (Max is no. nodes; don't set for hybrids)
# NWRITE = 2 (Medium-level output)
# KPAR = 2 (Divides k-grid into separate groups)
# NGX = 500 (FFT grid mesh density for nice charge/potential plots)
# NGY = 500 (FFT grid mesh density for nice charge/potential plots)
# NGZ = 500 (FFT grid mesh density for nice charge/potential plots)
Static Calculation
ISMEAR = 0 (gaussian smearing method)
SIGMA = 0.05 (please check the width of the smearing)
LORBIT = 11 (PAW radii for projected DOS)
NEDOS = 2001 (DOSCAR points)
NELM = 60 (Max electronic SCF steps)
EDIFF = 1E-08 (SCF energy convergence; in eV)
按照惯例准备四个输入文件INCAR、POSCAR、KPOINT、POTCAR。
都可以通过vaspkit得到
vaspkit输入103,根据POSCAR自动生成POTCAR
vaspkit输入102,根据POSCAR自动生成KPOINT
vaspkit输入1,根据POSCAR自动生成INCAR
准备好文件以后提交任务进行计算
计算完成后会得到CHGCAR文件
2.能带计算
1、新建一个名为band的文件夹,把scf文件夹中的INCAR、POSCAR、KPOINT、POTCAR、CHGCAR复制过来。
2、修改INCAR的内容
ISTART=1
ICHARG=11
LCHARG = .FALSE.
LORBIT=11 # or 10,算投影能带有用
3、使用vaspkit生成高对称点的KPOINTS文件
呼出vaspkit界面后直接输入302自动生成二维结构的高对称点路径,输入303生成三维块体结构的高对称点路径。
会生成一个KPATH.in文件,直接把它cp成KPOINTS文件,然后可以检查修改一下里面的内容:
完成后提交任务进行计算
4、导出作图数据
再次呼出vaspkit,直接输入211,即可生成可以导入OriginLab中绘图的数据BAND.dat。
5、Origin画图
把BAND.dat导入到Origin中做折线图
3.态密度计算
1、态密度计算和计算能带的做法一样,先新建一个目录,命名为dos,然后复制scf目录里面的INCAR、POSCAR、POTCAR、KPOINTS,CHGCAR过来。要修改一下INCAR,或者直接复制下面的INCAR。
Global Parameters
ISTART = 1 (Read existing wavefunction; if there)
ISPIN = 2 (Spin polarised DFT)
ICHARG = 11 (Non-self-consistent: GGA/LDA band structures)
LREAL = Auto (Projection operators: automatic)
# ENCUT = 400 (Cut-off energy for plane wave basis set, in eV)
PREC = Normal (Precision level)
LWAVE = .FALSE. (Write WAVECAR or not)
LCHARG = .TRUE. (Write CHGCAR or not)
ADDGRID= .TRUE. (Increase grid; helps GGA convergence)
LVTOT = .TRUE. (Write total electrostatic potential into LOCPOT or not)
# LVHAR = .TRUE. (Write ionic + Hartree electrostatic potential into LOCPOT or not)
# NELECT = (No. of electrons: charged cells; be careful)
# LPLANE = .TRUE. (Real space distribution; supercells)
# NPAR = 4 (Max is no. nodes; don't set for hybrids)
# NWRITE = 2 (Medium-level output)
# KPAR = 2 (Divides k-grid into separate groups)
# NGX = 500 (FFT grid mesh density for nice charge/potential plots)
# NGY = 500 (FFT grid mesh density for nice charge/potential plots)
# NGZ = 500 (FFT grid mesh density for nice charge/potential plots)
Static Calculation
ISMEAR = 0 (gaussian smearing method)
SIGMA = 0.05 (please check the width of the smearing)
LORBIT = 11 (PAW radii for projected DOS)
NEDOS = 2001 (DOSCAR points)
NELM = 60 (Max electronic SCF steps)
EDIFF = 1E-08 (SCF energy convergence; in eV)
EMIN = -10
EMAX = 10
KPOINTS要设置得比原来做scf的时候要高。这次设成SCF计算的两倍,20-40之间。其他的输入文件不用改。
2、绘制DOS图
打开vaspkit,输入111即可导出TDOS.dat文件,用于绘制DOS图。
总结
本文只是个人刚学习VASP的一点心得体会。在VASP上肯定还有很多不足的地方需要不断改进学习,在此做一点点小小的记录。