MOLCAS常用方法
作为以多组态为特点的量子化学程序包,MOLCAS最被用户常用的功能是CASPT2。之前MOLCAS开会会议的时候,与会人员也是达成了共识,即 1.CASPT2、 2.ANO基组及Cholesky积分近似、 3.DMRG 作为MOLCAS的杀手级应用/功能。 下面我们就分别介绍一下。
1.CASPT2
CASPT2应该仍是当前作为流行的多参考(multi-reference,MR)电子结构计算方法,多种从头算量子化学计算软件均会包含此功能。CASPT2实际上至少要包含多组态的CASSCF计算和多参考的PT2计算两部分。这里我们先插播一下多组态、多参考方法的分类和划分,可见下图。
由图可知,CASPT2作为多参考MR方法,可以提供定量可靠的数据,但是其依赖于前置的MC计算。CASPT2前置的MC计算一般为CASSCF计算,可以定性的计算出结果和参考的波函数。关于CASSCF计算和多参考的PT2计算两部分的评述,如下:
- CASSCF是多组态的自洽场计算,可以认为是CI与SCF方法的结合。相当于CI,CASSCF通过自洽迭代实现了轨道优化过程;相对于(HF)SCF,CASSCF通过多行列式的使用增加了组态变分的空间。
- 多参考的PT2计算,其实可以联想为普通的MP2计算。不同之处的话就是MP2计算的参考态是HF波函数,HF波函数意味着HF单行列式,以及针对该行列式优化的分子轨道;CASPT2计算的参考态是CASSCF波函数,CASSCF波函数意味这组态空间为活性空间所有可能的行列式(或者组态态函数),以及针对系列组态/行列式优化的分子轨道。
2.ANO基组及Cholesky积分近似
MOLCAS比较有特色的基组是ANO系列的基组,ANO的全称是Atomic Natural Orbital,主要有ANO-S,ANO-L,ANO-RCC三个系列。ANO-S和ANO-L分别对应于小型和大型的ANO基组,ANO-RCC对应的是包含相对论效应的ANO基组(含从H到Cm的元素),采用了Douglas-Kroll Hamiltonian(DKH)校正。 因为ANO类基组是通过CASPT2对单个原子进行计算得来的基组,所以也是非常适合多组态、多参考级别的计算。而且由于其采用了“generally contracted”的截断策略,所以也很容易实现轨道的扩展功能。例如可以从ANO-RCC-VDZP下选取活性空间,然后在扩展到ANO-RCC-VTZP下面,以避免较大基组下活性空间不好选取的问题。
MOLCAS基组积分还有一个很好的功能就是Cholesky Decomposition(CD)积分近似方案,这个是一个非常好的计算加速手段。 其实现积分加速的思想主要是将4中心的积分通过辅助函数的引入,来降为3中心+辅助函数的形式,以此来实现计算量的降低和计算加速。MOLCAS里面的CD近似和其他软件常见的Density-Fitting(DF)、Resolution of Identity(RI)均为积分近似的手段,其区别和联系的话主要是:
- CD、DF、RI均为四指标积分近似的手段
- CD为基于单中心和双中心辅助函数的数值积分近似,不过也可以进一步近似为单中心的CD(1cCD)近似方案
- DF、RI均基于单中心辅助函数的积分近似方案
- 1cCD、DF、RI均可以提供解析的积分梯度,而CD不可以
- MOLCAS的CD应该是量子化学软件中最快的,而且一般精度损失在0.000001 hartree或者更低,远超过了化学精度
3.DMRG
DMRG全称是Density-Matrix Renormalization Group,即密度矩阵重整化群。 顾名思义,即按照密度矩阵(的本征值)截取重要的电子组态信息,然后利用相应的本征矢变换组态空间的算符表示(即重整化),以实现降维。具体实现的过程中往往使用SVD分解本征矢,该操作是等同于密度矩阵本征值截断的。 DMRG连续的重整化过程以及维度限制,可以使其在sweep过程中一直针对最重要的组态进行组态优化(其实所谓的组态优化就是Davidson对角化),也使得其可以处理远大于通常FCI或者CASCI方法所能处理的活性轨道大小。
日常使用的话,直接就把DMRG当作FCI替代来使用就可以了。然后MOLCAS里面常用的CASSCF、RASSI、CASPT2,均有DMRG的版本,如下
- DMRG-SCF作为CASSCF的大活性空间版本,可处理30e30o(days),40e40o(weeks)。处理更大的活性空间是需要技巧的,一般需要优化的轨道排序、对称性、渐近的保留态策略、局域/自然轨道等等。
- DMRG-CASSCF可以进行激发态的构型优化,以及锥形交叉点的搜索。
- DMRG-RASSI为RASSI的大活性空间版本
- DMRG-NEVPT2为替代CASPT2的版本(MOLCAS中暂时没有DMRG-CASPT2的版本),但是目前效率很低,正在优化中。
MOLCAS常用关键字介绍
这里,我们可以使用MOLCAS的standard测试集中的000.input文件作为切入点来介绍一下:
1. 简单例子
&GATEWAY coord 2 angstrom H 0.350000000 0.000000000 0.000000000 H -0.350000000 0.000000000 0.000000000 basis h.DZ.... NoCD &SEWARD &SCF Title H2, DZ Basis set &RASSCF Title H2, DZ Basis set nActEl 2 0 0 Ras2 1 1 0 0 0 0 0 0 &ALASKA &SLAPAF &CASPT2 PROPerties
上面的例子中,
- &GATEWAY 为分子体系构型、基组、对称性 (geometry, basis sets, symmetry) 相关的输入信息
- &SEWARD 为积分相关的输入信息
- &SCF 为自洽场相关的输入信息;Hartree-Fock或者DFT的计算,都是在此部分指定
- &RASSCF 为多组态自洽场的输入信息
- &ALASKA 为能量梯度计算模块
- &SLAPAF 为构型优化计算模块
- &CASPT2 为CASPT2计算模块
2. 镧系锕系
&GATEWAY coord=C0-BTBP-Eu_C2.xyz Basis set ANO-RCC-MB, N.ANO-RCC-VDZP, O.ANO-RCC-VDZP, Eu.ANO-RCC-VDZP &SEWARD R02OP02 CHOLesky &RASSCF spin=7 fileorb=C0-BTBP-Eu_C2.ScfOrb frozen = 79 71 ras2 = 6 7 &CASPT2 &GRID_IT all
上面的例子为C0-BTBP-Eu_C2计算的一个例子,该例子中:
- 使用ANO-RCC系列的基组,同时开启了DKH 2阶优化的标量相对论校正。
- 使用CASSCF波函数作为CASPT2的参考态
- 同时开启了默认精度的Cholosky分解
下面的例子为该体系大活性空间的DMRG(38,36)[1000]-SCF计算的例子,该例子中增加的部分为DMRG的控制参数。
&GATEWAY coord=C0-BTBP-Eu_C2.xyz Basis set ANO-RCC-MB, N.ANO-RCC-VDZP, O.ANO-RCC-VDZP, Eu.ANO-RCC-VDZP &SEWARD R02OP02 CHOLesky &RASSCF SPIN=7 symm=2 fileorb=BTBP-Eu-NO3_C2.RasOrb typeindex THRS=1.0e-05 5.0e-02 5.0e-03 DMRG RGinput nsweeps = 20 max_bond_dimension = 1000 conv_thresh = 0.100000E-04 truncation_final = 0.500000E-06 ietl_jcd_tol = 0.500000E-06 orbital_order="30,12,4,23,10,29,31,3,20,13,11,17,27,9,25,14,33,8,24,6,21,28,35,19,2,18,34,1,36,16,5,22,15,26,7,32" EndRG &GRID_IT all
3. 结构优化
结构优化的作业,需要采用 “» Do while «” 循环配合 &ALASKA、&SLAPAF选项卡来进行。
>>>>>>>>>>>>>>>>>>> DO while <<<<<<<<<<<<<<<<<<<< &SEWARD Symmetry x z Basis Set C.cc-pVDZ.... C 0.0 0.0 0.0 End of Basis Basis Set H.cc-pVDZ.... HA 1.67103 -1.18160 0.0000000000 HB 0.0000000000 1.18160 1.67103 End of Basis NoCD &SCF KSDFT B3LYP &ALASKA &SLAPAF C1-DIIS >>>>>>>>>>>>> ENDDO <<<<<<<<<<<<<<<<<<<<<<<<<<<<<
4. 过渡态查找和IRC路径搜索
*------------------------------------------------------------------------------- * Molecule: HCN/CNH * Basis: STO-3G * Symmetry: C1 * Features tested: FindTS, IRC following * Responsible person: I. Fdez. Galván * Comments: Locate the transition state and follow the IRC forward and backward * The approximate reaction vector is taken from the RUNOLD file *------------------------------------------------------------------------------- &GATEWAY Coord = 3 Angstrom H 0.000 1.070 0.000 C 0.000 0.000 0.000 N 1.150 0.000 0.000 Basis = STO-3G Group = NoSymm NoCD >>> Do While &SEWARD &SCF &SLAPAF FindTS TSConstraints d1 = bond H1 C2 d2 = bond C2 N3 a1 = angle H1 C2 N3 Values d1 = 1.202 angstrom d2 = 1.222 angstrom a1 = 72.8 degree End of TSConstraints >>> EndDo >>> Copy $Project.RunFile $Project.RunOld &MCKINLEY *=============================================================================== &GATEWAY Coord = $Project.Opt.xyz Basis = STO-3G Group = NoSymm NoCD >>> Do While &SEWARD &SCF &SLAPAF IRC nIRC = 4 >>> EndDo
5. 可视化界面luscus
当前MOLCAS官方的图形界面为Luscus,可以打开MOLCAS生成的.lus文件 https://sourceforge.net/projects/luscus/