计算化学公社

标题: 关于VASP出现关键词"ZHEGV"相关报错的报错原因及解决方式汇总 [打印本页]

作者
Author:
关千辰    时间: 2023-10-18 09:39
标题: 关于VASP出现关键词"ZHEGV"相关报错的报错原因及解决方式汇总
本帖最后由 关千辰 于 2023-10-18 09:47 编辑

注意:本人并不擅长计算,英文也不太好,属于半吊子,这个帖子也是因为自己出现相关的错误,搜索完信息后得出的结论,并不保证准确性!请谨慎鉴别。

一些相关的链接:
外文:
[vasp官方论坛的相关解答]
https://www.vasp.at/forum/viewtopic.php?t=214
https://www.vasp.at/forum/viewtopic.php?t=10409[url=https://www.vasp.at/forum/viewtopic.php?t=17822]https://www.vasp.at/forum/viewtopic.php?t=17822[/url]
[回答者并非做VASP计算,但有参考价值]
https://www.researchgate.net/pos ... -Returncode-29-2-56
另外,论坛内也有许多相关帖子,可以作为参考:
http://bbs.keinsci.com/forum.php ... amp;highlight=ZHEGV [楼主是Warning报错]
http://bbs.keinsci.com/forum.php ... amp;highlight=ZHEGV [楼主是Error报错,啦啦黑还黑 大佬提出还有可能与磁性有关]
http://bbs.keinsci.com/forum.php ... amp;highlight=ZHEGV [楼主是初始结构设置不合理]
http://bbs.keinsci.com/forum.php ... amp;highlight=ZHEGV    [楼主是改了并行参数解决的]

首先包含ZHEGV有两种报错:
Warning In EDDRMM: call to ZHEGV failed, returncode = x x x

Error In EDDDAV: Call to ZHEGV failed. Returncode = xx

前者是不需要管的:(不太会用论坛,好像无法在正文中间插图)
https://www.vasp.at/forum/viewtopic.php?t=17822
回复者:juergen.furthmueller
回复时间:Mon Jul 06, 2020 1:46 pm
It's just a warning (no error). It's actually present in any version of VASP, even in vasp.6
(the only difference is maybe that different compiler optimizations / semantics may sometimes
trigger or sometimes prevent it). Just ignore ... . It occurs if you are very close to machine
accuracy in the RMM-DIIS scheme and single band iteration only results in "random" progress
anymore (due to machine accuracy limits). It says then indirectly to you "could not optimize
this band further" -- and the internal action taken is then simply NOT to update the wave
function further and to proceed with the next band(s). It confused already many people over
many generations and please, could somebody simply comment out these WRITE statements
in rmm-diis.F ... ? (somewhere around lines 510 and 630; "WRITE(IU?,219) IFAIL,ITER,N)")

大意:这玩意是由于使用RMM-DIIS方法(也就是IALGO=38)时计算精度与计算机物理上限逼近因此跳过该波段计算,程序因此给出一个警告。

后者有很多可能原因:
https://www.vasp.at/forum/viewtopic.php?t=214
回复者:Administrator
回复时间:Tue Jun 28, 2005 8:42 am
the error is due to a LAPCK call (ZHEGV):
ZHEGV computes all the eigenvalues, and optionally, the eigenvectors
of a complex generalized Hermitian-definite eigenproblem .
there may be several reasons for that error:
1) the RMM-DIIS diagonalisation algorithm is not stable for your specific
setup of the calculation.
--> use ALGO = Normal (blocked Davidson) or
ALGO = Fast (5 steps blocked Davidson, RMM-DIIS)
2)
a) maybe your input geometry was not reasonable (error occurs at the very first ionic
step, please have a look for the geometry data of your run in OUTCAR ) or
b) the last ionic relaxation step lead to an unreasonable geometry (compare the input
and output geometries of the last ionic relaxation steps in XDATCAR).
In that case (2b) it can be helpful to
--> switch to a different relaxation algorithm (IBRION-tag)
--> reduce the step size of the first step by setting POTIM smaller than the default
value
3) The installation of the LAPACK on your machine was not done properly:
use the LAPACK which is delivered with the code
(vasp.4.lib/lapack_double.o)
4) If the error persist although you switched to the Davidson algorithm:
on some architectures (especially SGI) some LAPACK routines are not working
properly. However, it is possible to avoid the usage of the ZHEGV subroutine
by commenting the line
#define USE_ZHEEVX
in davidson.F, subrot.F, and wavpre_noio.F and recompiling VASP.

大意:
报错是出自LAPCK这个包。ZHEGV是用于计算特征值的。
解决方案:
1)改ALGO
2)检查结构
  a)当错误发生在最初:输入结构不合理,检查OUTCAR的几何数据
  b)最后一个离子步驰豫不合理:XDATCAR中比较一下input与output结构
  如果是2.b) 可以切换松弛算法(IBRION)
3)可能是LAPACK未正确安装(感觉应该不太常见所以不翻译了)
4)如果使用其他算法(非RMM-DIIS)(例如Davidson algorithm)依然报错,可能是一些体系结构无法使用 LAPACK ,可以重新注释掉 ZHEEVX 然后重新编译


太长不看版:
带 Warning 不用管,带 Error 的 改ALGO、检查结构。
此外还有可能与磁性、并行参数有关



作者
Author:
xmuqyj    时间: 2024-6-5 09:50
很好的帖子
作者
Author:
北大-陶豫    时间: 2024-6-5 10:20
就我自己的经验来看,SOC 计算遇到 Error In EDDDAV: Call to ZHEGV failed 一种解决方法是:先用很小的基组(100 eV 都可以)和很小的 k 点做计算,得到 WAVECAR 之后,慢慢加大基组和 k 点,读之前的波函数。
作者
Author:
pyh    时间: 2024-6-12 21:52
北大-陶豫 发表于 2024-6-5 10:20
就我自己的经验来看,SOC 计算遇到 Error In EDDDAV: Call to ZHEGV failed 一种解决方法是:先用很小的基 ...

这个好




欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3