vasp计算---出现各种错误情况

1.项目场景:

项目场景(1):VASP运行时,出现【forrtl : severe (174) : SIGSEGV, segmentation fault occurred】

出现问题原因

原因:出现报错的主要原因是:由于VASP运行程序较大,所需的存储空间也较大,而Linux系统初始的堆栈大小又太小导致容易出现bug。一般只需将堆栈大小(stack size)调大,一般设置成256M或者没有限制,此错误就会得到解决!

解决方案:

解决方法1:仅当前生效

设置256M:【ulimit -s 262140】
设置无限制:【ulimit -s unlimited】

解决方法2:永久生效
1:在【/etc/security/limits.conf】文件中添加下面两行:

*soft stack unlimited
hard stack unlimited
其中【
】表示所有文件生效;【stack】表示堆栈的最大值;【unlimited】表示大小无限制。
2:在【/etc/pam.d/login】文件中添加下面一行:

session required /lib/security/pam_limits.so
其中【/lib/security/pam_limits.so】为电脑中的设置。32位对应【/lib】;64位对应【/lib64】

2.项目场景:

项目场景(2):出现出现【WARNING: random wavefunctions but no delay for mixing, default for NELMDL】(译:随机波形,但没有混合延迟)

出现问题原因

原因:首先这不是一个错误,只是一个警告,让我们注意INCAR中未明确的NELMDL参数。其默认设置适用于许多体系,但是对于表面,复杂的磁性结构,如果增加NELMDL,通常可以帮助电子收敛,从而延迟初始阶段的电荷密度更新。想要删除此警告,只需在INCAR文件中指定NELMDL,但这不是必需的

解决方案:

解决方法1:

对于使用哈密顿直接最小化的计算(ALGO=ALL或ALGO=DAMPED):如果设置了NELMDL,戴维森算法在第一个NELMDL步骤中使用,如上所述。由于轨道和电荷密度预测的问题,在VASP.5中使用正的NELMDL(即在每个离子步骤中的延迟)不能可靠地工作。在VASP.6中,使用NELMDL=1(或NELMDL=2)和直接最小化往往能提高分子动力学模拟或松弛的稳定性和效率(ALGO=ALL或ALGO=DAMPED)。然而,请注意,这可能需要人们准备一个合理的WAVECAR文件,因为NELMDL=1/2可能不足以从初始随机数中获得一套合理的轨道。
解决方法2:
对于HF型计算,如果NELMDL大于或等于3,VASP将使用Davidson算法执行NELMDL非自洽步骤,并使用与所选混合函数(即HSE的PBE和PBE0)相对应的半局部DFT函数计算局部哈密尔顿。如果离子在离子步骤之间移动的距离很大,这是很方便的。因此,设置NELMDL=3可以提高使用HF型哈密顿人进行松弛时的稳定性和性能。如果你在使用HF型哈密顿人进行松弛时遇到收敛问题,请尝试使用ALGO=All和NELMDL=3。

  • 2
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值