计算化学公社

 找回密码 Forget password
 注册 Register
Views: 1372|回复 Reply: 6
打印 Print 上一主题 Last thread 下一主题 Next thread

[量化理论] 求助CASSCF活性轨道选取以及ORCA计算CASSCF输出内容的含义

[复制链接 Copy URL]

103

帖子

0

威望

607

eV
积分
710

Level 4 (黑子)

跳转到指定楼层 Go to specific reply
楼主
各位老师好,我最近正在学习CASSCF/CASPT2等方法,我对CASSCF理论了解不深,有如下疑问希望各位老师能为我解答,不甚感谢。

首先是关于CASSCF的活性轨道选取,虽然有MOKIT等可以自动挑选活性轨道的工具,但是我还是希望学会手动挑选的标准和流程。论坛中有一些关于CASSCF活性轨道挑选的资料,其中对于3d过渡金属一般推荐把五条d轨道都纳入活性空间,如果过渡金属原子有三个以上则会导致活性空间过大。还有一种挑选方法是通过UHF计算得到UNO轨道,把轨道占据数明显偏离0和2的轨道加入活性空间,请问这样做是否合理?我测试过一个铁卟啉体系,发现UHF-UNO得到的占据数位于0.2到1.8之间的轨道多达十余条,而根据以往类似体系的计算经验,实际参与反应的轨道至多七八条,并且多为卟啉环的共轭杂化后的轨道难以根据形状判断类型,请问遇到这种情况要如何挑选活性轨道?

另外,我使用ORCA计算CASSCF,以手册中的算例为例,Be原子CAS(2,2)的计算结果:
  1. 0.90060 [ 0]: 2000
  2. 0.03313 [ 4]: 0200
  3. 0.03313 [ 9]: 0002
  4. 0.03313 [ 7]: 0020
复制代码
第一列是占据数,第三列是电子态,第二列中括号内的整数是什么含义?而且CAS(2,2)不是应该有6种组态吗?怎么只列出了四个结果?以下是我计算CASSCF(7,7)的输出内容,为什么也只列出了4行?中括号的数字又要作何理解?
  1. 0.57221 [     0]: 2221000
  2.       0.36533 [17]: 2201200
  3.       0.04597 [     5]: 2211100
  4.       0.00308 [81]: 2021020
复制代码

对于越大的活性空间,越难收敛。请问如果CAS(2,2)收敛后,可以读取初猜用以计算CAS(4,4)吗?如果计算大活性空间,比如CAS(8,8),发现某几条轨道对应的几种组态占据数很低,是否就可以把这些轨道从活性空间中剔除?

1万

帖子

0

威望

7393

eV
积分
18146

Level 6 (一方通行)

2#
发表于 Post on 2024-6-30 18:02:41 | 只看该作者 Only view this author
本帖最后由 wzkchem5 于 2024-6-30 11:07 编辑

铁卟啉本来就是很难用正常能算动的活性空间描述得比较好的体系,推荐的做法是挑20~30个轨道,然后用近似的CASSCF方法(DMRG, selected CI等)计算,然后再做比如说NEVPT2,参见https://doi.org/10.1021/acs.jctc.1c00781。小活性空间的做法也是有的,但是精度差一些,未经和实验的谱学结果对比可能结果不能轻易相信,参见https://pubs.acs.org/doi/10.1021/acs.inorgchem.1c00031
括号里的整数应该是组态的编号,正常计算可以不用管。组态系数特别小的组态,程序不列出。
用小活性空间预先收敛后再做大活性空间计算是常规做法,但是多加的inactive orbital和external orbital往往也需要挑一下,不能盲目选。计算大活性空间、发现个别轨道贡献不大,因而剔除,也是常规做法
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员

103

帖子

0

威望

607

eV
积分
710

Level 4 (黑子)

3#
 楼主 Author| 发表于 Post on 2024-6-30 18:51:30 | 只看该作者 Only view this author
wzkchem5 发表于 2024-6-30 18:02
铁卟啉本来就是很难用正常能算动的活性空间描述得比较好的体系,推荐的做法是挑20~30个轨道,然后用近似的C ...

感谢老师回复!
如果某个体系UHF-UNO的结果发现显著偏离0或2的轨道小于10条,那么就把它们都纳入活性轨道做CASSCF。如果过渡金属的某条具有d轨道特征的轨道占据数非常接近0或2,那么说明在能级分裂后此轨道能量很高/低,占据状态不易改变因而无需纳入活性轨道。请问这样的做法是否合理?

