计算化学公社

标题: GAMESS诡异的SCF收敛情况 [打印本页]

作者
Author:
airyang    时间: 2017-8-26 17:02
标题: GAMESS诡异的SCF收敛情况
本帖最后由 airyang 于 2017-8-28 03:20 编辑

楼主计算一个有C2对称性分子中两个片段之间的相互作用能量能量分解(GKS-EDA),为方便我们把片段1,2叫M1,M2。补充说明下的是,执行GKS-EDA的GAMESS是问苏培峰老师要的改版(基于2012),改版中M1,M2 with all basis set 下的初猜可以用MOSAVED传递(也就是M1,M2前一步 with own basis set收敛的轨道),这跟目前官版中LMO-EDA不能用MOSAVED选项有所不同。

问题来了
计算中,发现一个结构X出现了 M1与M2 with all basis set 收敛至能量过高的问题,如下图,M1,2情况类似只贴一个:
(, 下载次数 Times of downloads: 67)
尝试了几种促进SCF收敛的办法也都没有奏效,比如使用huckel初猜替代gkseda中新增的MOSAVED初猜,结果类似如下图:
(, 下载次数 Times of downloads: 54)


很快发现另外一个结构Y出现了with all basis set下,M1正常收敛,M2错误收敛的情况:
M1
(, 下载次数 Times of downloads: 74)
M2
(, 下载次数 Times of downloads: 60)

这就更不合理了,楼主开始怀疑是有bug,想到之前用2014版GAMESS做了结构X的气相LMOEDA结果正常,找来与收敛错误的GKSEDA对比一看,各个计算选项均是一样。M1 with all basis set结果如下图:
(, 下载次数 Times of downloads: 57)
而且与第二幅图(同样的huckel初猜)对比可以看到,HF收敛后转入DFT计算的 density change 根本没有那么大,楼主认为这个变化的错误判断应该也是最终错误的来源。

1. 想请教大家,这个诡异的SCF收敛结果是不是GAMESS的bug?
2. 以及要解决这个问题,有啥好的办法么
3. gfortran4.4编译计算结果与ifort编译计算结果一致,确定不是编译工具的锅。(然后顺便看了下时间,纯种intel比gfortran+mkl快了30%。。。)

作者
Author:
sobereva    时间: 2017-8-26 17:11
改成其它基组或泛函(特别是高HF成份的)能解决不?或者索性关了SOSCF,一直用DIIS
也可以尝试写上$DFT SWITCH=1.0 $END避免迭代前期用低精度积分格点看能否奏效

作者
Author:
airyang    时间: 2017-8-26 17:24
sobereva 发表于 2017-8-26 17:11
改成其它基组或泛函能解决不?

基组改小很多有用def2-tzvpp换3-21g,小一点儿(def2-tzvpp换def2-tzvp)没用,介于之间的没尝试,我试试

方法M06-2X没换过,因为是一系列的比较还是想着最终结果能用,我去试试B3LYP

一共将近70个做GKS-EDA的相似结构,三个结构SCF异常。
作者
Author:
airyang    时间: 2017-8-26 17:38
sobereva 发表于 2017-8-26 17:11
改成其它基组或泛函(特别是高HF成份的)能解决不?或者索性关了SOSCF,一直用DIIS
也可以尝试写上$DFT SW ...

$SCF DIIS=.T. SOSCF=.F.  FDIFF=.F. ...,一直用的DIIS。错误的例子尝试过关了DIIS,只用SOSCF结果很不好收敛,放宽收敛限后,可以进入M1的with all basisi set 但还是出一样的错误。

因为查了公社帖子:http://bbs.keinsci.com/thread-435-1-1.html
SWITCH=1.0 切积分格点的也试了,甚至设置到了100 (因为那个density change 会大到50,所以干脆阈值给100),也没奏效。
作者
Author:
airyang    时间: 2017-8-26 17:41
因为用了M06-2X, 格点是用的 NRAD=99 NLEB=590,等同gaussian的ultrafine
作者
Author:
airyang    时间: 2017-8-26 17:59
sobereva 发表于 2017-8-26 17:11
改成其它基组或泛函(特别是高HF成份的)能解决不?或者索性关了SOSCF,一直用DIIS
也可以尝试写上$DFT SW ...

