2.3.5 静态自洽计算SCF不收敛怎么办#
对于某些复杂体系,尤其是含有d/f电子的金属元素,或者考虑DFT+U以及磁性时,很容易遇到SCF不收敛的情况,即OSZICAR文件中第三列dE始终没法小于INCAR中预设的EDIFF。VASP在计算达到最大电子步(NELM参数)时,无论计算是否收敛,最后都会输出体系的能量和原子的力,以及压强等信息。此时这些信息都是不对的,因为计算根本没收敛。如果dE迭代到了1E-3量级,结果或许还有一定可信度。
SCF不收敛分两种情况,一种是已经迭代了60多步了,但是OSZICAR中dE在1E-3或者-2附近变化,却始终无法达到EDIFF,此时增加NELM步数效果不大;一种是dE直接发散,变成了1E+2量级。解决电子步不收敛的思路优先级如下(个人经验):
(1) 检查POSCAR是否合理,比如原子重叠或者距离非常近,可以用vesta画原子之间的bond来找是否有距离很近(比如小于0.3Å)的原子。同时,检查POTCAR的元素顺序是否和POSCAR对应。
(2) 确保你没有读取错误或者不合理的初始电荷密度或者波函数,检查ISTART和ICHARG参数,以及被读取的CHGCAR和WAVECAR。
(3) 修改INCAR中的ALGO参数,ALGO默认是N,改为F或ALL试试。如果是杂化泛函,考虑Damped。也可以修改IALGO参数,具体见官网。
(4) 增加INCAR中的NBANDS参数,默认是价电子数的0.6倍,可以考虑增加到0.7或者0.8;价电子数在vaspkit-103生成POTCAR时会显示。注意,价电子数和元素的POTCAR有关,有的元素有多个不同价电子数的POTCAR,根据自己的需要选择,并得到相应的价电子数。
(5) 磁性体系的计算,设置合理的初始磁矩(需要经验)
(6) INCAR中加入AMIX=0.2(默认0.4);BMIX=0.0001; 磁性体系就在上述两个参数基础上额外添加AMIX MAG=0.8(默认1.6),BMIX MAG=0.0001;或者不断调整这些参数的值,参数具体调整思路可以网上搜索。
(7) 查找网上的经验帖:
刘锦程博士的blog:https://blog.shishiruqi.com/2019/05/01/scf/
“大师兄”的教程:https://lvaspthw.readthedocs.io/en/latest/TS/TS01/
(8) 最后,找组里师兄师姐寻求建议。