VASP中文网站 > 使用教程 > VASP电子步收敛太慢怎么办 VASP电子步混合参数怎么调整
VASP电子步收敛太慢怎么办 VASP电子步混合参数怎么调整
发布时间:2026/06/29 15:34:35

  在VASP做计算的时候,电子步老是一会儿往上跳一会儿往下掉,能量来回摆动,或者每个离子步都跑到NELM设置的最大步数,这种情况往往不只有一个原因,而是好几项参数合在一起造成的。想要弄明白电子步收敛太慢该怎么办,以及电子步里的混合参数要往哪个方向去调,就得先看看计算的体系是什么类型,初始电荷给得合不合理,展宽方式是怎么样选的,还有混合的稳定性这些地方有没有出毛病。VASP官方的文档里也专门提过,往一个方向拉得很长的晶胞,特别容易出现电荷在两头来回晃的现象,而电子的收敛效果跟密度混合到底是怎么设的,关系非常紧密。

  一、VASP电子步收敛太慢怎么办

 

  电子步跑得慢,很多人头一个想到的是把NELM那个最大步数调大一点,但这样做只是在允许程序多绕几圈,并不会把引起震荡的那些根本原因给解决掉,所以动手之前,最好先从下面几个地方开始查。

 

  1、先检查结构和输入文件

 

  首先可以把POSCAR文件打开看一看,确认里面没有把两个原子几乎叠在一块儿,POTCAR里面元素的顺序是不是跟着POSCAR走的,KPOINTS的网格密度是不是给得特别稀疏,以及ENCUT的截断能是不是也没有设得太离谱;一旦结构本身就存在比较大的问题,电子步的收敛自然就会跟着变得吃力起来,这是没办法绕过去的头一关。

 

  2、调整ALGO这个电子步算法

 

  对于一般性质的体系,用VASP自己默认的算法常常就够了;但假如用上了RMM-DIIS却一直不稳定,那就可以试试把它改成ALGO=Normal;而碰到绝缘体,或者某些一直不太容易收敛的体系,也可以拿ALGO=All来测试一下,不过有一点要特别注意,就是别一下子同时改动好几个参数,不然到头来你也弄不清楚究竟是哪一项在起作用,排查就没了方向。

 

  3、把初始电荷的状况处理好

 

  很多时候,我们是从前面算出来的WAVECAR或者CHGCAR文件接着往下跑的,但如果前一步留下来的电子态本身就不靠谱,那就会把整个后续的自洽过程带到一条歪路上去;VASP官方的排查建议里面也提到过,可以尝试先从一个没有做自旋极化的电荷密度开始,或者干脆把旧的WAVECAR删掉,用ISTART=0、ICHARG=1重新让程序生成一套初始密度,这样往往能把前面积累的问题一笔勾销。

 

  4、检查用在金属上的展宽设置

 

  对于金属体系,ISMEAR算电子占据数的方式,还有SIGMA展宽的宽度,如果选得不太对头,电子步就特别容易发生抖动;一个比较稳妥的做法是,先挑一套比较稳的展宽设置做一次预收敛,等电子结构大致稳当了,再把它收紧成精度更高的参数去跑最终的静态计算,这样比一开始就硬碰硬要顺畅不少。

 

  二、VASP电子步混合参数怎么调整

 

  混合参数管的主要是新的一步电荷密度要拿多少比例跟旧的那步去搭配使用,当体系出现震荡的时候,通常都要把混合的强度往下降一降,让电荷的变化速度放慢一些,免得步子迈得太大直接晃出去。

 

  1、先把AMIX这个线性混合比例降下来

 

  AMIX管的就是新旧密度线性混合的比例系数,碰到金属、界面,或者真空层留得比较大的体系,电荷密度自己就很容易晃,这时候可以把AMIX从程序默认的那个数值往下调,比如降到0.1、0.05,甚至更低一些;VASP在说明IMIX的地方也讲到了,金属体系的AMIX本来就该取小一点,像0.02这种数量级,虽然收敛步数会变多,但步子走得稳。

  2、实在不行再上近似线性混合的处理

 

  在VASP官方关于电子步收敛的排查建议里面,给出了一套偏保守的做法,就是把BMIX和BMIX_MAG这两个参数都设成一个很小的值,比如0.0001,同时再把AMIX和AMIX_MAG也降下来,让混合过程变得更慢更平稳,等到体系被慢慢拉到能收敛的状态以后,再回过头按照实际需要把参数调得高效一些,这种思路很适合那些怎么都不肯收敛的系统。

 

  3、给磁性体系单独调整磁的混合参数

 

  当体系带磁性的时候,收敛过程里面出现的震荡不单单是电荷密度在晃,有时候磁矩也在那儿翻来覆去地反转;所以这种时候光调AMIX还不够,还得把AMIX_MAG也同时往下调一调,而且在输入文件里最好给一个合理的MAGMOM初始磁矩,要是磁矩初值填得乱七八糟,混合参数再怎么改,收敛也还是很难稳住。

 

  4、利用OUTCAR来判断下一步怎么动

 

  可以在跑完的计算里去搜索OUTCAR里面的关键词,比如mixing eigenvalues或者GAMMA这些信息,VASP官方的AMIX说明页面里讲过,如果平均特征值靠近1,而且谱宽比较窄,那就说明混合情况是比较理想的;反过来,如果用的是线性混合,还可以拿当前的AMIX乘上平均特征值,估算出一个更合适的AMIX来,这样比盲目试探要科学得多。

 

  三、VASP电子步调整后怎么验证

 

  各项参数改完一轮之后,不能光看最后计算是不是顺利停下来了,而是要认真盯一盯收敛曲线是不是真正走得平稳了,不然很可能只是勉强压住了表象,底下还藏着毛病。

 

  1、观察电子步里能量的变化趋势

 

  电子步一路算下来的能量应该是慢慢地越走越平的,如果出现能量大幅度地跳来跳去,一会儿上去一会儿下来,那就说明要么混合还是调得太猛,要么初始的结构、磁态或者展宽这类设置仍然有不合适的地方,这个时候就得顺着这种表现继续往深里挖。

 

  2、别盲目地放松EDIFF

 

  EDIFF收得松一点,确实能让计算更快地停下来,不过它拿到的结果精度也会跟着打折扣,在预优化的阶段把精度稍微放宽一些是可以的,但到了正式比较不同构型能量的时候,还是要回到统一且相对严格的收敛标准上去,不同步长的结果放在一起不统一的话,结论也不太牢靠。

 

  3、分阶段分步骤去算

 

  那些很难一口气收敛的体系,可以把它拆成几个步骤来做,先弄一次低精度的预收敛,把体系大概的电子结构稳下来,再慢慢提高ENCUT和K点,并把收敛标准收严;如果体系有磁性,也可以先做一次非自旋的计算来拿一套比较合理的电荷密度,再用这份收敛过的电荷去启动自旋极化计算,比直接上要稳得多。

 

  4、把每次调试的日志都留下来

 

  每次动手最好只改一到两个参数,然后把对应的INCAR、OUTCAR和记录了收敛过程的OSZICAR文件都单独保存好,顺手记下来是哪一组参数让电子步从原来那种震荡状态,慢慢变成了单调收敛的走势;这么做下来,以后再碰到同类型的体系,就可以把现成的经验拿过来直接用,不用每次都从头开始摸。

  总结

 

  VASP里电子步收敛得太慢,要先从检查结构和输入文件、看看ALGO算法选没选对、初始电荷靠不靠谱以及金属展宽合不合适这些地方入手,再往混合参数这边使劲;混合的调整一般是从降低AMIX开始,如果体系实在不肯收敛,也可以临时借用BMIX比较小的那套保守混合方案来稳住局面。判断这些调整到底有没有用,得认真去看OUTCAR和OSZICAR里面的收敛走势,而不是简单地把NELM往上加就算完事。

135 2431 0251