汇报下测试结果:
1.M06-2X-D3/def-TZVP     出错
2.B3LYP-D3/def2-TZVPP   正常
3.原始的M06-2X-D3/def2-TZVPP     出错

作者
Author:
wei    时间: 2017-8-27 19:28
本帖最后由 wei 于 2017-8-27 19:33 编辑

你遇到的情况我也遇到过,加大格点积分精度后都正常了。现在头疼的是,大体系做EDA,内存不够报错。(我的内存是256G)无法解决。

作者
Author:
airyang    时间: 2017-8-28 01:28
wei 发表于 2017-8-27 19:28
你遇到的情况我也遇到过,加大格点积分精度后都正常了。现在头疼的是,大体系做EDA,内存不够报错。(我的 ...

因为用了明尼苏达泛函,整个系列的积分格点一直使用等同gaussian的ultrafine级别(NRAD=99 NLEB=590),请问下你解决的时候用多大的积分格点呢?

EDA确实太吃内存,我64G瑟瑟发抖,啥都做不动 = =!
作者
Author:
wei    时间: 2017-8-29 12:09
我用的是wb97xd,这也是苏老师推荐的之一。至于m06-2x,你试试 NRAD=99 nthe=36 nphi=72试试。
作者
Author:
airyang    时间: 2017-8-29 20:56
wei 发表于 2017-8-29 12:09
我用的是wb97xd,这也是苏老师推荐的之一。至于m06-2x,你试试 NRAD=99 nthe=36 nphi=72试试。

多谢啊,换了你建议的格点类型与精度,果然解决了!
作者
Author:
airyang    时间: 2017-8-30 02:08
本帖最后由 airyang 于 2017-8-30 02:18 编辑

补充说明:
出错应该与切换为极坐标格点无关,且尝试后发现解决楼主的个例问题中也不必动用 NRAD=99 nthe=36 nphi=72 这么大的格点(GAMESS说明书中称为army grade),下面仍然使用Lebedev 格点:

径向的NRAD从99设置成100,角度NLEB仍然选用meta-GGA默认的590, 就可以解决收敛错误的问题;
或者径向NRAD=99不变,角度选择GAMESS提供的下一档770也可以解决SCF错误收敛的问题。
很可能是GAMESS-2012自身的问题,因为同样结构在GAMESS-2014中全部正常收敛


作者
Author:
yang_lzu    时间: 2018-7-30 13:01
wei 发表于 2017-8-29 12:09
我用的是wb97xd,这也是苏老师推荐的之一。至于m06-2x,你试试 NRAD=99 nthe=36 nphi=72试试。

敢问大神,之前我用的M06-2X完美收敛,但后面换成wb97x-d就不能收敛了(在m06-2x基础上上改了方法,加了NRAD=99 nthe=36 nphi=72),这是为什么呢?
作者
Author:
sobereva    时间: 2018-7-31 04:30
yang_lzu 发表于 2018-7-30 13:01
敢问大神,之前我用的M06-2X完美收敛,但后面换成wb97x-d就不能收敛了(在m06-2x基础上上改了方法,加了N ...

SCF收敛与否有一定数值巧合性,你当前的问题没有什么必然原因
作者
Author:
yang_lzu    时间: 2018-7-31 09:32
sobereva 发表于 2018-7-31 04:30
SCF收敛与否有一定数值巧合性,你当前的问题没有什么必然原因

明白了,非常感谢老师的回答,另外老师有推荐的关于描述泛函的书籍吗?对于wb97x-d了解得很少。
作者
Author:
sobereva    时间: 2018-8-1 05:20
yang_lzu 发表于 2018-7-31 09:32
明白了,非常感谢老师的回答,另外老师有推荐的关于描述泛函的书籍吗?对于wb97x-d了解得很少。


没必要看什么特殊文章。
非要看,直接看原文,以及看较新的泛函测试、综述文章





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