usepawu1 #use DFT + U method. one (for the FLL method)and two (for the AMF method)
lpawu2-1-1 # 2 for d-orbit, 3 for f-orbit, -1 not use,角动量
upawu4.00.0.eV #不同元素的U值,这里是三个类型原子,第一个元素加入4 eV U值
#thescreened Coulomb interaction between electrons
jpawu0.00.0. #J值, the screened exchange interaction
加入这4个变量即可,对于更复杂和精确的设置,加入dmatpawu 和usedmatpu参数,设置角动量分量的密度矩阵。upawu和jpawu分别设置U值和J值,默认为Hartree单位,所以要注明eV单位,不加U的原子设为0,lpawu设置需要加U的原子以及轨道类型。
那么如何确认U值大小?一般查阅文献,根据经验,例如Fe原子,一般加4 eV,不确定的原子可以进行测试,比如使用不同U值进行弛豫,计算晶格常数和晶胞大小,与实验值进行比较确定合适的U值,也可以通过计算材料的性质如磁性、介电常数等与实验值比较确定合适的U值,在Abinit中也可以利用Cococcioni方法进行测试,就像在VASP中貌似有cRPA方法可以估算U值,Cococcioni方法如下,以铁原子为例,首先运行:
#Unit cell
acell 3*5.42
chkprim 0 # 0: donot check if uc primitive
rprim 1.000.000.00
0.001.000.00
0.000.001.00
#Spin polarization
nsppol 2 #1unpolarized / 2 polarized
spinat 00 2.843062
00 2.843062
#Definition of the atom types
ntypat 1
znucl 26
#Definition of the atoms
natom 2
typat 2*1 # atomic types
xred
0.00.00.0
0.50.50.5
ecut 8 # Energycutoff
pawecutdg 20 #pawecutdg > 2*ecut
nband 25 # Fe_2minband=17
#Definition of the SCF procedure
nstep 15 # max number SCF cycles
tolvrs10d-12
#Definition of the k-point grid
kptopt 1 # 1: automatic generation of k points
ngkpt 333 # n x n xn
nshiftk 1
shiftk 0.50.50.5
#Smearing
occopt 4
tsmear 0.05eV
#DFT+U
usepawu 1 # 1 at limdble cnt / 2 rnd m fld dle cnt
lpawu 2 # angmoments corrrected
#Save disk space & Miscelaneous
prteig 0
prtden 1 # This isthe default value
#PAW atomic data
outdata_prefix="tudet_1.o"
其次,把读取的波函数文件作为输入文件,运行:
# 2 atomic supercell
acell 3*5.42
chkprim 0 # 0: donot check if uc primitive
rprim 1.000.000.00
0.001.000.00
0.000.001.00
nsppol 2
#Definition of the atom types
ntypat 1
znucl 26
#Definition of the atoms
natom 2
typat 2*1 # atomic types
xred
0.00.00.0
0.50.50.5
ecut 8 # Energycutoff
pawecutdg 40 #pawecutdg > 2*ecut
nband 25 # Fe_2minband=17
#Definition of the k-point grid
kptopt 1 # 1: automatic generation of k points
ngkpt 333 # n x n xn
nshiftk 1
shiftk 0.50.50.5
#Smearing
occopt 4
tsmear 0.05eV
#DFT+U
usepawu 1 # 1 at limdble cnt / 2 rnd m fld dle cnt
lpawu 2 # angmoments corrrected
nsym 48 #nsym&symrel: break cubic symmetry of crystal: allow
#individual ionicoccupations
symrel 1 0 0 0 1 0 0 0 1 -1 0 0 0-1 0 0 0-1
-1 0 0 0 1 0 0 0-1 1 0 0 0-1 0 0 0 1
-1 0 0 0-1 0 0 0 1 1 0 0 0 1 0 0 0-1
1 0 0 0-1 0 0 0-1 -1 0 0 0 1 0 0 0 1
0 1 0 1 0 0 0 0 1 0-1 0 -1 0 0 0 0-1
0-1 0 1 0 0 0 0-1 0 1 0 -1 0 0 0 0 1
0-1 0 -1 0 0 0 0 1 0 1 0 1 0 0 0 0-1
0 1 0 -1 0 0 0 0-1 0-1 0 1 0 0 0 0 1
0 0 1 1 0 0 0 1 0 0 0-1 -1 0 0 0-1 0
0 0-1 1 0 0 0-1 0 0 0 1 -1 0 0 0 1 0
0 0-1 -1 0 0 0 1 0 0 0 1 1 0 0 0-1 0
0 0 1 -1 0 0 0-1 0 0 0-1 1 0 0 0 1 0
1 0 0 0 0 1 0 1 0 -1 0 0 0 0-1 0-1 0
-1 0 0 0 0 1 0-1 0 1 0 0 0 0-1 0 1 0
-1 0 0 0 0-1 0 1 0 1 0 0 0 0 1 0-1 0
1 0 0 0 0-1 0-1 0 -1 0 0 0 0 1 0 1 0
0 1 0 0 0 1 1 0 0 0-1 0 0 0-1 -1 0 0
0-1 0 0 0 1 -1 0 0 0 1 0 0 0-1 1 0 0
0-1 0 0 0-1 1 0 0 0 1 0 0 0 1 -1 0 0
0 1 0 0 0-1 -1 0 0 0-1 0 0 0 1 1 0 0
0 0 1 0 1 0 1 0 0 0 0-1 0-1 0 -1 0 0
0 0-1 0 1 0 -1 0 0 0 0 1 0-1 0 1 0 0
0 0-1 0-1 0 1 0 0 0 0 1 0 1 0 -1 0 0
0 0 1 0-1 0 -1 0 0 0 0-1 0 1 0 1 0 0
pawujat 1 # default,the atom on which U is determined
pawujv 0.1eV # default, size of the potential shift
macro_uj 1 # activatedetermination of U
pawujrad 2.66866 #optional, radius ASA-sphere to which U should be extrapolated
#Only to accelerate test
irdwfk 1 # defaultfor macro_uj = 1
# nline 2
# nnsclo 2
tolvrs 10d-9 # defaultfor macro_uj = 1
#Save disk space
prteig 0
prtwf 0
prtden 0
#PAW atomic data
indata_prefix="tudet_1.o"
对于老版本的Abinit,outdata_prefix和indata_prefix均读不出来,所以可以删掉这两行,要在第二次计算时读入第一次计算的文件,只需将abo.复制为abi.即可。
最后在输出的.out文件中找到计算的U值:
URES ii nat r_max U(J)[eV] U_ASA[eV] U_inf[eV]
URES 1 2 4.69390 3.86321 3.10851 2.71778
URES 2 16 9.38770 7.28015 5.85793 5.12160
URES 3 54 14.08160 7.60761 6.12142 5.35197
URES 4 128 18.77540 7.67652 6.17686 5.40045
URES 5 250 23.46930 7.69879 6.19478 5.41611
nat代表原子数,其中包含了不同的超胞,U(J)即为计算的U值。