计算化学公社

 找回密码 Forget password
 注册 Register
Views: 5266|回复 Reply: 9

[Gaussian/gview] 令Gaussian 16中SCF未收敛到默认收敛限也能继续做后续计算的方法

[复制链接 Copy URL]

4万

帖子

99

威望

4万

eV
积分
89946

管理员

公社社长+计算化学玩家

发表于 Post on 2021-11-17 03:33:28 | 显示全部楼层 Show all |阅读模式 Reading model
令Gaussian 16中SCF未收敛到默认收敛限也能继续做后续计算的方法

文/Sobereva@北京科音  2021-Nov-17


注:本文内容对目前我用过的Gaussian 16 A.03、B.01、C.01都适用,对未来的版本不一定。

Gaussian程序从09版开始默认的收敛限成为了tight,相当于SCF=conver=8关键词设的收敛限,这在所有量子化学程序里几乎是最严的。Gaussian程序从16版开始加入了一个规则,就是如果SCF过程中如果SCF收敛精度没达到默认的收敛限,而且你的任务涉及到计算能量的导数,如几何优化、振动分析,或者用的是后HF、TDDFT等涉及到多行列式/多组态的方法,在SCF模块运行完之后就会有下面的提示,导致程序以报错方式终止

SCF Error SCF Error SCF Error SCF Error SCF Error SCF Error SCF Error SCF Error

                                    ERROR!!!!

    SCF has not converged.  Gradients and post-SCF results would be GARBAGE!!


