盤點Grimme迄今對理論化學的貢獻
First release: 2017-Sep-3 Last update: 2021-Nov-19
值得一提的是,很多理論化學研究者,搞出來的凈是一些假大虛空的方法,要理論意義沒多大理論意義,要實際應用價值更沒實際應用價值,各種放衛星、搞大躍進,往往把自己搞的東西吹得邪乎,在文章、學術會議上到處打廣告。這些人搞的東西大多都不提供公開的能夠實現的程序,別人要也不輕易給或者根本不理,只能任作者自己翻來覆去發paper,別人想用沒法用,想進一步對方法進行檢驗也沒法檢驗,令人覺得作者是故意藏著掖著,對其方法沒有自信或存在嚴重缺陷。雖然這些人搞的一些方法可能在一些公開程序里實現了,但是一測試往往發現效果和原文里吹得差老遠,或者根本沒有普適性,在實際中很難派上用場。反觀,Grimme的研究風格十分值得夸贊。Grimme搞出來的東西,看起來沒有特別玄妙高深,而絕大多數都是在實際應用研究中有用的。其大多數成果都在課題組主頁上提供了可以實現相應計算的程序,任別人使用、測試。實際去用這些程序時,也會發現Grimme原文里的漂亮數據大多并不坑爹,應用到實際各類體系也大多能達到文中宣稱的效果。Grimme搞出來的東西還追求黑箱化,用著方便,不需要太多經驗,不像一些搞理論的人,弄出來的數據看似漂亮,但實際上能算出那種效果的結果都得需要靠豐富的經驗和“不為人知的手段”才能調出來。Grimme的研究簡單來說就是:求真務實。這是所有搞方法的理論化學工作者值得學習的。另外,Grimme近年來和ORCA的開發者Frank Neese緊密合作,很多Grimme搞的成熟的方法,甚至是一些還沒發表但有用的方法,都已經在ORCA最新版本中出現了,使用起來也相當方便。這種搞理論方法的人和搞主流量化程序的人密切合作是非常倡導的,這使優秀方法能迅速普及,惠及廣大群眾,也可以在大量用戶使用中發現方法的不足并加以改進。
以下列舉一下Grimme的主要成果,按年代順序排。
(1)DFT/MRCI。1999年
文獻:JCP,111,5645(1999)這算是Grimme的早期成果。思想就是基于DFT軌道并用DFT交換相關勢構造CI哈密頓來做MRCI。為了避免動態相關的double-counting,對CI非對角矩陣元做了scale使之指數地降為0。并且由于相關泛函已經考慮了很多動態相關,因此只選取重要的CSF來考慮動態相關。DFT/MRCI比傳統的MRCI省時很多,并且還可以引入RI進一步降低耗時,精度和CASPT2差不多,相對誤差都在<0.2eV程度,計算激發能比TDDFT好不少。不過DFT/MRCI并未在主流量化程序里實現,在Grimme的主頁上也沒有提供計算程序,并沒有流行開。
(2)SCS系列方法 & MP2.5。2003/2009年
SCS-MP2文獻:JCP,118,9095(2003)SCS-MP3文獻:JCC,24,1529(2003)
OO-SCS-MP2文獻:JCTC,5,3060(2009)
MP2.5文獻:ChemPhysChem,10,282(2009)
MP2是最便宜的后HF方法,精度雖然比HF大有改進,但還是很爛。對于一般問題,MP2平均精度還不如便宜得多的DFT(前提是恰當選擇了泛函),因此MP2逐漸失勢,特別是從B3LYP火了之后。而Grimme的SCS方法的提出,使得MP2又換發了生機。MP2的相關能可以認為是由自旋平行電子對和自旋相反電子對共同貢獻的,Grimme給這兩部分貢獻分別乘以了結合理論和經驗選擇的系數,使得計算化學反應能量方面精度比MP2提升巨大(但和CCSD比還有一定差距。在其它方面改進不大,計算勢壘、弱相互作用精度甚至還更低了)。SCS-MP2的耗時和MP2完全一樣,在ORCA等程序中可以直接用,在Gaussian中也可以通過IOp實現,見《Gaussian中非內置的理論方法和泛函的用法》(http://www.shanxitv.org/344)。同年,Grimme又提出了SCS-MP3,是把SCS-MP2能量加上1/4的MP3的E(3)校正能,精度比又臭又爛的MP3大為改進而耗時不變,并且好于SCS-MP2。后來Grimme和Neese還把SCS-MP2和軌道優化的MP2(OO-MP2)搞在一起弄成了SCS-OO-MP2,計算自由基的精度很好,但代價是由于要做OO步驟而耗時比SCS-MP2高了一個數量級。SCS的思想后來被其它研究者廣泛借鑒,提出了諸如SOS-MP2、GIAO-SCS-MP2、SCS(MI)-MP2、SCSN-MP2、SCS-S66-MP2等MP2變體,并且還被用到了其它方法上,產生了諸如SCS-CCSD、SCS-MI-CCSD、SCS-CC2、SCS-CIS(D)。受到SCS-MP3思路的啟迪,Hobza和Grimme等提出了把MP2能量和E(3)按照一定比例混合的MP2.5專門用來計算弱相互作用,結果挺不錯(后來Hobza等人又提出了進一步的變體MP2.X)。
(3)DFT-D。2004至今
DFT-D1文獻:JCC,25,1463(2004)DFT-D2文獻:JCC,27,1787(2006)
DFT-D3文獻:JCP,132,154104(2010)
DFT-D4文獻:JCP,147,034112(2017)、JCP,150,154122 (2019)
這是Grimme最重要的貢獻。在最近一篇比較水的Acc. Chem. Res上,Houk甚至將DFT-D視為是自B3LYP提出之后唯一值得稱道的重大進展。當年,DFT最大的軟肋之一被認為是弱相互作用描述爛,確切來說,是色散作用描述太差。B3LYP、TPSS之類完全描述不了色散作用,連束縛態都得不到;而SVWN、PBE、mPWPW91之類雖然能給出色散作用維持的束縛態,但相互作用能計算精度巨差,在現在來看直接拿它們來算弱相互作用純屬搞笑。DFT-D是幾乎“免費”地對DFT泛函的能量進行經驗性的校正的方法,使之描述色散作用精度有質的改進,它使得弱相互作用計算這個以往DFT的軟肋成為了它的專長。DFT-D從D2開始流行,B97D、ωB97XD等都是基于DFT-D2的,這時候DFT-D的重要性就已經被業界所廣泛認知,而普適性更強、精度更好的DFT-D3出來之后,更是立刻走紅,不出幾年幾乎所有主流量化程序都已支持它。所有搞量化的人,都是絕對要對DFT-D有基本了解的。關于更多討論,見《亂談DFT-D》(http://www.shanxitv.org/83)、《DFT-D色散校正的使用》(http://www.shanxitv.org/210)、《談談“計算時是否需要加DFT-D3色散校正?”》(http://www.shanxitv.org/413)。后來提出的DFT-D4主要力圖改進D3沒法體現實際電荷分布對色散作用的影響這個缺點,對某些涉及過渡金屬配合物的反應計算比D3有一定改進,但總的來說改進很有限,參見《DFT-D4色散校正的簡介與使用》(http://www.shanxitv.org/464)。
(4)雙雜化泛函。2006年至今
B2PLYP文獻:JCP,124,034108(2006)mPW2-PLYP文獻:PCCP,8,4398(2006)
PWPB95-D3、PTPSS-D3文獻:JCTC,7,291(2011)
PWRB95文獻:PCCP,18,20926(2016)
雙雜化泛函是在傳統雜化泛函基礎上又引入一定量的基于DFT軌道算的二階微擾項,故名雙雜化。雙雜化的概念由Grimme于2006年最早提出,并同時提出了B2PLYP和mPW2-PLYP兩種雙雜化泛函。它們雖然比雜化泛函計算量明顯高一個檔,略高于MP2一點,但精度也比那個年代的各種雜化泛函精度明顯高一個檔。雙雜化泛函是用不起CCSD(T),但用普通泛函又有余力者追求更好精度的非常理想的選擇,特別是用ORCA的話借助RI跑雙雜化飛快,比起雜化泛函DFT計算來說耗時也就高一倍左右。雙雜化泛函提出后受到業界廣泛重視,之后各種雙雜化泛函紛紛被提出。Grimme自己后來提出的PWPB95-D3比起B2PLYP精度大有提升,很值得使用(ORCA支持),雖然它不是雙雜化泛函中各方面精度最好的,但筆者感覺整體比較穩健,不像DSD-PBEP86等雙雜化那樣時好時爛。再之后Grimme提出的PWRB95只是弱相互作用方面比PWPB95-D3略強,其它方面還不如它,沒有太大使用價值。另外,Grimme在PCCP,11,4611(2009)中還提出把雙雜化泛函結合TDDFT計算激發態的方法,具體實現類似于CIS(D)那樣對激發能考慮二階微擾校正,這種做法在ORCA中已支持,精度比普通泛函做TDDFT更好。后來Martin等人把Grimme的SCS和雙雜化泛函思想結合,搞出來了DSD系列泛函,最早的是2010年提出的DSD-BLYP,后來又提出DSD-PBEP86等。
(5)gCP。2012年
文獻:JCP,136,154101(2012)中小基組,諸如def2-SVP、6-31G*下計算弱相互作用爛最主要的原因是BSSE問題嚴重,雖然可以用counterpoise很大程度解決,但需要多花一倍多耗時,更惡心的是沒有解析導數,在優化、振動分析時耗時高得要命。而且,對于比如分子內弱相互作用的BSSE對幾何結構的影響還沒法用counterpoise來考慮。為了解決這些問題,Grimme在2012提出了gCP,全稱是geometrical counterpoise。這是一種基于幾何結構經驗性計算BSSE校正能的方法,有點類似于DFT-D那樣,也是有幾何結構就能立刻給出校正值,但是參數不像DFT-D那樣依賴于泛函,而是依賴于基組。gCP對常見的極小基、2-zeta、3-zeta基組都有參數,而4-zeta時BSSE問題已經很小了所以沒再提供參數。gCP可以說是免費的,而且用了之后不會導致原先的解析導數喪失。gCP在ORCA中已支持。更多的討論見《大體系弱相互作用計算的解決之道》(http://www.shanxitv.org/214)。gCP和DFT-D實乃計算大體系弱相互作用者的巨大福音,前者解決中小基組的不足,后者解決泛函的不足,如果再結合RIJ技術加速純泛函計算,則"RI-純泛函-gCP-D3/def2-SVP"算大體系弱相互作用真是又快又好(一般推薦優化用這個,算能量時切換到更好的def2-TZVP)。
(6)低頻振動的處理。2012年
文獻:Chem. Eur. J., 18, 9955 (2012)對于大體系,經常有振動頻率非常低的情況(如十幾、幾十cm-1),這些振動頻率計算誤差往往較大,并給熵、熱容、內能的熱校正量帶來較大誤差。Grimme寫上面這篇文獻的目的雖然是測試不同泛函計算的大體系結合自由能的精度,但文章最有意義的或許是其中順帶著提出的處理這些低頻模式的做法。Grimme對很低頻范圍(如小于100cm-1)的振動模式對熵的貢獻用諧振模型得到的熵和按照自由轉子模型考慮得到的熵進行插值來得到,這比起Truhlar等人直接將低于某個閾值的低頻頻率直接用閾值頻率來替換明顯更為優雅、準確。Grimme沒提供做這個處理的程序,但可以用我開發的Shermo程序非常方便地實現:《使用Shermo結合量子化學程序方便地計算分子的各種熱力學數據》(http://www.shanxitv.org/552)。
(7)sTDA、sTD-DFT、sTDA-xTB。2013/2014/2016年
sTDA文獻:JCP,138,244104(2013)sTD-DFT文獻:CTC,1040-1041,45(2014)
sTDA-xTB文獻:JCP,145,054103(2016)
計算兩百以上原子的大體系UV-Vis、ECD光譜是個巨大難題。半經驗層面的ZINDO雖然快,但是局限性大,支持的元素也很有限,精度也不太好。而做TDDFT的話就更別提了,這種尺度光是算DFT單點都很耗時,對這種大體系算光譜要想算得比較完整,往往要算幾百個態,而態數越多TDDFT耗時就越高,所以這種體系這種尺度的電子光譜計算極度吃力或者根本不可能實現。sTDA是Grimme提出的基于DFT軌道的十分快速的做TDA近似形式的TDDFT計算(以下簡稱TDA-DFT)的方法。用sTDA計算這樣很大體系的大量激發態的總耗時基本上等同于DFT單點耗時,即只要量化程序把DFT單點給算完了,那么sTDA算法很快就可以給出激發態信息。簡單來說,sTDA相當于把TDA-DFT公式里的哈密頓矩陣元以近似方式超級快速地構建出來。雖然原理上sTDA的精度肯定比TDA-DFT要低,但實際上sTDA可以一定程度上修正普通全局雜化泛函計算CT態上的問題,所以未必結果更差。TDA-DFT雖然激發能算得和TDDFT基本一樣,但是算的振子強度和轉子強度爛,于是Grimme后來提出了sTD-DFT,即把sTDA的思想直接用在TDDFT上來避免那些問題,耗時并沒增加多少。sTDA是TDA-DFT的近似形式,sTD-DFT是TDDFT的近似形式。sTDA和sTD-DFT在ORCA中都已經直接支持了,推薦對于常規TDDFT搞不動的大體系計算時使用。
前面說,sTDA或sTD-DFT的整個計算過程中瓶頸不在于激發態計算了,而在于單點了。那為了更一步降低耗時,從而能更快地計算更大體系,甚至能夠考慮動力學平均(對MD軌跡均勻間隔取的結構分別計算光譜再求平均),就必須把單點的耗時也給大幅降低,最好降低到半經驗方法的檔次。為此,Grimme提出了sTDA-xTB,這把sTDA過程的基態部分計算用類似SCC-DFTB的形式來實現,xTB代表extended tight binding之意。這樣一來,用于乃至蛋白質、核酸這樣的巨大體系都不成問題了。最近Grimme發表了篇文章JACS,139,11682(2017),成功地將sTDA-xTB方法用于生物大分子的UV-Vis和ECD計算,還考慮了動力學平均,并把GBSA與sTDA-xTB相結合考慮隱式溶劑效應。結果和實驗對得不錯,耗時還很低。
(8)3c系列方法:HF-3c、PBEh-3c、HSE-3c、B97-3c、r2SCAN-3c。2013~2020年
HF-3c文獻:JCC,34,1672(2013)
HF-3c是Grimme提出的快速量化計算大體系的方法,耗時介于平時常用的底限級別B3LYP/6-31G*與半經驗方法之間。它是指用HF結合比極小基略大一點的一套稱為MINIX的基組進行計算,計算時引入三個校正,因此叫3c,包括DFT-D3校正、gCP校正,以及對基組的短程修正項。HF-3c在ORCA中支持,很快速粗糙地計算大體系用這個還可以。
PBEh-3c文獻:JCP,143,054107(2015)
PBEh-3c比HF-3c明顯貴得多,但結果也好得多。PBEh-3c是指使用PBEh泛函(把PBE0的HF成份提升到42%)結合修改版def2-SV(P)進行計算,同時引入gCP、DFT-D3校正項。看起來只有兩個校正,叫3c有點詭異,實際上另一個c是指對基組的修改。PBEh-3c在ORCA中支持,它比起看起來檔次差不多的B3LYP/def2SV(P)-D3-gCP結果整體更好,但在目前的ORCA中明顯更昂貴,因為PBEh-3c目前在ORCA里沒法用RIJCOSX來加速。PBEh-3c在提出時同時考慮能量、結構、振動分析的結果,這方面都算得不錯。
HSE-3c文獻:Phys.Chem.Chem.Phys.,18,15519(2016)
思想和PBEh-3c很類似,就是把gCP和D3用到了HSE06上并結合特定基組,主要適合周期性、凝聚相體系,相比于PBEh-3c對這類問題計算耗時低得多,對于PBEh-3c原本適合的體系并沒有額外的精度優勢。
B97-3c文獻:JCP,148,064104(2018)
B97-3c是修改版B97純泛函與mTZVP基組、D3校正、SRB校正的組合。SRB (short-range basis)用于校正純泛函高估鍵長的問題。mTZVP是def-TZVP的修改版,減少了氫的極化而增加了氧的極化,對Ar之后用的是def2-TZVP。B97-3c沒有gCP校正項,因為此項的效果在參數化過程中直接吸進去了。B97-3c對主族略遜于PBEh-3c,過渡金屬好于PBEh-3c,弱相互作用與PBEh-3c互有勝負。計算分子晶體晶格能好于HSE-3c。雖然B97-3c的基組比HF-3c和PBEh-3c都大,但是由于可以用RIJ顯著加速,對大體系并不比HF-3c慢特別多,比PBEh-3c則快得多得多。總的來說B97-3c是一個很值得使用的方法,根據我的測試,它在ORCA里對較大體系耗時和RI-BLYP/def2-SVP基本持平,但結果肯定整體更好。
r2SCAN-3c文獻:JCP,154,064103(2020)
使用原版r2SCAN泛函,結合Grimme自己搞的修改版def2-TZVP基組(mTZVPP)、重新擬合參數的DFT-D4、gCP,沒有結合SRB校正。耗時是B97-3c的兩倍左右,結果比之改進挺大,原文測試里甚至達到主流雜化泛函結合QZ檔次基組的水平。算相互作用能很好,和PW6B95-D4不分伯仲,強于B3LYP-D4,也比B97-3c強。從ORCA 5.0開始支持。但凡耗時能接受,都建議用這個代替B97-3c。
(9)FOD。2015年
文獻:Angew. Chem. Int. Ed., 54, 1 (2015)、Chem. Eur. J., 23, 1 (2017)FOD全稱是Fractional occupation number weighted electron density,這是一種以圖形化方式展現不同區域的靜態相關強弱的方法,對于分析活性空間的選取、了解體系電子相關的特征很有用。實際上FOD就是一個形式非常簡單的基于軌道密度定義的實空間函數,其中涉及的軌道占據數需要做有限溫度的分數占據DFT計算。如果對FOD進行全空間積分,就是NFOD值,這有點類似于T1診斷那樣可以定量考察整體的靜態相關強弱。目前ORCA直接支持FOD計算。順帶一提的是,能圖形化考察體系不同區域電子相關程度的方法不止這一種,Multiwfn還支持其它方法,見Multiwfn手冊4.A.6節的討論和示例。
(10)GFN-xTB。2017年至今
GFN-xTB文獻:JCTC,13,1989(2017)
GFN2-xTB文獻:DOI: 10.1021/acs.jctc.8b01176 (2019)
綜述:WIREs Comput Mol Sci., e01493 (2020)
Grimme在搞sTDA-xTB時候發現xTB的思路有潛力,可以單獨作為一個半經驗檔次的方法用于更多問題,于是提出了GFN-xTB(Geometry, Frequency, Noncovalent, eXtended TB),期望可以以很便宜的方式把幾何優化、頻率計算、弱相互作用這些問題都算得不錯,能用于上千原子大體系?。GFN-xTB一代(GFN1-xTB)的測試結果比PM6加上色散、氫鍵、鹵鍵校正的PM6-D3H4X整體有一定優勢,盡管不是完勝。GFN2-xTB是第二代的GFN-xTB,改進了第一代的計算形式,使之更嚴格,并且結合了DFT-D4,基本可以做到在計算弱相互作用方面總能勝過PM6-D3H4X,但也不是各種體系總比GFN1-xTB好。GFN-xTB方法的一個好處是參數化的元素非常全,一直到86號元素,而且對于涉及過渡金屬體系的情況,整體可靠性遠高于主流的半經驗方法PM6、PM7。目前唯一能實現GFN2-xTB計算的是Grimme開發的xtb程序,其效率極高,而且結合Gaussian使用的話可以實現更多功能。xtb程序的使用簡介以及與Gaussian的聯用在這里有介紹:《將Gaussian與Grimme的xtb程序聯用搜索過渡態、產生IRC、做振動分析》(http://www.shanxitv.org/421)。支持GFN1-xTB的程序除了xtb外還有CP2K、DFTB2019、DFTB+、Turbomole。用Multiwfn可以很方便地產生CP2K做GFN-xTB任務的輸入文件,見《使用Multiwfn非常便利地創建CP2K程序的輸入文件》(http://www.shanxitv.org/587)。
總的來說,在我看來Grimme關鍵性功績順序是:DFT-D > 雙雜化泛函 = GFN-xTB > SCS = sTDA = gCP = 3c系列。
在我讀過的Grimme的文章中,Grimme還有其它值得一提的貢獻,由于相比上述內容我個人感覺重要程度沒那么高,就很簡短一說了:
GFN-FF力場:Angew. Chem. Int. Ed., 59, 15665 (2020)。這是一個普適的可極化力場,支持1到86號元素,各類體系都能算。形式比起常見的AMBER、GROMOS、OPLS-AA復雜不少。xtb程序支持。在2021年JCTC DOI:10.1021/acs.jctc.1c00832上將此力場推廣到了周期性體系后叫做pGFN-FF。
pi-pi堆積的研究:Angew. Chem. Int. Ed., 47, 3430 (2008)一文中Grimme對pi-pi堆積的本質做了很好的討論,想透徹了解pi-pi堆積者很建議讀此文。
全自動構象權重平均算NMR:Angew. Chem. Int. Ed., 56, 14763 (2017)
基于分子動力學的質譜的理論計算方法:Angew. Chem. Int. Ed.,52,6306(2013)、JPCA,120,3755(2016)、ACS Omega,4,15120(2019)
GMTKN測試集:這是大規模、全面性的用于測試理論方法計算精度的測試集,并且不斷擴充。最初的GMTKN24測試集原文為JCTC,6,107(2010),在前述的PWPB95-D3原文里還有其擴展后的GMTKN30測試集。目前最新的版本是GMTKN55,見PCCP,19,32184(2017)
ISOL24異構化能測試集:PCCP,12,6940(2010)
ROT34轉動常數測試集:JCC,35,1509(2014)
xTB-IFF:JCP,147,161708(2017)。IFF意指intermolecular force-fields。這是用GFN-xTB的數據來產生分子間的作用勢,這種勢函數遠比常規的原子電荷+LJ勢的形式復雜,描述弱相互作用精度不錯。
QMDFF:JCTC,10,4497(2014)。QMDFF全稱Quantum Mechanically Derived Force Field,此文描述了基于量子力學產生準確分子力場的自動化過程。
Grimme歲數并不算大,按照當前他開掛的出成果的速度,想必他未來還會有一大波對理論化學界很有實用價值的成果誕生。我還明顯感覺,Grimme力圖把各個尺度的計算給打通,都提供最佳的計算途徑,對于基態能夠處理的體系由大到小有這么個順序:GFN-FF、GFN-xTB、HF-3c、r2SCAN-3c、雙雜化泛函、SCS-MP3。而對于激發態,有這么個順序:sTDA-xTB、sTDA、雙雜化TDDFT、DFT/MRCI