高斯不收斂,如何優(yōu)化
#p b3lyp/lanl2dz opt pop=(full,npa)
>>>>>>>>>> Convergence criterion not met.
SCF Done: E(UB+HF-LYP) = -1714.45115901 A.U. after 129 cycles
Convg = 0.8068D-05 -V/T = 2.0529
S**2 = 0.9172
KE= 1.628346096785D+03 PE=-1.275059909267D+04 EE= 5.005782636124D+03
Annihilation of the first spin contaminant:
S**2 before annihilation 0.9172, after 0.7568
Convergence failure -- run terminated.
Error termination via Lnk1e in d:program filesg03l502.exe at Fri Jun 18 18:59:12 2021.
Job cpu time: 1 days 5 hours 55 minutes 14.0 seconds.
File lengths (MBytes): RWF= 206 Int= 0 D2E= 0 Chk= 18 Scr= 1
請(qǐng)問(wèn)高手,我這個(gè)從報(bào)錯(cuò)看應(yīng)該是沒(méi)有收斂,但是應(yīng)該如何優(yōu)化或者修改?救救孩子吧。。。。@jiewei
返回小木蟲(chóng)查看更多
京公網(wǎng)安備 11010802022153號(hào)
增加循環(huán)次數(shù)
此樓不小心重復(fù)了
導(dǎo)致scf不收斂的原因很多。通常默認(rèn)的128步是夠用的。如果不收斂?赡苡衅渌恍┰颉V苯釉黾硬綌(shù)用處可能會(huì)很小。有一些比較通用的做法可以看我這個(gè)教程里第2.2節(jié)scf不收斂的應(yīng)對(duì)方法。
http://m.gaoyang168.com/t-14242735-1
因?yàn)闆](méi)法發(fā)截圖了 那就把內(nèi)容復(fù)制到這里,不過(guò)排版就沒(méi)有那么好了。
如下:
a. 首先檢查輸入結(jié)構(gòu)是不是合理。絕大部分情況下都是因?yàn)榻Y(jié)構(gòu)跟 “真實(shí)” 結(jié)構(gòu)差的很遠(yuǎn),導(dǎo)致的scf難以收斂。盡量給一個(gè)能給出的最好結(jié)構(gòu) (比如先用uff粗略優(yōu)化一下,再用pm6 在優(yōu)化一下。然后再用dft計(jì)算之類的)
b. 檢查體系的自旋多重度是否設(shè)置的合理。尤其是過(guò)渡金屬體系。如果多重度設(shè)置的偏離 “真實(shí)” 情況很遠(yuǎn),則非常難以收斂
c. 檢查基組是否合理。尤其是包含重原子,是否合理的設(shè)置了混合基組之類的都會(huì)影響。具體參考本文1.1節(jié)設(shè)置混合基組和贗勢(shì)的方法。這里你可以多看看 我看你用的lanl2dz如果你這個(gè)體系不是一個(gè)重金屬的團(tuán)簇 對(duì)整個(gè)體系都用這個(gè)贗勢(shì)基組未必是好選擇
d. 檢查當(dāng)前給的初始結(jié)構(gòu)是否真實(shí)存在于 “氣相” 中。因?yàn)橛袝r(shí)候氣相和溶液相結(jié)構(gòu)很不一樣。這就會(huì)導(dǎo)致初始結(jié)構(gòu)以為很準(zhǔn)其實(shí)是很差的情況。如果是溶液中的結(jié)構(gòu)則需要加上溶劑模型scrf,見(jiàn)本文1.2 .有時(shí)候加了溶劑模型就可以幫助收斂。
e. 以上確定是沒(méi)有問(wèn)題的,這時(shí)候就考慮加入一些關(guān)鍵詞幫助收斂
scf=(xqc,maxconventionalcycles=64)
這個(gè)關(guān)鍵詞可以應(yīng)用在絕大部分情形下都有效。但是絕不要一上來(lái)就用,一定要檢查之前的步驟一都沒(méi)問(wèn)題了再去使用。g09的話就用scf=xqc就好。 g16可以寫(xiě)這一串。
scf=novaracc
高斯在計(jì)算scf過(guò)程中,最開(kāi)始的幾步為了加速會(huì)降低積分精度。這樣有時(shí)候就會(huì)讓波函數(shù)不小心進(jìn)入了一個(gè)錯(cuò)誤的區(qū)間。很難再優(yōu)化下去。所以可以用這個(gè)關(guān)鍵詞,取消這種加速降低積分精度的方法。
scf(vshift=500) 這個(gè)一般可以用在過(guò)渡金屬體系。這種體系,可能homo-lumo間距過(guò)小導(dǎo)致波函數(shù)不容易收斂。可以計(jì)算中人為太高這個(gè)值。這個(gè)不會(huì)影響結(jié)果只會(huì)影響收斂過(guò)程。一般設(shè)定在500上下比較合理。
int(acc2e=12, ultrafine)
如果用g09進(jìn)行計(jì)算,也可以考慮這個(gè)關(guān)鍵詞提高了dft的積分精度和格點(diǎn)精度。這個(gè)僅僅適用在某些dft計(jì)算中。比如m062x 這類對(duì)于格點(diǎn)要求比較高的泛函中。g16中這個(gè)已經(jīng)是默認(rèn)值不需要寫(xiě)。
實(shí)際計(jì)算可以用以上提到的一個(gè)或者幾個(gè)關(guān)鍵詞一起幫助收斂。
如果體系實(shí)在是太過(guò)巨大,這些都做了還是很難收斂?梢允褂
scf(conver=6)
這個(gè)關(guān)鍵詞降低scf收斂限到10^-6, 而默認(rèn)是10^-8。但是慎用。這樣的結(jié)構(gòu)可能得到的根本不準(zhǔn)。最好是優(yōu)化完成后,讀取波函數(shù)和結(jié)構(gòu)恢復(fù)到默認(rèn)的收斂限再進(jìn)行一次優(yōu)化,