计算化学公社
标题: Cfour做结构优化的问题 [打印本页]
作者Author: beefly 时间: 2019-11-15 22:38
标题: Cfour做结构优化的问题
很多人都知道的小技巧:在做结构优化的时候,用低级别方法先预优化一下,可以加快高精度方法结构优化的收敛速度。另外,如果优化过程中突然死机,或者超过了最大优化步数,可以用最后一步的结构继续做结构优化计算,从而节省时间。但是,这些处理技巧在Cfour这里经常是行不通的。例如下面的例子,初始结构参数已经用Gaussian在DFT级别优化好了,拿到Cfour在CCSD(T)级别计算,得到能量变化曲线如下:
(, 下载次数 Times of downloads: 85)
对于能量变化最大的第四步,结构参数如下:
(, 下载次数 Times of downloads: 75)
可见2.5 Hartree的能量跳跃主要是键角、二面角变化过大引起的(默认上限是0.3 a.u.,大约17.2度)。看来Cfour控制优化步长的算法不太合理,或者代码有bug(1.0到2.1版本都存在这样的问题)。因此再好的初始结构,让这个bug一搅合,已经变得毫无意义了。好在这是个主族的轻元素体系,如果是过渡元素体系,不合理的结构经常还会导致SCF或CC不收敛。
Cfour有个关键词GEO_MAXSTEP可以减小结构参数变化的上限(类似于Gaussian的OPT选项maxstep)。例如设定GEO_MAXSTEP=30,可以让键长、角度变化的上限分别为0.03 Bohr和1.7度,但是作用有限,开始的几步仍然是往错误的方向跑,导致总的优化步数更多,计算更加耗时。
在Cfour作者改进结构优化代码之前,彻底的解决办法是用第三方程序做结构优化,通过接口驱动Cfour计算单点的梯度。目前PSI4有这个接口,使用手册里有个例子。另外Gaussian 16也提供了调用外部程序算梯度的接口,有发表的论文就是Gaussian调用Cfour算的。
作者Author: Warm_Cloud 时间: 2019-11-17 09:02
怎么设置才能只算梯度?类似于高斯的Force关键词。
作者Author: Warm_Cloud 时间: 2019-11-17 09:04
补充一下问题,用笛卡尔输入只算梯度。
作者Author: beefly 时间: 2019-11-19 09:02
cfour手册里没有讲。可以运行psi4的例子看一下产生的cfour输入文件
http://www.psicode.org/psi4manual/1.2/cfour.html
作者Author: wjc404 时间: 2022-10-24 12:18
本帖最后由 wjc404 于 2022-10-24 12:23 编辑
cfour在计算解析频率时会把Hessian矩阵存到专门的文件里(FCM和FCMINT)。然后那个文件是可以计算前预先给好的(这样可以回避不靠谱的初猜Hessian,避免因此造成的优化问题)。
| 欢迎光临 计算化学公社 (http://bbs.keinsci.com/) |
Powered by Discuz! X3.3 |