3806

帖子

4

威望

7994

eV
积分
11880

Level 6 (一方通行)

MOKIT开发者

4#
发表于 Post on 2024-6-30 19:18:59 | 只看该作者 Only view this author
我不赞同2L中“用小活性空间预先收敛后再做大活性空间计算是常规做法”;赞同后半句“多加的inactive orbital和external orbital往往也需要挑一下,不能盲目选”,这十分重要。

在合理的小活性空间计算后,只有这个小活性空间中的活性轨道有比较明确的轨道形状和意义,而双占据轨道和虚轨道仍然处在高度离域状态(无论是CASSCF准正则轨道还是自然轨道,都是离域的)。对于双占据轨道,可对其进行轨道局域化(也称定域化) 看出分别是芯轨道/孤对电子轨道/某些化学键的成键轨道,进而挑出用户认为的重要轨道加进活性空间。而对于数目众多的虚轨道,直接对其进行轨道局域化往往没有实际用处,对于常见基组例如cc-pVDZ或def2TZVP(更不要说cc-pVTZ),虚轨道局域化之后仍然是一片浆糊,基本不可能看出是什么化学键的反键轨道或哪个nd轨道,因此也没法进行挑选。这时候借助用户的化学直觉,指定合适的目标轨道成分,借助轨道投影技术可以找出重要的虚轨道,进而挑选。然而从我这大段描述也可看出,这恐怕目前是极少数专业计算人员的“常用”手段,远非大多数使用CASSCF计算的人的常用手段。在我见过的人中(或许是我的个人经历有限),大多数人没法忍受这种多步计算和多次打断的过程,如果又不想用MOKIT自动构建活性轨道,那大多数人是直接用HF局域轨道或RHF-MP2 NO就了事,很是粗糙。
这时候使用局域配对UNO或GVB轨道的优势就体现出来了,它们可以给出十分明确的成键轨道和反键轨道,精准对应每一根化学键,而且是几乎全部的化学键,相当于帮用户从巨大的虚轨道空间中找出了所有重要的未占据活性轨道(在CASSCF计算后它们的占据数往往会在0.2~1.0之间)。当然也有孤对电子的占据轨道,这不用多说。用户可以从中毫无歧义地挑出他们想要的轨道,具体实例可以看以往我的回复,例如
对比此贴79L与80L中的轨道,差别巨大http://bbs.keinsci.com/forum.php ... 66&fromuid=2632
[Re2Cl8]2-的计算http://bbs.keinsci.com/forum.php ... 17&fromuid=2632

另一方面,如果不小心先做完了一个中等/大活性空间计算,然后从中挑选最为重要的活性轨道,做稍小活性空间的计算,这一般来说十分容易。为什么说“不小心”?因为中等/大活性空间计算往往更难,活性轨道的选取、注定更长的计算时间、可能更难收敛的SCF过程,都阻碍了这一做法成为主流技巧。试想一种稍微夸张的情况:先做一个DMRG-CASSCF(18,18)的计算(假定能成功),然后再从中挑选轨道做一个CASSCF(8,8)的计算,一是有点杀鸡用牛刀、大炮打蚊子的感觉,二是人力物力成本非常不划算,因为DMRG-CASSCF(18,18)(哪怕是中等bond dimension)计算时间远大于CASSCF(8,8)的计算时间。

对于过渡金属的双占据d轨道,它的占据数在基态下通常十分接近2.0,因此若根据轨道占据数来判定(MOKIT也是这么判定的,只不过是基于GVB自然轨道占据数,而非UNO),这些双占据d轨道是不会成为活性轨道的。但有两种情况下它会被加进活性轨道:(1)用户的主观偏执,即“我不要程序觉得,我要我觉得”;(2)客观实际需要,例如不是基态计算,而是多个电子态的SA-CASSCF计算,如d-d跃迁,这时候一些双占据d轨道在基态下可能不重要,但在某些激发态中十分重要,必须纳入活性空间。

初学者学习CASSCF计算时,不建议使用铁卟啉做为入门练习,而是应该练习一些单原子、常见小分子断键解离、单核过渡金属配合物分子等等。

评分 Rate

