24小时热门版块排行榜    

CyRhmU.jpeg
查看: 1013  |  回复: 6
【奖励】 本帖被评价5次,作者zzgyb增加金币 5
当前主题已经存档。

zzgyb

荣誉版主 (文坛精英)


[资源] gaussian中自恰场方程不能收敛问题的解决方法

关于收敛问题 (L502, L508, L9999)

对于一个优化计算,它的过程是先做一个SCF计算,得到这个构型下的能量,然后优化构型,再做SCF,然后再优化构型。。。因此,会有两种不收敛的情况:一是在某一步的SCF不收敛(L502错误),或者构型优化没有找到最后结果(L9999错误)。

预备知识:计算时保存chk文件,可以在后续计算中使用guess=read读初始猜测.

对于SCF不收敛,通常有以下的解决方法:
1. 使用小基组,或低级算法计算,得到scf收敛的波函数,用guess=read读初始波函数。
2. 使用scf=qc,这个计算会慢,而且需要用stable关键字来测试结果是否波函数稳定。如果这个还不收敛,会提示L508错误。
3. 改变键长,一般是缩小一点,有时会有用。
4. 计算相同体系的其他电子态,比如相应的阴离子、阳离子体系或单重态体系,得到的收敛波函数作为初始猜测进行计算。
5. 待补充.

对于优化不收敛,即L9999错误,实际上是在规定的步数内没有完成优化,即还没有找到极小值点。(或者对于过渡态优化,还没有找到过渡态)

这有几种可能性:
1. 看一下能量的收敛的情况,可能正在单调减小,眼看有收敛的趋势,这样的情况下,只要加大循环的步数(opt(maxcycle=200)),可能就可以解决问题了。
2. 加大循环步数还不能解决的(循环步数有人说超过200再不收敛,再加也不会有用了,这虽然不一定绝对正确,但200步应该也差不多了),有两种可能。一是查看能量,发现能量在振荡了,且变化已经很小了,这时可能重新算一下,或者构型稍微变一下,继续优化,就可以得到收敛的结果(当然也有麻烦的,看运气和经验了);二是构型变化太大,和你预计的差别过大,这很可能是你的初始构型太差了,优化不知道到哪里去了,这时最好检查一下初始构型,再从头优化。
3. 对于L9999快达到收敛时,考虑减小优化步长有时对于能量振荡的情况也是有用的,opt(maxstep=1).(flyingheart )

一个建议是,对于大体系,难收敛体系,先用小基组,低精度算法优化一下,以得到较好的初始构型,再用高精度的计算接着算。如果前面的方法保留了chk文件,重新计算时需要使用 geom=allcheck 读入构型(就不必麻烦地写构型了), guess=read(读入初始波函数,可以加快第一步SCF收敛)。

[ Last edited by wuli8 on 2009-6-13 at 21:59 ]
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小红豆

主管区长 (知名作家)


★★★★★ 五星级,优秀推荐

支持分享!
2楼2008-01-27 14:12:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

jghe

金虫 (著名写手)


★★★★★ 五星级,优秀推荐

牛人啊,顶!
3楼2008-01-27 22:24:27
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

小笨虫


1

我也经常遇见这种事情
要是能总结一下每个过程出现错误的原因就好了
现在好多出错了
只能自己摸索
4楼2008-01-28 08:45:35
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 zzgyb 的主题更新
☆ 无星级 ★ 一星级 ★★★ 三星级 ★★★★★ 五星级
普通表情 高级回复(可上传附件)
信息提示
请填处理意见