這里主要討論一下用vasp對二維材料的hse+soc對能帶剪刀操作的過程歇万。
1. 結構優(yōu)化
我們對材料Ag2Br2進行結構優(yōu)化蒜鸡,結構與優(yōu)化的參數(shù)如下:
image.png
- 進行了分步優(yōu)化婶芭,下面為最后一步的優(yōu)化參數(shù)
SYSTEM = stepOpt6
NPAR = 4
ALGO = Normal # Fast;Normal
LREAL = .FALSE.
#LPLANE = .TRUE.
PREC = Accurate
#AMIN = 0.01
#ISYM = 0
##2_INIT_input
ISTART = 0
ICHARG = 2
##3_ELECTRON
NELM = 200
NELMIN = 5
EDIFF = 1e-6
ISMEAR = 0
SIGMA = 0.05
#LMAXMIX = 4
ENCUT = 600
ISPIN =1
##4_IONS
NSW = 200
IBRION = 2
POTIM = 0.5
ISIF = 3
EDIFFG = -0.001
ADDGRID = .TRUE.
##5_Kmesh
KSPACING = 0.189
##6_Output
LWAVE = .False.
LCHARG = .False.
LORBIT = 11
####optB86-vdw####
GGA = MK
PARAM1 = 0.1234
PARAM2 = 1.0000
LUSE_VDW = .True.
AGGAC = 0.0000
2.自洽(即輸出波函數(shù)和電荷密度)
- 這里考慮到后續(xù)的真空層對齊,因而打開了靜電勢的開關LVHAR(此tag的詳細的問題可以參照這個鏈接)
##1_system
SYSTEM = stepOpt6
NPAR = 4
ALGO = Normal # Fast;Normal
LREAL = .FALSE.
#LPLANE = .TRUE.
PREC = Accurate
#AMIN = 0.01
#ISYM = 0
##2_INIT_input
ISTART = 0
ICHARG = 2
##3_ELECTRON
NELM = 200
NELMIN = 5
EDIFF = 1e-6
ISMEAR = 0
SIGMA = 0.05
#LMAXMIX = 4
ENCUT = 600
#ISPIN =1
##4_IONS
NSW = 0
IBRION = -1
POTIM = 0.5
ISIF = 2
EDIFFG = -0.001
ADDGRID = .TRUE.
##5_Kmesh
#KSPACING = 0.189
##6_Output
LWAVE = .True.
LCHARG = .True.
LORBIT = 11
####optB86-vdw####
GGA = MK
PARAM1 = 0.1234
PARAM2 = 1.0000
LUSE_VDW = .True.
AGGAC = 0.0000
#### Add Parameters ####
LVHAR = .True.
3. pbe的band計算
- band計算的時候根據(jù)高對稱點自己線性插值生成高對稱路徑k點
SYSTEM = stepOpt6
NPAR = 4
ALGO = Normal # Fast;Normal
LREAL = .FALSE.
#LPLANE = .TRUE.
PREC = Accurate
#AMIN = 0.01
#ISYM = 0
##2_INIT_input
ISTART = 1
ICHARG = 11
##3_ELECTRON
NELM = 200
NELMIN = 5
EDIFF = 1e-6
ISMEAR = 0
SIGMA = 0.05
#LMAXMIX = 4
ENCUT = 600
ISPIN =1
##4_IONS
NSW = 0
IBRION = -1
POTIM = 0.5
ISIF = 2
EDIFFG = -0.001
ADDGRID = .TRUE.
##5_Kmesh
#KSPACING = 0.189
##6_Output
LWAVE = .False.
LCHARG = .False.
LORBIT = 11
####optB86-vdw####
GGA = MK
PARAM1 = 0.1234
PARAM2 = 1.0000
LUSE_VDW = .True.
AGGAC = 0.0000
4. HSE+SOC(進入正題)
由于PBE存在低估帶隙的問題楞艾,因而需要考慮僅HSE的計算参咙,另外在批量計算的時候,我們可能要引入SOC來保證計算的嚴謹性硫眯。
但需要注意的是蕴侧,即便對于我所計算的二維材料(僅有4個原子),當仍然面對該類計算相當耗費算力两入。不廢話净宵,直接說一些測試下來,必然對的點:
- k點會顯著影響計算速度,大致呈現(xiàn)
的時間效率;
- 相同k點數(shù)下塘娶,讀取用PBE得到的WAVECAR將節(jié)省~60-70%的計算時間(相較自己撒點);
- ENCUT對于計算速度也有較大影響需要進行測試
- 此類計算只需要讀取WAVECAR(ISTART = 1)不需要讀取(ICHARGE = 2)
首先需要做一步帶SOC的自洽計算:
SYSTEM = stepOpt6
NPAR = 4
ALGO = Normal # Fast;Normal
LREAL = .False.
LPLANE = .False.
PREC = Accurate
#AMIN = 0.01
#ISYM = -1
##2_INIT_input
ISTART = 0
ICHARG = 12
##3_ELECTRON
NELM = 200
NELMIN = 5
EDIFF = 1e-6
ISMEAR = 0
SIGMA = 0.05
#LMAXMIX = 4
ENCUT = 325
#ISPIN =1
##4_IONS
NSW = 0
IBRION = -1
POTIM = 0.5
ISIF = 2
EDIFFG = -0.001
ADDGRID = .TRUE.
##5_Kmesh
KSPACING = 0.4
##6_Output
LWAVE = .True.
LCHARG = .True.
LORBIT = 11
####optB86-vdw####
#GGA = MK
#PARAM1 = 0.1234
#PARAM2 = 1.0000
#LUSE_VDW = .True.
#AGGAC = 0.0000
#### Add Parameters ####
#LVHAR = .True.
#### mbj ####
#METAGGA = MBJ
#LASPH = .TRUE.
#LMIXTAU = .TRUE.
#### mix wave####
#IMIX = 1
#AMIX = 0.2
#BMIX = 0.0000001
#### HSE ####
#LHFCALC = .TRUE.
#HFSCREEN = 0.2
#### SOC ####
LSORBIT = .TRUE.
SAXIS = 0 0 1
MAGMOM = 1000*0
GGA_COMPAT = .FALSE.
#---for slabs---#
#AMIX = 0.2
#BMIX = 0.00001
#LSCALAPACK = .FALSE.
隨后做能帶剪刀操作:
- 將
IBZKPT
文件負值為KPOINTS
同時加入PBE計算的帶邊K點(不要忘了改一下k點總數(shù)[+2])
下面給出測試結果的比較:
測試材料:Ag2Br2 (4原子) | ISTART = 1 | ISTART = 1 | ISTART = 0(自己撒點) | ISTART = 0(自己撒點) |
---|---|---|---|---|
ENCUT | 325 | 325 | 325 | 600 |
KSPACING | 0.45 | 0.4 | 自己撒點( |
自己撒點( |
K點數(shù)(不算帶邊k點) | 16 | 25 | 13 | 13 |
gap | 2.8935 | 2.8913 | 2.9043 | 2.9096 |
用時 | 3835.938 | 10405.274 | 8078.797 | 49828.280 |
因而可以發(fā)現(xiàn)測試下來只需要用KSPACING = 0.45
做+SOC
的自洽計算同時選取ENCUT = ENMAX*1.3
就能保證計算。
另外痊夭,需要注意的是在ISTART = 1
的計算中都出現(xiàn)了以下的問題刁岸,一開始嘗試解決,但發(fā)現(xiàn)后來最后能算出來她我。在不讀WAVECAR(ISTART = 0)
的計算中不會出現(xiàn)虹曙,可能與WAVEACR
的讀取有關。
image.png
5. 其他問題
對于收斂不了的情況番舆,可以試試混合態(tài)密度的優(yōu)化方式AMIX = 0.02 BMIX = 0.0000001
當打開LHFCALC = .TRUE.
時候酝碳,默認ISYM = 3
,所以如果再不行,比如遇到如下問題恨狈,可以嘗試ALGO = Damped
WARNING: Sub-Space-Matrix is not hermitian in DAV 40 6.53599947936788
WARNING: DENMP: can't reach specified precision Number of Electrons is NELECT = 22.0000000008318
1.25806886504639 Error EDDDAV: Call to ZHEGV failed. Returncode = 16 2 16