MOLCAS


1.问:RASSCF模块的CI不收敛。
 答: 
  a. 改初始轨道(用已收敛的HF,RASSCF,SA-RASSCF轨道。电子数、多重度和对称性可以不同)。
b. 如果确定可以忽略它的话,可以跳过,让molcas进行后面的计算。但是要当心,应仔细检查输出中的出错信息。
2.问:MOLPRO的CASPT2与MOLCAS的CASPT2优劣?
 答: 
  a. MOLPRO的RS2,RS2C,以及新增加的NEVPT2都不同于MOLCAS的CASPT2。
b. 单根计算时间之比:RS2C(MOLPRO):CASPT2(MOLCAS):NEVPT2:RS2近似为1:1:5:50。可见MOLPRO的RS2C和MOLCAS的CASPT2速度都非常快。但是,由于MOLPRO的CASSCF比MOLCAS的CASSCF快得多,因此从总体上看,用MOLPRO完成整个CASSCF+RS2C更快一些。
c. 多根计算。MOLCAS的CASPT2把多根计算转化为一系列独立的单根计算,每个根使用一个CASSCF参考电子态,计算量与根的个数呈线性关系。一般情况下,对每个不可约表示计算20个根不成问题。MOLPRO可以用RS2/RS2C/NEVPT2做这种计算,但程序不能自动完成,需要人工控制输入(例如,用{rs2c;state,1,3;}计算第三个态)。MOLPRO的RS2/RS2C默认为同时求解多根,n个根共用n个CASSCF参考电子态,可以得到更准确的关联能,但计算量随根数的平方迅速增加。MOLPRO不论是用前一种方法还是后一种方法,每个不可约表示的根个数很难超过10个。
d. MS-CASPT2。在CASPT2多根计算的基础上,MS-CASPT2多了一个步骤:在CAS空间对这些根进行对角化。MOLPRO的MS-CASPT2是2006版新增的,目前只支持RS2模块,因此计算效率远远低于MOLCAS。它既可以对多个CASPT2参考态分别迭代(SS-SR-CASPT2),也可以对多个CASPT2参考态同时迭代(MS-MR-CASPT2)。
e. 为了避免入侵态问题,MOLCAS的CASPT2结合虚能级移动和IPEA能级移动技术,可以降低能级移动带来的动态相关能损失。MOLPRO除了原有的实能级移动(但对付有严重入侵态的体系不太管用),在2010.1以上版本也加入了IPEA能级移动技术。另外,MOLPRO的NEVPT2没有入侵态问题。
f. MOLPRO的RS2/RS2C模块支持组态筛选(RASPT2或一般的MR-PT2),可以处理更大的活性空间;MOLCAS的RASPT2模块在7.x版发布。
g. MOLPRO的RS2模块可以做CASPT3。
h. MOLPRO的RS2模块有解析梯度。
3.问:如何自定义ECP?
 答: 
  

无法简单的复制粘贴,因为EMSL网站的MOLCAS格式ECP有问题,需要手工编辑。关于MOLCAS的ECP格式,参见手册中的“Structure of the ECP libraries”。

1) 把自定义ECP基组写进输入文件。以下是汞原子使用ECP基组Hg.ECP.Dolg.4s4p2d.2s2p1d.2e-MWB的例子:

&SEWARD &END
Title
Hg.ECP.Dolg.4s4p2d.2s2p1d.2e-MWB
Symmetry
x y z
exper
Basis set
>>VERBATIM
Hg.ECP.... / Inline
2.00000 2
*s functions
4 2
0.13548420E+01
0.82889200E+00
0.13393200E+00
0.51017000E-01
0.23649400E+00 0.00000000E+00
-0.59962800E+00 0.00000000E+00
0.84630500E+00 0.00000000E+00
0.00000000E+00 0.10000000E+01
*p functions
4 2
0.10001460E+01
0.86645300E+00
0.11820600E+00
0.35155000E-01
0.14495400E+00 0.00000000E+00
-0.20497100E+00 0.00000000E+00
0.49030100E+00 0.00000000E+00
0.00000000E+00 0.10000000E+01
*d functions
1 1
0.19000000E+00
0.10000000E+01
*
PP,Hg,78,5;
1; ! H POTENTIAL
2, 1.00000000,.000000000;
3; ! S-H POTENTIAL
2,0.227210000,-.69617800;
2, 1.65753000,27.7581050;
2, 10.0002480,48.7804750;
2; ! P-H POTENTIAL
2,0.398377000,-2.7358110;
2,0.647307000,8.57563700;
2; ! D-H POTENTIAL
2,0.217999000,-.01311800;
2,0.386058000,2.79286200;
1; ! F-H POTENTIAL
2,0.500000000,-2.6351640;
1; ! G-H POTENTIAL
2,0.800756000,-13.393716;
*
Spectral
End of Spectral
Hg 0.0 0.0 0.0
End of basis set
>>END VERBATIM
NOGUESSORB
End Of Input

2) 把自定义ECP基组写进基组文件。以Pt原子为例。

  • 打开basis_library/ECP.STOLL,找一个原子的ECP基组作为模板,加入自定义基组数据。由于EMSL网站上的Molcas格式的ECP基组有错误,请参照上例。
  • 基组数据的前三行形式如下,不区分大小写。首字符/表示这是第一行。之后是元素符号,ECP(ECP基组必需),基组作者Stoll,高斯原函数及收缩函数的个数,“价”电子数,e-后是ECP类型(随意写)。“.”用作分隔符和结尾。
    接下来是两行基组说明,内容任意,但首字符不能用*(会被跳过,导致不足两行),也不能用/。

    /Pt.ECP.Stoll.17s14p13d5f4g3h.9s9p8d5f4g3h.18e-MDF.
    Ref: Figgen, Peterson, Dolg, and Stoll, JCP 130, 164108 (2009).
      * aug-cc-pWCVQZ-PP

    基组作者名决定了基组数据位于哪个文件。在上例中,Molcas恰好有内置的基组文件basis_library/ECP.STOLL,因此基组数据也必须加入到其中。如果用其他人名,如Tom,Molcas没有内定文件basis_library/ECP.Tom(自己写不算数,除非改代码),就会读取默认的basis_library/ECP,这种情况下需要把基组数据加到这里。
  • 在Molcas输入文件中可以调用第一行定义的基组(去掉开头的“/”,但要保留最后的“.”)。基组收缩部分不必与基组文件完全相同,可以根据需要只提取部分收缩基函数。