盘点Grimme迄今对理论化学的贡献

盘点Grimme迄今对理论化学的贡献

文/Sobereva  @北京科音

First release: 2017-Sep-3   Last update: 2021-Nov-19


要说理论、计算化学界目前最火的人是谁,如果说是Stefan Grimme教授,恐怕不会招来太多异议(虽然Truhlar、Neese等也很火)。1963年生于德国的Grimme在近十几年来,对理论计算化学界的贡献极大,硕果累累,不仅功底深厚而且精力旺盛。近年来其文章产量极高,平均一年30篇,文章列表见其课题组主页:https://www.chemie.uni-bonn.de/pctc/mulliken-center/grimme。由于Grimme的成果实用性很高,意义很大,所以很值得了解一下。

值得一提的是,很多理论化学研究者,搞出来的净是一些假大虚空的方法,要理论意义没多大理论意义,要实际应用价值更没实际应用价值,各种放卫星、搞大跃进,往往把自己搞的东西吹得邪乎,在文章、学术会议上到处打广告。这些人搞的东西大多都不提供公开的能够实现的程序,别人要也不轻易给或者根本不理,只能任作者自己翻来覆去发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://sobereva.com/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://sobereva.com/83)、《DFT-D色散校正的使用》(http://sobereva.com/210)、《谈谈“计算时是否需要加DFT-D3色散校正?”》(http://sobereva.com/413)。后来提出的DFT-D4主要力图改进D3没法体现实际电荷分布对色散作用的影响这个缺点,对某些涉及过渡金属配合物的反应计算比D3有一定改进,但总的来说改进很有限,参见《DFT-D4色散校正的简介与使用》(http://sobereva.com/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://sobereva.com/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://sobereva.com/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://sobereva.com/421)。支持GFN1-xTB的程序除了xtb外还有CP2K、DFTB2019、DFTB+、Turbomole。用Multiwfn可以很方便地产生CP2K做GFN-xTB任务的输入文件,见《使用Multiwfn非常便利地创建CP2K程序的输入文件》(http://sobereva.com/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