乱谈激发态的计算方法

乱谈激发态的计算方法

文/Sobereva(3)
First release: 2014-Dec-7    Last update: 2017-Mar-7


这个文章就是随意胡乱谈一下各种计算激发态的方法,对于用得最多的TDDFT多费点笔墨。限于时间精力,严谨详细的探讨留待日后。如果对电子激发计算完全是门外汉,很建议读一下这篇入门级综述文章,会很有帮助:Chem. Soc. Rev., 42, 845-856 (2013)。


1 前言

理论计算激发态,通常算的是这些:

(1)垂直激发能:垂直激发纯粹是理论工作者假想出来的激发过程,即跃迁过程中结构不发生变化。它的计算是最最最简单的,而且其数值和实验最大吸收峰近似对应(由于没考虑振动耦合,或者说实际过程没那么垂直,故即便垂直激发能计算是绝对精确的,往往也会高估最大吸收峰位置0.1~0.3eV),对于指认光谱、预测光谱很有用,因此绝大多数激发态研究就是算垂直激发能。经常算的还有荧光,通常就是在激发态平衡结构下计算垂直发射能,原理是很类似的。

(2)绝热激发能:绝热激发也纯粹是理论工作者假想出来的激发过程,即激发过程是从初态势能面最小点结构跃迁到末态势能面最小点结构。计算绝热激发能需要做激发态优化,比较费时间,而且通常没有垂直激发能那么接近最大吸收峰,因此研究得相对少一些。不过,绝热激发能可以作为实验得到的0-0跃迁能量的较好近似(不过由于激发态ZPE通常低于基态,因此精确计算的绝热激发能往往会高估实际0-0值0.1eV左右)。

