计算化学公社

标题: 求助:cp2k中DFT泛函相关问题 [打印本页]

作者
Author:
qmlearner    时间: 2021-5-27 11:07
标题: 求助:cp2k中DFT泛函相关问题
本帖最后由 qmlearner 于 2021-5-28 10:34 编辑

我有一个63原子的C、H、O体系,当用B3LYP-D3(BJ)对其进行结构优化时(EPYC 7452@2.35GHz 32核,输入文件见附件B3LYP-opt.inp),输出文件一直停在如图1的地方。
然后我把泛函换成PBE-D3(BJ)之后就可以正常计算了。
想请教一下这是什么原因呢?

另外还有两个问题想请教一下:
(1)GEO_OPT时,我看我的结构前三步的SCF 达到128 cycles之后都没有收敛,从第四步才开始收敛,最终在第155步的时候结构达到收敛标准,这样得到的结构可以用吗? (这是否相当于把SCF cycle设置成很大,比如500时的效果?)
(2)我用优化后的结构跑AIMD(32核),用了NPT_I系综,热浴用CSVR。第一步SCF正常收敛,但之后输出文件一直停在了如图2所示的地方。想请教一下大家这是什么原因呢?有没有什么建议呢?(输入文件见附件PBE-NPT.inp)

PS:社长帖子中的那几个例子我都跑了一下,都顺利跑完,说明cp2k(version-7.1)安装应该没有问题。
存储空间检查了,也足够。
关于第(2)个问题,同样的结构,我用xtb跑AIMD,没有什么问题。

非常感谢:)))


作者
Author:
卡开发发    时间: 2021-5-27 11:28
本帖最后由 卡开发发 于 2021-5-27 11:59 编辑

0、B3LYP是杂化泛函,本身计算就很慢,尤其是交换势这步,周期体系并不比小分子体系做起来那样简单。

1、最终收敛的结构作为初始猜测重新跑一下构型优化就可以知道,如果这样自洽能收敛且构型优化能在三两步内收敛,基本上问题不大。
作者
Author:
qmlearner    时间: 2021-5-27 13:48
卡开发发 发表于 2021-5-27 11:28
0、B3LYP是杂化泛函,本身计算就很慢,尤其是交换势这步,周期体系并不比小分子体系做起来那样简单。

1 ...

非常感谢老师的回复:)
1)plane wave 用杂化泛函确实太慢了,我用EPYC 7452@2.35GHz 32核,4个多小时了结构优化还是停留在图1的那个地方。
2)根据您的建议,我把前三步SCF没收敛,但155步构型收敛的那个结构作为初猜,又跑了下优化,一步就收敛了:))

我帖子里的第二个问题,用PBE 跑AIMD(32核),第一步收敛了之后怎么就停在“GO cp2k GO”(图2) 那儿了呢,也4个多小时了,没有任何变化,老师您有什么建议么?

作者
Author:
卡开发发    时间: 2021-5-27 13:56
qmlearner 发表于 2021-5-27 13:48
非常感谢老师的回复:)
1)plane wave 用杂化泛函确实太慢了,我用EPYC 7452@2.35GHz 32核,4个多小时 ...

1、cp2k算杂化泛函部分并不是用plane wave做的,而是GTO解析算的四中心积分,但毕竟要将原子基组做周期性延拓,而分子体系不需要这样处理,所以速度肯定会慢些。建议的话,可以试试看ADMM,如果有对应的辅助基组的话。或者也可以在纯泛函里面找找有没有好用些的(因为我不确定你想要计算何种性质)。
2、那这个结构就应该没啥问题,当然这个没问题指的是只能确定是SCF能正常收敛,且梯度也能落到设定的阈值。
3、AIMD我了解比较有限,建议看一下其他人有没有别的见解。
作者
Author:
qmlearner    时间: 2021-5-27 16:39
卡开发发 发表于 2021-5-27 13:56
1、cp2k算杂化泛函部分并不是用plane wave做的,而是GTO解析算的四中心积分,但毕竟要将原子基组做周期性 ...

1、非常感谢老师的解答,我现在只知道cp2k有GPW和GAPW形式的计算,具体是什么形式好像还跟所用泛函和基组有关,挺复杂的 样子:)
我加上ADMM方法之后,B3LYP-D3(BJ)用32核做结构优化,确实可以算的动了,但是SCF循环中能量明显有问题,出现了很大的正值。

我的目的是想先优化一下结构,然后算个单点,做一些波函数分析,研究一下相互作用。

3、我测试了一下用64核跑PBE AIMD,第一步也是比较快的收敛,然后任务就很快的终止了,输出文件停止在上面图2的地方(没有像用32核时那样一直停在那也不终止)。

作者
Author:
卡开发发    时间: 2021-5-27 16:54
qmlearner 发表于 2021-5-27 16:39
1、非常感谢老师的解答,我现在只知道cp2k有GPW和GAPW形式的计算,具体是什么形式好像还跟所用泛函和基组 ...

GPW和GAPW是基组在处理的时候采用不同的方式,GPW通常是面向赝势基组,而GAPW是面向全电子。ADMM按照道理应该不会出问题,不知道是不是辅助基组选择不合理或者其他参数不合适导致,我不确定你最后是否正常收敛还是一直持续非常大的正值。如果实在不行也只好退而求其次找个稍微好点的GGA/MetaGGA。
作者
Author:
qmlearner    时间: 2021-5-27 17:48
卡开发发 发表于 2021-5-27 16:54
GPW和GAPW是基组在处理的时候采用不同的方式,GPW通常是面向赝势基组,而GAPW是面向全电子。ADMM按照道理 ...

