title = “VASP mbj” date = 2021-09-14T18:20:31+08:00 draft = false author = “parkman” description = “VASP 学习” featured = true categories = [ ] tags = [‘VASP’,‘DFT’ ] series = [ ] aliases = [] images = [] toc = true math = true +++
今天来学习一下 vasp的mbj计算
mBJ是modified Becke Johnson的缩写。 Becke指的是 Axel D.Becke,Johnson则是他的原学生、现同事Erin R. Johnson
mBJ 的发展历程
先看一下HSE
严格的DFT交换关联泛函应该是依赖于电子数变化所导致的阶跃变化的电荷密度的,本质上是不连续的,而我们通常把这玩意做成连续的了,就是所谓的derivative discontinuity问题 自相互作用误差(self-interaction error, SIE),简而言之DFT存在过度离域化的占据态而Hartree-Fock (HF) 存在过度离域化空态的问题。这样的结果就是他们俩一个推高了占据态能量,而另一个推高了空态的能量,相当于一个低估、一个高估了能隙。实践中大家会用HSE泛函,引入了25%的HF exchange和DFT混合在一起来“对付”这个问题。
这里的25%是从PBE0继承过来的,HSE的无屏蔽极限就是PBE0。PBE0里这个25%则是John Perdew大神(没错就是PBE的P)通过细致的观察和敏锐的洞察力给出来的。他把HF的占比写为1/n的形式,而n可以跟多体微扰修正阶数联系起来。对于大部分 闭壳层分子 而言,MP4(四阶多体微扰修正)已经足够准确了,就有了25%(0.25)这个系数。
HSE的加速
2006 Becke 和 Johnson
J. Chem. Phys. 124, 221101 (2006); https://doi.org/10.1063/1.2213970
2009 Peter Blaha 和 Fabien Tran
VASP mbj 计算流程
1) 用GGA/LDA/VDW-DF等做结构优化
2) 做LDA/GGA总能计算,写下波函数
3) 读前面的波函数,做自洽的mBJ计算
4) 微扰 mBJ
VASP mbj 例子
微扰
SCF
SCF+BAND
用VASPKIT303和251产生KPOINTS文件,同时包含布里渊区撒点的K点K-mesh和高对称点连线K-path。K-mesh使用正常的权重,K-path使用0权重。(和HSE一样)
1 echo 303 > vaspkit
2 修改 Kpath.in 文件
3 echo 251;echo 2 ;echo 0.03;echo 0.04 >vaspkit
one step MBJ
ICHARG = 0
NELM = 1
NELMDL = 1
METAGGA = MBJ
extract cmBJ
1grep CMBJ OUTCAR
exact diagonalization
CMBJ = <from last step OUTCAR>
ALGO = EXACT
full scf
接 SCF+BAND 的文件 ICHARG = 0 NELM = 200(>200) METAGGA = MBJ LASPH = .TRUE.
HSE
同样接 SCF+BAND 的文件
# HSE
ICHARG = 1
LHFCALC = .TRUE.
AEXX = 0.25
HFSCREEN = 0.2
ALGO = Damped # or Damped
TIME = 0.4