(3)振子强度:各个态的振子强度加上各个态的激发能,经过展宽,就能得到理论计算的光谱图,显然振子强度是很重要的量。如果不清楚光谱图是怎么根据理论计算数据得到的,可以看看《使用Multiwfn绘制红外、拉曼、UV-Vis、ECD和VCD光谱图》(http://sobereva.com/224)。但注意,要很准确地获得吸收/发射光谱,包括由此预测染料分子颜色之类问题,必须把整个吸收带能够较准确地预测出来,而不仅仅着眼于几个吸收峰,这必须考虑振动态与电子态的耦合,见《振动分辨的电子光谱的计算》(http://sobereva.com/223)。

(4)激发态几何结构:电子激发导致体系几何结构发生了什么样的变化是化学上感兴趣的问题。有时变化很显著,如氢的转移、分子结构的大幅运动。

(5)势能面:前面其实只是研究激发态势能面上的几个点,而很多研究需要激发态势能面的更多的信息。包括考察激发态势能面上的势垒、研究激发态的振动模式、与基态间的圆锥/避免交叉点等等,这些问题对于光化学反应、无辐跃迁(系间窜越、内转换)的研究极其关键,这也是相对来说高级一些的研究。

(6)激发态的电子结构性质:比如激发态的偶极矩、四极矩、极化率、原子电荷、成键方式、芳香性等等,这需要得到激发态波函数。

另外跃迁特征也是经常要考察的,为此可以用Multiwfn作密度差图、electron-hole分析、跃迁密度矩阵分析、电荷转移分析,一些量化程序如Gaussian也支持做自然跃迁轨道(NTO)等分析。

说了一堆,越来越跑题了,以后单独再写帖子。下面言归正传。


2 TDDFT

早年间大家算激发态往往是半经验+CI级别,那个非常粗糙,后来标准的方法就是基于HF轨道做CIS了,但是CIS的激发能准确性颇不理想。后来TDDFT火了,成了老百姓计算激发态的标准方法,耗时不比CI多很多,而精度明显提升。但是早期TDDFT还不支持激发态解析梯度(如g03),需要用数值梯度,因此优化激发态结构很耗时,优化含N个几何变量的体系的每一步耗时相当于做6N次激发能计算,故那个时期流行CIS优化激发态结构而用TDDFT算激发能。不过如今主流的量化程序,包括g09都纷纷开始支持TDDFT解析梯度了,CIS就基本没用武之地了。不过,TDDFT的解析二阶导数还没普及,现在只有少数程序如Q-Chem能做,因此要算激发态频率,特别是与之密切相关的振动耦合的计算,对较大体系来说还是极为耗时的,另一种选择就是凑合用支持二阶解析导数的CIS来做。

总之,TDDFT无疑是最流行的计算激发态的方法。影响TDDFT精度的关键有两点,一是泛函的选择,二是基组的选择。基组其实倒没那么大任意性。对于一般的价层激发,6-31G*是底限(适合较大体系),条件好点就用6-311G*,如果计算量还有富余可以用TZVP,若能用到更高级的def2-TZVP则在基组方面就已经完美了。如果涉及高阶价层激发,特别是里德堡激发态,弥散函数是必不可少的,再穷也不能低于6-31+G*,一般用aug-cc-pVTZ。若想更精确计算里德堡激发,最好是用d-aug-cc-pVTZ基组,它比aug-cc-pVTZ又加了一层弥散函数,不过TDDFT的精度配不上这个基组的精度,要用它的话应该把方法也改为更精确的方法。

相对于基组的选择,泛函的选择余地更大、门道更多,下面简单说说目前公认的比较好的选择。上一节提到了激发态研究会涉及到许多内容,具体拿什么衡量激发态的计算准确性是个问题。检验垂直激发能显然是最简单直接的方法,但是垂直激发能实验上测不到,考虑振动耦合来对照最大吸收峰又太耗时(要算二阶导数),因此理论化学家通常用高精度方法如CC3、CASPT2、MRCI结合大基组计算垂直激发能作为金标准来衡量其它廉价方法的合理性。下面说的误差大多是相对于这样理论方法给出的金标准而言的。(但通过理论方法获得垂直和0-0激发能之差,以及气相和溶剂相激发能之差来对实验实验0-0数据进行校正,倒也能估出实验的垂直激发能)

价层激发,激发态是单重态的情况:最好选择是PBE0,误差约在0.1~0.3eV。B3LYP仅次于PBE0,从统计值来看误差比PBE0高一丝。有一个趋势值得一提,即HF成份越大,计算出的激发能数值往往越大。纯泛函没有HF部分,激发能都明显偏低,而HF成份较高的,比如BHandHLYP(50%)、M062X(54%),都有高估激发能的倾向。下面提到的范围分离泛函,如CAM-B3LYP、wB97XD、LC-wPBE等,由于远程极高的HF成份,激发能也一律偏高。而PBE0 25%、B3LYP 20%这样HF成份的泛函,从平均值上看,没有明显整体高估或低估激发能的倾向。上述规律对多数体系是适用的,但对于大共轭体系(如染料分子),有的benchmark文章(如JCP,132,184103)发现25%偏低了,有低估激发能的倾向,而建议用HF成分更高的比如PBE38(37.5%)或BMK(42%)。常见泛函的HF成份总结在了这里:《不同DFT泛函的HF成份一览》(http://sobereva.com/282),如果发现自己用的泛函相对于实验值有蓝移(红移)趋势,那么可以选个HF成份更小(更大)的泛函再试。

价层激发,激发态是三重态的情况:几乎所有方法无论HF成分高低都低估激发能。HF成份对激发能的影响趋势虽然还存在,但远没有单重态情况那么明显。M062X对这种情况表现很好,而PBE0/B3LYP则表现平庸。

电荷转移激发、里德堡激发的情况:电荷转移激发就是电子激发会造成明显的电子-空穴分离,导致电子密度有长程转移;里德堡激发就是指电子激发到高阶、表现出明显弥散特征的空轨道上的激发。由于传统的DFT交换泛函的长程行为都不对,导致计算这两类激发能的时候误差都比较大,除非像M062X这样有很高HF成份。2000年以后开始出现了一类范围分离泛函,比较有代表性的包括CAM-B3LYP、wB97XD、LC-wPBE等,给长程部分用了很高甚至100%HF成份,这使得这两类激发的误差大大降低,不过,作为代价,价层激发能的计算精度比起PBE0有不小差距。对于电荷转移、里德堡激发,我比较推荐的是CAM-B3LYP、wB97XD、M062X,其中哪个更好没有明确定论。
(PS:判断哪些激发态是电荷转移、里德堡激发有很多标准,Multiwfn很适合分析这个问题,见手册3.18节的讨论和4.18节的分析实例。)

如果不想区分各种类型的激发,只想用一个泛函来算,那么我推荐M062X或wb97XD,因为对各类激发,它们不一定都很理想,但肯定都不太渣,整体表现较好。至于CAM-B3LYP,虽然电荷转移激发、里德堡激发表现不错,但价层激发太烂。M062X和wb97XD都是同年诞生的(2008),算是很有前景的泛函,传统泛函的两条关键性软肋(电荷转移、里德堡激发不灵,以及弱相互作用描述很烂)都解决了,其它各方面也都不错,但是比起老同志B3LYP的缺点就是它们计算比较耗时,特别是wb97XD,耗时往往会多出一倍或几倍。顺带一提,wB97XD是紧随wB97X而诞生的,不光是在wB97X基础上增加了色散校正,还调节了其它参数。wB97XD计算激发能比wB97X有微弱优势,而同时又把色散校正考虑进来了(不带来额外耗时),因此推荐用wB97XD。

特别值得一说的是,近年来w调控的泛函特别流行。范围分离泛函计算结果显著依赖于w参数,正如普通泛函结果显著依赖于杂化成份一样。w参数对于不同体系是不同的,因此用w调控的泛函计算一个体系前先得优化w参数(文绉绉地也叫做w调控),具体做法见《优化长程校正泛函w参数的简便工具optDFTw》(http://sobereva.com/346)。使用经过w调控后的泛函计算激发能的精度相当好,比起上述凭经验选的泛函结果几乎总是更好,但可惜w优化的过程比较耗时。

传统低HF成份的泛函算电荷转移激发很烂,这不光体现在激发能上,往往在结构上也有明显体现。比如J. Chem. Theory Comput., 2012, 8, 2359–2372里的一个分子,CAM-B3LYP下的激发态结构中两个相邻苯环是接近平行的,而B3LYP优化出来的则是相互垂直的。所以,考察电荷转移体系,在优化时也不宜用低HF成份的普通杂化泛函,而纯泛函更是绝对别用。

千万不要用GGA泛函做TDDFT计算,不仅严重低估激发能,由于自相互作用误差(SIE),对于大共轭体系还容易产生所谓的ghost态。这些ghost态激发能很低,有电荷转移特征,振子强度很小,是虚假的没有物理意义的态。像B3LYP这样HF成份偏低的泛函也同样有可能出现ghost态。虽然ghost态振子强度小,不怎么影响得到的吸收光谱,但是会多花计算时间,使得本该算的真正有意义的更高激发能的态没算。

Tamm-Dancoff approximation (TDA)是TDDFT计算中时常碰到的一个东东。这个近似是指TDDFT计算中忽略所谓的B矩阵,这样TDDFT从形式上就形同基于DFT轨道做CIS。TDA近似可以节约一些计算时间,编程更容易,有的程序甚至只支持TDA形式下的TDDFT(如ORCA 3.0.3对于杂化泛函只能用TDA,纯泛函没这个限制)。一般认为TDA会略微降低TDDFT的单重态激发态计算精度,而对三重态激发态的结果却有明显改进,但也有文章发现用了TDA后单重态激发能也略有改善(也没准儿只是误差抵消所致)。TDA造成的一个坏处是振子强度比TDDFT有低估倾向(dx.doi.org/10.1021/ct400597f),算UV-Vis光谱和ECD谱一般不如TDDFT准。

以B2PLYP为代表的双杂化泛函也被用于TDDFT计算,这实际上是类似于CIS(D)方式计算,即在TDDFT基础上再做微扰修正。计算量显然比普通TDDFT要大,但精度也有相应的提高,对于价层单重态激发态来说,误差比PBE0可降低30%。目前只有ORCA支持双杂化泛函以CIS(D)形式做TDDFT计算。B2PLYP算是双杂化泛函中较差的,如JCP,132,184103所示,改用B2GP-PLYP做TDDFT结果会更好。

溶剂在激发态计算中是必须要考虑的,溶剂效应对激发态的影响比对基态更大。特别是溶剂对光谱的影响明显不可忽略,由于溶剂与溶质的基态和激发态的相互作用不同,造成能级发生不同程度的改变,故溶剂会使吸收峰红移或蓝移。溶剂方面,TDDFT可以已经可以比较好地处理了,和主流的PCM模型可以完美地结合,可以考虑非平衡溶剂效应和做state-specific计算来响应激发态密度。需要描述与溶质间的强相互作用的时候还可以用显示溶剂模型。有时候实际外环境比较复杂,比如蛋白质环境,此时可以用QMMM或更简单的背景电荷等方式将此效应表现出来。不过,像是由于溶剂造成的谱峰展宽、光谱细节消失等等效应,不管是隐式还是显示溶剂模型都没法表现,需要做模拟,这就很复杂了。

TDDFT经过不断的改进,目前看似已经很不错了,还剩下哪些软肋呢?笔者认为,有以下两点,这是受制于TDDFT自身形式而难以处理的:
(1)不适合研究势能面交叉,这依然是多参考方法的天下。
(2)不适合研究双电子激发特征明显的激发态(虽然也比CIS好)。
其余要继续进步的,就是(1)尽快普及TDDFT二阶解析导数(2)进一步改进泛函提高精度,可以考虑专门为计算激发能而对泛函进行优化(3)发展线性标度技术使之能做更大的体系(其实早有人搞了,常见的就是分块计算的思路,模型体系总能处理得很漂亮,但是一涉及诸如电荷转移激发这类牵扯到大范围耦合的情况这种思路很难搞)。

计算吸收光谱时经常遇到的一个问题是要确定需要计算的态数。往往2~7eV区域是UV-Vis光谱感兴趣的区域。态数计算得少了,就会漏掉高能的激发态,还得再补算(比如先算20个态,发现不够,再补算10个态,比起直接算30个态会多花很多时间);然而态数越多TDDFT的耗时也越长,所以也不能一次算得过多。算多少态需要经验,和原子数关系密切。原子数很少时,可能算10个态时最高激发能就已经够高了,但是原子数多时,比如50个原子的有机分子,可能得算近100个态才够充分覆盖吸收光谱感兴趣的区域。除了通过经验外判断需要算多少态外,也可以通过JCP,138,244104提出的sTDA方法来做一次TDDFT近似计算,这种方法相对于基态单点计算几乎不需要什么额外耗时,可以由此看看大概需要算多少态才够达到期望的激发能,然后再去做精确的TDDFT计算。如果体系太大,要算的态数又太多,比如得好几百个态,那干脆就凑合直接用sTDA的结果好了,虽然比起精确TDDFT计算的UV-Vis图谱偏差不算小。

 

3 其它激发态计算方法

这一节就把除TDDFT以外的计算激发态的方法胡乱地盘点一下。

CIS:妇孺皆知的最经典的计算激发态的方法,理论十分清楚,也是大多数其它激发态计算方法的根基,有尺寸一致性。此方法精度颇不理想,尤其是有严重高估激发能的趋势,经常高估达1~2eV,故有人将之乘上校正因子来避免高估趋势(不过没有普适的)。之所以有这样的趋势,是因为它的轨道都是来自于基态HF计算(产生的单重激发组态函数用于CIS变分不理想,能量偏高),同时又没引入双重激发组态来描述激发态的动态相关来降低其能量。CIS好处是计算比较快,算计算电荷转移激发较好,而且Gaussian里有二阶解析导数。总之CIS也就是用于定性计算的目的,一般可以给出正确的激发态能量顺序,但是定量精确计算就别指望了。

TDHF:求解时需要求解一个维度比CIS矩阵大一倍的矩阵本征值,计算矩阵元所花时间比CIS要多不少。TDHF比CIS改进甚微(激发能虽然比CIS降低了一点,但仍然高估),这是因为从要求本征值的矩阵形式上看,比CIS多的那部分数值小故影响不大。TDHF的跃迁偶极矩比CIS好,计算三重态激发态糟糕(CIS没这个问题)。所以从性价比上看TDHF不如CIS,故没得到广泛应用。

CIS(D):是对CIS通过微扰方式引入了双激发组态来考虑激发态动态相关,修正了CIS的精度特别是高估激发能的趋势,但依然不算精确的方法,计算量比CIS增加不少,各方面比起TDDFT没优势,如今用得也不多,不过被量化程序支持得还比较广泛。后来人们基于SCS-MP2的思想,也把CIS(D)的微扰部分的不同自旋的贡献进行了scale,称为SCS-CIS(D)以及SOS-CIS(D)。SCS-CIS(D)有多个参数化的版本,其中最好的版本比CIS(D)有一定改进,见JCP,132,184103,但比起最佳泛函下的TDDFT计算精度并无明显优势。

CISD:此方法一般是算基态的,但也可以同时计算基态和激发态,激发能即是它们的差值。但是CISD中基态的动态相关考虑得比激发态充分得多,因此算激发能的时候误差抵消不好,会高估激发能,还不如更便宜的CIS(D),而且计算量又很大,根本没人用。

Full CI:圣杯!

耦合簇:运动方程(EOM)和线性响应(LR)是将耦合簇(CC)用于算激发态的处理方法,前者基于非含时处理,后者基于含时处理,但最终结果是一致的,都可以结合CCSD、CCSDT...,LR也能容易地与各阶耦合簇迭代近似的版本如CC2/3、CCSDT-1/2/3结合使用来计算激发能,像基态CC一样也是尺寸一致的,标度和基态CC也是一致的。下面具体说几种常用的。
EOM-CCSD:使用很普遍,Gaussian就有。单参考态体系结果不错,对于单电子激发误差<0.3eV,强于TDDFT。对多参考态体系不好,双电子激发特征明显的体系误差也较大。略昂贵,能算的体系大小远小于TDDFT能处理的尺寸。
EOM-CCSD(T):CCSD(T)等非迭代的CCSDT近似版本也能与EOM/LR结合计算激发态,但是具体实现方法很杂,没有CCSD(T)计算基态那么形式明确,因此不流行,但精度还是挺好的,特别是对双电子激发精度改进很大。
EOM-CCSDT:很昂贵,只能用于几个原子,它的近似版EOM-CCSDT-3比它的精度还是有一定降低,但比EOM-CCSD改进还是明显的,尤其是双电子激发。通常无论单、双激发误差都<0.05eV。EOM-CCSDTQ更是只能用于模型体系,误差<0.02eV,和FCI符合得极好。可以用NWChem做。
EOM-IP-CCSD、EOM-EA-CCSD:对于双重态,平时的EOM-CCSD是基于UHF的,结果可能不好。如果体系加、减一个电子后成为闭壳层,则适合用EOM-IP-CCSD、EOM-EA-CCSD计算光谱。
LR-CC2:CC2是CCSD的近似版本,算激发能计算精度低于EOM-CCSD不少,振子强度误差比EOM-CCSD大一倍。虽然很多人认为CC2比TDDFT更准,甚至拿CC2作为标准值来衡量TDDFT结果,但实际上,只要泛函选择得非常合适的话,CC2和TDDFT的精度大体在同一档次。后来借鉴了SCS-MP2的思想又有了SCS-CC2,比较无聊,激发能计算精度并没比CC2有提高,
LR-CC3:CC3是CCSDT的近似版本,精度介于CCSD与CCSDT,>=CCSD(T)级别,但比CCSD(T)昂贵得多。结合LR可以算激发态,稍稍弱于EOM-CCSDT,但精度却也已经极好。CCSD(T)被当成弱相互作用计算的金标准,而LR-CC3则可以被认为是激发能计算的金标准,可以放心地当成参考值来用。不过,多参考态特征强,或者双电子激发特征较明显的时候,更适合CASPT2。Dalton挺适合做LR-CC3激发能计算。

MCSCF:虽然能用来算激发能,但主要目的不是用来定量准确算激发能,而是给微扰、CI等考虑动态相关的方法提供充分考虑了静态相关的参考态波函数,只有这样再把动态相关考虑进去才能得到很准确的激发能。另外,也只有使用MCSCF或基于它的方法才能准确研究势能面交叉问题,因为只有MCSCF才能均衡描述相互交叉的两个态(如果只是S0-T1交叉,用DFT也可以)。MCSCF包括CASSCF和RASSCF,一般用的都是CASSCF。虽然RASSCF看起来在设定上更自由灵活因此有可能少花钱多办事,它以廉价、打折扣的方式(限制激发的电子数)用RAS1、RAS3空间括住了比CASSCF更大的活性空间,但是不伦不类,静态相关描述不彻底,而动态相关又描述得半吊子,因此应用不广泛。

CASPT2:这是最最常用的高精度计算小分子激发能的方式,精度好,误差小于0.2eV,计算量也不很离谱,精度略逊于CC3但计算量则低很多。特别是对于基态多参考特征强以及双电子激发特征明显的激发态CASPT2比CC3更合适。CASPT2是研究光化学问题(牵扯各种势能面交叉)的王牌。但关键缺点是在活性空间选取上需要经验,选不好结果也就不好,不像耦合簇那样黑箱,使用便利程度上也因此打了折扣,另外有时有入侵态问题(通过能级移动可以解决)。注意CASPT2具体分为单态版本SA-CASPT2和多态版本MS-CASPT2两种,激发态计算一般用后者,计算量大于SA-CASPT2,但可以解决SA-CASPT2对于势能面交叉、价层-里德堡混合态时可能出现的问题。Molpro和Molcas是做CASPT2的主力,可以给出振子强度因此也能预测光谱。Molpro还支持CASPT2的解析梯度,因此能够方便地优化激发态。另外Molpro还有CASPT3,更精确但是计算量更大,用得较少。还有很多其它的类似CASPT2的基于MCSCF做二阶微扰的方法,有的也适合计算激发能,比如Firefly支持的XMCQDPT2、ORCA支持的QD-NEVPT2等,普及程度远不如CASPT2高这里就不提了。

MRCI:基于MCSCF波函数做CI,一般是用MRCISD。计算量颇大,显著高于CASPT2,因而只能研究很小分子。精度相应地也直逼FCI极限,比CASPT2更精确也更稳妥。

SORCI (Spectroscopy Oriented CI):基于MRCI的方法,其中还引入了多参考二阶微扰,专适合于激发能的研究,力求达到高精度同时也达到较好的计算效率。计算量小于MRCI,可以用于稍大体系。ORCA支持。

SAC-CI(SAC-Configuration Interaction):EOM-CC和LR-CC在理论上等价于它,只是算法不同,SAC-CI可以说是EOM-CCSD的近似。由于被量化程序支持得不广泛(尽管Gaussian支持),优势不明显,没有广泛普及。

DFT/MRCI:Grimme在1999年提出,思想就是基于DFT轨道并用DFT交换相关势构建CI矩阵来做MRCI。为了避免动态相关的double-counting,对CI矩阵非对角矩阵元做了scale使之指数地降为0。并且由于相关泛函已经考虑了很多动态相关,因此只选取重要的组态函数来考虑动态相关。DFT/MRCI比传统的MRCI省时很多,并且还可以引入RI近似进一步降低耗时。计算激发能比TDDFT好,三重态激发能误差比最好的普通泛函低一倍,单重激发态则优势小一些。不过DFT/MRCI在主流量化程序中都不支持,程序只能找作者要,因此虽然提出的年头不短了,却没体现出实用性。

ΔSCF:这不是某个具体计算激发态的理论方法,而只是一种结合HF/DFT计算激发态的技术。也就是通过调整初猜,将基态时占据轨道的一个电子挪到一个与之不可约表示不同的虚轨道上,于是经过SCF迭代,就会得到与原先对称性不同的电子态,即激发态。这种计算激发态的好处在于计算耗时和计算基态完全一样,故优化、计算频率很方便,而且考虑了轨道的弛豫,故能够得到激发态的轨道。所有支持对称性的量化程序原理上都能做ΔSCF。然而,此方法有以下明显缺点,导致很少被用于实际研究:
(1)调换占据数的那两个轨道必须有不同不可约表示,否则经过SCF又会坍塌到基态。但这点很难满足,实际体系更是往往连对称性都没有。(不过值得一提的是,Q-Chem中有个Maximum Overlap Method方法,可以实现强制SCF收敛到指定的占据态而不受轨道对称性的限制,这将ΔSCF适用范围加宽了)
(2)难以计算多个激发态,除非每个激发态都有不同的不可约表示,这个也很难满足。
(3)没法直接给出振子强度。虽然这在理论上也能算,但程序并不直接给出。

修改自旋多重度:如果要研究与基态自旋多重度不同的态的最低激发态,比如基态是S0,要研究T1,那么最好的办法就是照常做HF/DFT,只不过把输入文件里的自旋多重度改为3。其优点和ΔSCF完全一样,比起在单重态轨道下做TDDFT计算三重态省时得多得多,而且还能得到自旋密度(TDDFT无法给出)。但是缺点在于只能算特定自旋多重度的最低激发态,比如要计算T2、T3就只能用TDDFT了。

各类半经验方法:在各种半经验方法基础上做CIS计算激发能的做法在早期用得比较多,现在已经极少在用了,也就是专为激发能计算而优化参数的ZINDO在计算大体系时现在还经常有人用。在那些普通半经验方法当中,Walter Thiel那伙人搞的OM3半经验方法算可能是最好的,误差是TDDFT的两倍的水准。不过由于做OM3计算的程序不公开,显然这也没什么人用。

ZINDO:ZINDO分为ZINDO/1和ZINDO/S,前者是用来算基态的,这里说的是后者,也叫INDO/S。是Zerner等人70年代基于INDO开发的,是很适合算激发能的半经验方法。对有机分子结果很不错,好于CIS,特别适合pi-pi*、n-pi*激发,ZINDO除了主族外也可以算不少过渡金属。缺点是不适合含有电子转移过程、高阶激发态、里德堡态、阴离子体系、带未成对儿电子的金属、双电子激发特征不可忽略的体系。而且不适合除激发能以外的激发态方面的计算,比如激发态优化、势能面交叉等。由于ZINDO是为了计算光谱而优化的参数,计算基态能量就不如AM1、PM3了。一般是在CIS级别下做ZINDO,如果考虑二重激发(CISD),则ZINDO结果可以进一步改善(特别是改进高阶激发以及振子强度的准确性)。Zerner原始的ZINDO程序、Gaussian、Arguslab、Cache、Hyperchem都支持ZINDO。

INDO/X (INDO for eXcited states,JCTC,10,4950):2014年出炉的。是ZINDO的重新参数化,训练集主要用TBE-2垂直激发能测试集的数据。三重态和单重态改为用同一套哈密顿(ZINDO是两套不同的)。平均误差比ZINDO小了一倍,振子强度准确度很不错,从统计数据上表面看能达到TDDFT水准,但是对于某些体系的部分激发态误差还是较大,没TDDFT那么鲁棒。明显缺点是参数化的元素目前只有CHON,远少于ZINDO,而且和ZINDO一样只考虑算激发能而没考虑激发态势能面的研究,也没法研究双电子激发。另外做INDO/X的程序不公开,估计要是写进主流量化程序的话能火,不这样的话这个方法也就被埋没了。


4 杂

最后要强调的一点是,理论计算的光谱如果和实验光谱对得不好,未必是方法本身不合理。振动耦合、溶剂效应(线性响应与state-specific两种处理、平衡溶剂与非平衡溶剂、溶剂与溶质的强相互作用等)、不同跃迁的吸收峰间的相互重叠等等因素都是影响可比性的不可忽略的因素。因此,算激发能,应该清楚到底算的是什么。

仅有一条评论

  1. lastzealot

    写的很精彩,对于我这种初学者来说都能看懂一些。
    不过影响因素太复杂了,如果计算锕系元素的紫外、荧光,找到合适的方法可能就要很长时间!!!
    对于重元素,尤其是镧系锕系元素,有没有一些经验方法呢?这样可以少走很多弯路。

评论已关闭