非常感谢老师耐心的科普:)
用ADMM之后没有收敛,能量就是正负交替,一直到128步。
cp2k菜鸟得去官网看下手册关于杂化泛函辅助基组的部分,然后测试下看看是不是这块儿的问题,感谢老师的指导:)

能否斗胆请老师在您的服务器上帮我测试跑下PBE-NPT.inp这个任务:)
作者
Author:
卡开发发    时间: 2021-5-27 17:55
本帖最后由 卡开发发 于 2021-5-27 18:14 编辑
qmlearner 发表于 2021-5-27 17:48
非常感谢老师耐心的科普:)
用ADMM之后没有收敛,能量就是正负交替,一直到128步。
cp2k菜鸟得去官网 ...

我这边测下来也挂了,PASSERT failed。
作者
Author:
qmlearner    时间: 2021-5-28 10:32
本帖最后由 qmlearner 于 2021-5-28 10:33 编辑
卡开发发 发表于 2021-5-27 17:55
我这边测下来也挂了,PASSERT failed。

非常感谢老师:))
我找到了原因,我的结构a, b,c cell vectors长度并不相等,但是我用了NPT_I系综,刚才换成了NPT_F系综,就没有问题了。

关于用B3LYP ADMM进行结构 优化的问题,我仔细检查了一下输入文件,某个该有ADMM的地方,我给误删了,加上之后也没有问题了。跟PBE方法对比了一下,SCF每一步循环的时间,PBE(3.5s左右)大概是B3LYP ADMM(1s 左右)的3.5倍。最终优化得到的结构也几乎没什么差别。
作者
Author:
Villars    时间: 2021-6-2 21:16
qmlearner 发表于 2021-5-28 10:32
非常感谢老师:))
我找到了原因,我的结构a, b,c cell vectors长度并不相等,但是我用了NPT_I系综,刚 ...

老师您好!请问优化那个任务您最后是如何解决的?我在您发的inp文件里面加入ADMM后还是显示图一,您看方便再发一下解决后的inp文件嘛?万分感谢
作者
Author:
Villars    时间: 2021-6-3 07:28
qmlearner 发表于 2021-5-28 10:32
非常感谢老师:))
我找到了原因,我的结构a, b,c cell vectors长度并不相等,但是我用了NPT_I系综,刚 ...

老师您好!我也看到能量正负交替的结果了,但是我没有用ADMM,只是把您最开始的inp文件中的interaction_potential 换成coulomb,相当于不设截断半径了,然后就能看到正负能量交替出现的结果;之后我又加入ADMM,发现虽然能量变得比较正常了(都是-358点多到-359点多),但是前6个离子步都是循环到128步仍然不收敛,从第7个离子步开始收敛了,后面大概都是20-30电子步就能收敛。从时间上来看,用了ADMM后明显有加快速度,每个离子步的第一个电子步从520秒减到85秒,但是我注意到尽管后面的电子步都是1秒左右,整体的离子步时间还是非常长,有700多秒,远远大于所有电子步时间之和。请问一下您有观察到这个现象吗?我不知道附件中我的inp设置的是否正确,您方便分享下修改后的inp文件嘛?万分感谢
作者
Author:
qmlearner    时间: 2021-6-3 13:06
Villars 发表于 2021-6-3 07:28
老师您好!我也看到能量正负交替的结果了,但是我没有用ADMM,只是把您最开始的inp文件中的interaction_p ...

如果是新手的话你不要自己瞎改参数了,就用Multiwfn生成.inp算就行了。

一个离子步的用时不完全等于所有离子步用时之和,但不应该远远大于。
作者
Author:
Villars    时间: 2021-6-3 13:29
qmlearner 发表于 2021-6-3 13:06
如果是新手的话你不要自己瞎改参数了,就用Multiwfn生成.inp算就行了。

一个离子步的用时不完全等于所 ...

非常感谢您的回复!实不相瞒用cp2k也有段时间了,我就是挺好奇为什么您在第一楼给的inp文件直接提交的话会一直停在第一个离子步开始的地方。我也试过官方教程 (https://www.cp2k.org/exercises:2017_uzh_cp2k-tutorial:hybrid) 里面给的其他杂化泛函的方法,但是只要按照 'POTENTIAL_TYPE TRUNCATED' 的方式设置就会出现卡在第一个离子步动不了的情况。然而如果换成官方教程给的纯水的体系,用您的inp文件中&XC &END XC部分也可以顺利通过,但是和官方教程一样需要第一步用PBE算一下初始波函数,不然会报出矩阵非正定的错误。

按照我上面附件中的inp文件提交确实会看到离子步用时远大于所有电子步之和的情况,如下图所示,所以希望能和您的inp文件比对一下找出问题,非常感谢您的指导与帮助,不胜感激
作者
Author:
qmlearner    时间: 2021-6-8 11:05
Villars 发表于 2021-6-3 13:29
非常感谢您的回复!实不相瞒用cp2k也有段时间了,我就是挺好奇为什么您在第一楼给的inp文件直接提交的话 ...

我刚学cp2k还不到两周,很多问题也不太清楚,都是谷歌、官网手册、forum一顿搜。多测试测试,多交流交流吧,可能哪天就恍然大悟了:)




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