参与人数
Participants 2
eV +5 收起 理由
Reason
furcore + 4 赞!
wang7344412 + 1 赞!

查看全部评分 View all ratings

自动做多参考态计算的程序MOKIT

1万

帖子

0

威望

7393

eV
积分
18146

Level 6 (一方通行)

5#
发表于 Post on 2024-7-1 05:04:21 | 只看该作者 Only view this author
zjxitcc 发表于 2024-6-30 12:18
我不赞同2L中“用小活性空间预先收敛后再做大活性空间计算是常规做法”;赞同后半句“多加的inactive orbit ...

确实,可能主要是我自己有不止一个工作用到“用小活性空间预先收敛后再做大活性空间计算”,下意识就说是常规做法了,以偏概全了。先做小活性空间,再额外加轨道,确实额外加的那些轨道挑选起来未必因为小活性空间收敛而变容易。但是个别情况下,比如先收敛价层d轨道,再根据收敛的价层d轨道挑double shell轨道,这类做法我觉得还是有一些普适性的。只不过也可以一开始就把价层d轨道和double shell轨道一起挑好就是了。
另外,不知道你对于把dxy,dxz,dyz,dx2-y2,dz2都挑全的必要性,有什么看法?因为我经常算卟啉,卟啉的dx2-y2轨道非常高,经常不怎么参与反应,或者说其重要性远低于卟啉的很多pi*轨道。但是作为惯例,过渡金属的d轨道往往要整个shell一起挑。对于double shell轨道就更是这个问题了,dx2-y2本身就已经不重要了,它的double shell轨道更不重要。你觉得不选这种不重要的d轨道、导致金属的某个d shell不全,是否属于可取的做法?
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员

3806

帖子

4

威望

7994

eV
积分
11880

Level 6 (一方通行)

MOKIT开发者

6#
发表于 Post on 2024-7-1 10:10:00 | 只看该作者 Only view this author
wzkchem5 发表于 2024-7-1 05:04
确实,可能主要是我自己有不止一个工作用到“用小活性空间预先收敛后再做大活性空间计算”,下意识就说是 ...

我个人的看法与程序自然轨道占据数的判据一样,就是算基态单点/结构/反应时,占据数太接近2和太接近0的不应该放进活性空间,一来增大计算量,二来会给CASSCF收敛增加难度(例如轨道优化过程中,该双占据3d轨道很可能会被另一个双占据价轨道调换,导致CASSCF振荡,亦或轨道优化结果中无初始期望的双占据d轨道)。但我个人看法不管用老板/审稿人/长辈合作者说了算,他们说我得5个3d轨道或double shell 5+5,我就得听话。
自动做多参考态计算的程序MOKIT

103

帖子

0

威望

607

eV
积分
710

Level 4 (黑子)

7#
 楼主 Author| 发表于 Post on 2024-8-19 01:49:44 | 只看该作者 Only view this author
zjxitcc 发表于 2024-7-1 10:10
我个人的看法与程序自然轨道占据数的判据一样,就是算基态单点/结构/反应时,占据数太接近2和太接近0的不 ...

请问老师,要如何才能确保所需的d轨道全部进入活性空间?我对于一个双金属的体系做CASSCF(4,4)已经成功收敛,然后收敛的轨道中挑选出其余的符合d轨道特征的轨道,用ORCA的rotate功能交换轨道顺序后把活性空间增加到CAS(11,11),希望能覆盖两个金属原子的所有d轨道。在利用各种手段(传给PySCF收敛后再传回给ORCA)使得CAS(11,11)收敛后,检查所得到的轨道发现居然有三条d轨道不在活性空间内,于是我再次使用rotate交换轨道后再次计算。迭代时能量和之前不同,轨道交换应该是成功的,但是收敛后那三条d轨道依然不在活性空间内。请问为什么会发生这种事?要如何才能确保所有的d轨道都进入活性空间?

本版积分规则 Credits rule

手机版 Mobile version|北京科音自然科学研究中心 Beijing Kein Research Center for Natural Sciences|京公网安备 11010502035419号|计算化学公社 — 北京科音旗下高水平计算化学交流论坛 ( 京ICP备14038949号-1 )|网站地图

GMT+8, 2024-11-24 00:53 , Processed in 0.166004 second(s), 22 queries , Gzip On.

快速回复 返回顶部 返回列表 Return to list