Gaussian 16做这么一个检查本身没什么问题,因为如果SCF收敛精度如果不够高,则上述那些任务、方法的计算精度可能会比较糟糕,而且这也避免了一些菜鸟被其它菜鸟误导而乱用IOp(5/13=1)还不知道自己检查收敛情况。Gaussian 16的这个收敛精度检查设计的最变态的地方是没法关闭,程序手册里和IOp文档里对关闭方法都只字未提,这给许多用户的实际研究带来极大的不便。比如很多SCF特别难收敛的体系,如过渡金属团簇、用小核赝势的镧系锕系配合物(《使用Gaussian做镧系金属配合物的量子化学计算》http://sobereva.com/581里提到了)、加较大外电场时,本来SCF收敛到默认的很严的收敛限就普遍较难,而对于几何优化任务,由于初始搭的结构往往不够理想(偏离极小点较远)导致电子结构更复杂,SCF收敛到默认收敛限的难度就更大,很多情况下即便使用《解决SCF不收敛问题的方法》(http://sobereva.com/61)里的诸多做法尝试很久也没法解决。这种情况,一个常见解决策略是先用相对较松的SCF收敛限比如SCF=conver=6做粗略的几何优化。当体系结构离极小点结构比较近的时候,SCF就相对容易收敛到默认收敛限了,因此之后可以再用默认的收敛限进一步优化(如果你是老司机而且永不会忘记检查SCF收敛情况的话,IOp(5/13=1)也不是一定不能用)。然而由于Gaussian 16上述变态设定,导致这重要的技巧都无法实现了,令我感到Gaussian开发者严重脱离广大群众的应用场景。有的时候我为了用上述技巧我都不得不刻意改用Gaussian 09。还有时候,要对体系做TDDFT、双杂化、CCSD(T)等计算,但个别情况SCF收敛到SCF=conver=8就是特别困难,而用#P监控SCF过程发现收敛到SCF=conver=7的程度是可以达到的,此时做这些计算的精度并没什么明显问题,可Gaussian 16来了个一刀切,这种情况下就是死活不让你做SCF之后的计算,真是特别荒诞!

今天在CCL上有人分享了一个解决上述问题的奇技淫巧,令SCF没收敛到默认收敛限也能做后续计算,这对Gaussian用户极为重要,我觉得很有必要在这里具体说一下。不了解下述的Gaussian的Link、IOp的话看《Gaussian的Link、IOp与非标准计算路径》(http://sobereva.com/57)。

从Gaussian 16开始,在调用Link 701、Link 801模块开始时都会调用SCFChk做一下SCF收敛性的检查,没收敛到默认收敛限就会出现前述报错提示并终止任务。Link 701是计算单电子积分的一阶或二阶导数的模块,所有算能量的导数的任务都会经历它。Link 801是初始化双电子积分变换,TDDFT、双杂化、后HF等涉及到多行列式/组态函数的任务都会经历它。这个Gaussian 16引入的新设计导致了前述问题。

实际上,可以通过官方IOp手册(http://gaussian.com/iops/)里都只字未提的选项来关闭SCF收敛性检查(可能CCL上那个人是看到了一般用户都拿不到的Gaussian 16源代码分析出来的,或者和Gaussian开发者有交流)。对于需要经历Link 701的任务,可以用IOp(7/127=-99)来关闭,对于需要经历Link 801的任务,可以通过IOp(8/117=-99)来关闭。实际上不是必须=-99,只要是比-100更正的值都可以。

因此,在Gaussian 16中用比如# B3LYP/6-31G* SCF=conver=6 opt,由于负责SCF的Link 502模块收敛到较松的收敛限就结束了,因此在计算几何优化要用的受力时由于发现SCF没收敛到默认的SCF=conver=8的程度,会报错并出现前述提示。而如果你写# B3LYP/6-31G* SCF=conver=6 opt IOp(7/127=-99),就可以让几何优化进行下去,和Gaussian 09的情况一样。

如果你嫌上述IOp不好记,每次写的时候也麻烦,有一个技巧可用:如《Gaussian的安装方法及运行时的相关问题》(http://sobereva.com/439)所述,可以在Default.Rou(Windows版)或Default.Route(Linux版)里面写上默认的计算资源设置,实际上默认的关键词也可以写进去。如果你在里面加上一行-#- IOp(8/117=-99) IOp(7/127=-99),则这两个IOp设置会对之后所有计算都会默认启用,以后就再也不会遇到前述的烦人的问题了!

还有一点要注意,根据体系的不同,大多数时候Gaussian默认在SCF计算前期用精度较低的方式算电子积分(SCF一开始会看到Integral accuracy reduced to 1.0D-05 until final iterations.的提示。若强行要求总是这么做可以写varacc关键词),此时SCF=conver=x的设置其实是不起实际作用的,虽然在SCF开始之前显示的收敛限和自己设的一致,但实际还是会迭代到满足tight收敛标准才结束。如果想让SCF=conver=x总是如实生效,应当在SCF里同时写上novaracc。即前例建议改为# B3LYP/6-31G* SCF(conver=6,novaracc) opt IOp(7/127=-99),可确保每一轮如实迭代到conver=6的程度就视为收敛。如果你想让novaracc默认启用的话,可以在Default.Rou/Route里的-#-后面加上scf=novaracc。

最后对初学者们强调一点,看本文绝对别断章取义!绝对不要把SCF=conver=6时几何优化的结果当做最终用的结构!SCF=conver=6情况下的优化只能算得上预优化,实际发表用的结构要在默认的SCF收敛限下优化得到!

评分 Rate

参与人数
Participants 9
eV +42 收起 理由
Reason
勘察加拟石蟹 + 5 谢谢
dududu + 4 谢谢分享
好多于 + 3
kulaomega + 5 牛!
ggdh + 5 震惊!
hdhxx123 + 5 谢谢
jitou11 + 5 谢谢
root + 5 谢谢分享
zsu007 + 5 牛!

查看全部评分 View all ratings

北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办最高质量的各种计算化学类培训:初级量子化学培训班基础(中级)量子化学培训班分子动力学与GROMACS培训班量子化学波函数分析与Multiwfn程序培训班,内容介绍以及往届资料购买请点击链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的最佳途径。培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取培训最新消息、避免错过网上最有价值的计算化学文章!
欢迎加入人气最高、水准最高的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人,讨论范畴相同
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

877

帖子

36

威望

4803

eV
积分
6400

Level 6 (一方通行)

发表于 Post on 2021-11-17 13:35:38 | 显示全部楼层 Show all
哈哈哈哈 5/13=1又回来了。sob是不是老早就知道了,故意不告诉我等菜鸟。

1061

帖子

16

威望

5786

eV
积分
7167

Level 6 (一方通行)

計算化学の社畜

发表于 Post on 2021-11-17 13:55:03 | 显示全部楼层 Show all
ggdh 发表于 2021-11-17 13:35
哈哈哈哈 5/13=1又回来了。sob是不是老早就知道了,故意不告诉我等菜鸟。

如果钟叔是菜鸟的话,我等估计连菜鸟都不如了
Stand on the shoulders of giants

6693

帖子

0

威望

4012

eV
积分
10705

Level 6 (一方通行)

发表于 Post on 2021-11-17 16:02:50 | 显示全部楼层 Show all
我觉得是不是应该加上一句,非专业用户不要用,而且如果有人想转载,不得只把IOp复制去,必须带着“非专业用户不要用”这个reminder一起复制走。。。不然这个又会变成新的IOp(5/13=1),被各种小白滥用。。。

评分 Rate

参与人数
Participants 2
eV +8 收起 理由
Reason
zjxitcc + 3 我很赞同
北大-陶豫 + 5 我很赞同

查看全部评分 View all ratings

BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员

877

帖子

36

威望

4803

eV
积分
6400

Level 6 (一方通行)

发表于 Post on 2021-11-17 18:24:15 | 显示全部楼层 Show all
wzkchem5 发表于 2021-11-17 16:02
我觉得是不是应该加上一句,非专业用户不要用,而且如果有人想转载,不得只把IOp复制去,必须带着“非专业 ...

在sob的领域下,估计这等邪道无法流行起来。。

6693

帖子

0

威望

4012

eV
积分
10705

Level 6 (一方通行)

发表于 Post on 2021-11-17 21:05:31 | 显示全部楼层 Show all
ggdh 发表于 2021-11-17 11:24
在sob的领域下,估计这等邪道无法流行起来。。

那确实是,但是不知道咱们论坛、却能辗转知道一些偏门IOp的人也并不少。。。
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员

4万

帖子

99

威望

4万

eV
积分
89946

管理员

公社社长+计算化学玩家

 楼主 Author| 发表于 Post on 2021-11-18 04:59:19 | 显示全部楼层 Show all
ggdh 发表于 2021-11-17 13:35
哈哈哈哈 5/13=1又回来了。sob是不是老早就知道了,故意不告诉我等菜鸟。

我假定读者不会忽视文中 “如果你是老司机而且永不会忘记检查SCF收敛情况” 这句话拟定的前提

老司机怎么刷ECU解限速是他们理应有权利知道的,至于新手若不听嘱咐,自作聪明乱用,弄爆缸、摔残了后果自负
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办最高质量的各种计算化学类培训:初级量子化学培训班基础(中级)量子化学培训班分子动力学与GROMACS培训班量子化学波函数分析与Multiwfn程序培训班,内容介绍以及往届资料购买请点击链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的最佳途径。培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取培训最新消息、避免错过网上最有价值的计算化学文章!
欢迎加入人气最高、水准最高的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人,讨论范畴相同
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

2

帖子

0

威望

27

eV
积分
29

Level 2 能力者

发表于 Post on 2022-1-18 11:15:49 | 显示全部楼层 Show all
大佬好~我在您这篇文章的启发下试了添加IOp这个关键词,发现对于Gaussian 16 A.03优化是可以继续进行下去的,即使我设置了scf=conver=3。可是当加入freq计算时,还是会出现SCF Error这样的报错信息。请问您有遇到过这样的情况吗,是怎么解决的呢?谢谢!

water_.gjf

363 Bytes, 下载次数 Times of downloads: 6

水的优化和频率计算的输入文件,考虑了CPCM溶剂化模型

water_.log

130.15 KB, 下载次数 Times of downloads: 2

水的优化和频率计算结果(出现报错)

4万

帖子

99

威望

4万

eV
积分
89946

管理员

公社社长+计算化学玩家

 楼主 Author| 发表于 Post on 2022-1-18 12:42:11 | 显示全部楼层 Show all
cdw66666666 发表于 2022-1-18 11:15
大佬好~我在您这篇文章的启发下试了添加IOp这个关键词,发现对于Gaussian 16 A.03优化是可以继续进行下去的 ...

IOp设置没法传递给第二个子任务,即当前只对opt有效
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办最高质量的各种计算化学类培训:初级量子化学培训班基础(中级)量子化学培训班分子动力学与GROMACS培训班量子化学波函数分析与Multiwfn程序培训班,内容介绍以及往届资料购买请点击链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的最佳途径。培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取培训最新消息、避免错过网上最有价值的计算化学文章!
欢迎加入人气最高、水准最高的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人,讨论范畴相同
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(最强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

2

帖子

0

威望

27

eV
积分
29

Level 2 能力者

发表于 Post on 2022-1-18 14:48:18 | 显示全部楼层 Show all
sobereva 发表于 2022-1-18 12:42
IOp设置没法传递给第二个子任务,即当前只对opt有效

好的,谢谢

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2023-2-6 05:22 , Processed in 0.378958 second(s), 31 queries .

快速回复 返回顶部 返回列表 Return to list