1.计算。在静态计算中,加入以下参数,其中NGX参数与POSCAR中的晶格参数成比例,太小bader计算不会收敛,所以,要收敛之后,结果才可靠。
#bader charge
LAECHG=.TRUE.
NGX=100
NGY=100
NGZ=200
NGXF=150
NGYF=150
NGZF=300
2.算完之后,生成文件AECCAR0 AECCAR1 AECCAR2
将chgsum脚本上传到计算文件夹
将其变成可执行脚本:chmod 777 chgsum.pl
然后使用命令:./chgsum.pl AECCAR0 AECCAR2
生成CHARGCAR_sum文件
3.将chgsum脚本上传到计算文件夹
然后将bader变成可执行文件: chmod 777 bader
输入命令:./bader CHGCAR -ref CHGCAR_sum
生成文件: ACF.dat AVF.dat BCF.dat
ACF.dat 就包含价电子的电荷信息:
4.判断计算的可靠性
把ACF.dat文件拖到Origin中,CHARGE这一列的数字就是每个原子对应的电荷,而最下面那一行,NUMBER OF ELECTRONS:126,代表整个体系的总电量有126e。
我们可以通过对比总电量和所有原子加和电量之间的差值来判断是否收敛:
我们把CHGCAR这一列数据复制到Excel中,选中所有数据,按求和符号,或者在另一个格子中输入=sum(),Enter,得到总电荷是125.9585
126 - 125.9585 = 0.0415 (e) 0.0415 / 126 = 0.03 %
我们发现:CHGCAR这一列数据这和+VACUUM CHARGE这个数值=NUMBER OF ELECTRONS
而VACUUM CHARGE这个值是真空的电荷,如果这个值不为零,就意味这个有电子转移到真空中。
标准的情况应该是:
所以,判断bader计算是否收敛,也可以通过判断VACUUM CHARGE这个值是否为0来判断。
5.应用:怎么用bader分析研究体系的电荷转移总量。
首先,我们可以从ACF.dat文件的最后一行NUMBER OF ELECTRONS知道这个体系的总电量。
我们计算一个体系在电荷转移前后的bader电荷,然后在ACF文件中读取其电量。如果两个文件中的原子数相等,就可以直接作差,得到电荷转移的量,如果原子数不同,就拿对应原子的电量作差。