计算化学公社

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

[PSI4] 求助psi4或者pyscf x2c相对论计算

[复制链接 Copy URL]

93

帖子

0

威望

535

eV
积分
628

Level 4 (黑子)

各位老师好。我查找了psi4的说明书,在相对论计算的时候往往需要指定两个关键词,basis :xxxx; basis_relativistic:xxxxx-decon。请问后者是把前面的基组转化成未收缩的吗,这种和pyscf自己指定基组时直接前面加unc-有啥区别吗?以上两个软件任意一个有熟悉的老师能告诉我一点是一点,我讲两个程序的基组打印出来发现是一样的,但是不知道为什么能量差的很大,谢谢各位老师

3806

帖子

4

威望

7996

eV
积分
11882

Level 6 (一方通行)

MOKIT开发者

2#
发表于 Post on 2024-5-7 22:45:53 | 只看该作者 Only view this author
你是要sfx2c计算,还是要真正的二分量计算?
自动做多参考态计算的程序MOKIT

93

帖子

0

威望

535

eV
积分
628

Level 4 (黑子)

3#
 楼主 Author| 发表于 Post on 2024-5-8 09:28:27 | 只看该作者 Only view this author
zjxitcc 发表于 2024-5-7 22:45
你是要sfx2c计算,还是要真正的二分量计算?

只用sfx2c计算,老师

3806

帖子

4

威望

7996

eV
积分
11882

Level 6 (一方通行)

MOKIT开发者

4#
发表于 Post on 2024-5-8 10:38:03 | 只看该作者 Only view this author
本帖最后由 zjxitcc 于 2024-5-8 20:04 编辑

不需要研究什么basis_relativistic、unc-,直接一个gjf文件搞定
  1. %mem=8GB
  2. %nprocshared=4
  3. #p CASSCF/x2c-TZVPall

  4. mokit{X2C,HFonly}

  5. 0 1
  6. O         0.00000000     0.00000000     0.06200700
  7. H         0.00000000    -0.78397600    -0.49205200
  8. H         0.00000000     0.78397600    -0.49205200
复制代码
提交任务
  1. automr h2o.gjf >h2o.out 2>&1 &
复制代码
这会自动调用PySCF完成sfX2C哈密顿的RHF和UHF计算。如果自旋多重度大于1,不会有RHF,只会做UHF。关键词HFonly表示做完HF计算就正常终止。部分输出内容展示
  1. Enter subroutine do_hf...
  2. HF using program pyscf
  3. $python h2o_rhf.py >h2o_rhf.out 2>&1

  4. E(RHF) =       -76.11030693 a.u., <S**2>=  0.000
  5. $python h2o_uhf.py >h2o_uhf.out 2>&1
  6. E(UHF) =       -76.11030693 a.u., <S**2>=  0.000
  7. RHF/UHF energies are too close, choose RHF.
复制代码
automrMOKIT的一个小程序,用来自动做多参考计算的,当然也可以用来做一个sfX2C哈密顿的HF计算。注意这里只是借用gjf文件简洁形式,方便用户使用,不需要真的安装Gaussian。而且Gaussian本身也没有内置x2c-TZVPall,都是MOKIT自动处理的。算完之后有fch文件(再次说明,此任务不需安装Gaussian,不需要formchk),运行
  1. fch2psi h2o_rhf.fch
复制代码
产生PSI4的sfX2C RHF输入文件h2o_rhf_psi.inp和轨道文件h2o_rhf.A。提交PSI4任务
  1. psi4 h2o_rhf_psi.inp h2o_rhf_psi.out -n 16
复制代码
表示16核并行。SCF 2圈收敛
  1.                         Total Energy        Delta E     RMS |[F,P]|

  2.    @RHF iter   0:   -76.11030689016940   -7.61103e+01   4.34199e-07
  3.    @RHF iter   1:   -76.11030691938396   -2.92146e-08   1.51048e-08 DIIS
  4.    @RHF iter   2:   -76.11030691938420   -2.41585e-13   8.04103e-09 DIIS
  5.   Energy and wave function converged.
复制代码
两个程序的计算一次完成,一举两得,省去了大量摸索各种格式和用法时间。你还可以用fch2comfch2inporbfch2amo传轨道给Molpro/OpenMolcas/AMESP,结果与PySCF和PSI4相同。若使用本回答中的技巧进行计算,请使用MOKIT-v1.2.6rc30或更高版本,发表文章时请记得引用相应的量子化学程序和MOKIT(引用MOKIT的已发表文章一览)。若使用过低版本(<=v1.2.6rc29),fch2psi产生的inp文件中X basis没有decontraction,虽然SCF同样会马上收敛,但结果为-76.108525a.u.,有所区别。

评分 Rate

参与人数
Participants 1
eV +1 收起 理由
Reason
hebrewsnabla + 1 你这俩能量也不一样啊(

查看全部评分 View all ratings

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

286

帖子

3

威望

5611

eV
积分
5957

Level 6 (一方通行)

5#
发表于 Post on 2024-5-8 11:17:28 | 只看该作者 Only view this author
只用sfx2c的话,amesp(www.amesp.xyz)能直接算,简单方便,例子:
% npara 4
! m06-2x x2c-tzvpall sfx2c1e
>xyz 0 1
I             -0.07558139    0.84883720    0.00000000
H             -1.70558139    0.84883720    0.00000000
end

831

帖子

1

威望

7188

eV
积分
8039

Level 6 (一方通行)

6#
发表于 Post on 2024-5-8 16:30:59 | 只看该作者 Only view this author
本帖最后由 hebrewsnabla 于 2024-5-8 20:21 编辑

我觉得你说的没错,basis_relativistic是未收缩的(根据 https://psicode.org/psi4manual/m ... #basis-sets-options)。如果不指定会用unc的basis,但(可能)指定了就不会再unc一次。

pyscf这边可以指定 xbasis (https://github.com/pyscf/pyscf/b ... c/02-basis_for_x.py)。默认是采用mol.basis的unc版作为xbasis。


mokit里面似乎是指定了basis_relativistic但是没指定xbasis,这可能是上面例子里面能量不一样的原因。要保证一致可以先试试都不指定,搞不定的话再试试都指定。

更新:mokit 1.2.6rc30以后,自动生成的basis_relativistic是basis的unc版,与pyscf的默认设置一致。但psi4自身在不设置basis_relativistic时,可能仅支持对有名字的基组进行unc,不支持自动unc没名字的自定义基组(会报错)。

93

帖子

0

威望

535

eV
积分
628

Level 4 (黑子)

7#
 楼主 Author| 发表于 Post on 2024-5-8 19:44:23 | 只看该作者 Only view this author
hebrewsnabla 发表于 2024-5-8 16:30
我觉得你说的没错,basis_relativistic是未收缩的(根据 https://psicode.org/psi4manual/m ... #basis-set ...

好的!太谢谢老师了!我看看您说的x-basis。感谢感谢

93

帖子

0

威望

535

eV
积分
628

Level 4 (黑子)

8#
 楼主 Author| 发表于 Post on 2024-5-9 16:09:07 | 只看该作者 Only view this author
zjxitcc 发表于 2024-5-8 10:38
不需要研究什么basis_relativistic、unc-,直接一个gjf文件搞定
提交任务
这会自动调用PySCF完成sfX2C哈 ...

老师我想请教一下,我用的是x2c-tzvpall-2c,需要自己定义进去,也是仿照高斯的输入文件,写成#p casscf/gen,然后几何坐标下面空一行粘贴进去高斯格式的基组吗?我这样做了,最后生成的pyscf的py文件运行报错,显示pyscf的基组格式不对 pyscf.lib.exceptions.BasisNotFoundError: Unknown basis format or basis name for S    3   1.00。我检查了py文件,基组看起来不对

3806

帖子

4

威望

7996

eV
积分
11882

Level 6 (一方通行)

MOKIT开发者

9#
发表于 Post on 2024-5-9 16:18:05 | 只看该作者 Only view this author
本帖最后由 zjxitcc 于 2024-5-9 16:20 编辑
banxia 发表于 2024-5-9 16:09
老师我想请教一下,我用的是x2c-tzvpall-2c,需要自己定义进去,也是仿照高斯的输入文件,写成#p casscf/ ...

如果你按照的是我在4L的回答那样算的,使用automr提交的,那完全不需要写gen和自定义基组。在4L中已经说了MOKIT会自动处理基组,用户只需要在gjf文件里写x2c-TZVPall,这就是方便之处(之一)。本来MOKIT的gjf文件就很简单,你不能硬往复杂了写。另外,注意使用MOKIT-v1.2.6rc30或更高版本。
自动做多参考态计算的程序MOKIT

93

帖子

0

威望

535

eV
积分
628

Level 4 (黑子)

10#
 楼主 Author| 发表于 Post on 2024-5-9 16:28:12 | 只看该作者 Only view this author
zjxitcc 发表于 2024-5-9 16:18
如果你按照的是我在4L的回答那样算的,使用automr提交的,那完全不需要写gen和自定义基组。在4L中已经说 ...

老师,我确实是按照您说的做的,但是我用的基组是x2c-tzvpall-2c,我测试了发现这个基组直接写名字程序看起来没办法处理 pyscf.lib.exceptions.BasisNotFoundError: Unknown basis format or basis name for x2c-TZVPall-2C

3806

帖子

4

威望

7996

eV
积分
11882

Level 6 (一方通行)

MOKIT开发者

11#
发表于 Post on 2024-5-9 16:31:20 | 只看该作者 Only view this author
本帖最后由 zjxitcc 于 2024-5-9 17:01 编辑
banxia 发表于 2024-5-9 16:28
老师,我确实是按照您说的做的,但是我用的基组是x2c-tzvpall-2c,我测试了发现这个基组直接写名字程 ...

x2c-tzvpall-2c是给真的二分量计算使用的,你做的是标量相对论sfx2c1e计算,要用x2c-TZVPall。(不过,我随手看了H和C元素,这俩的基组数据似乎是一样的,但不保证所有元素都这样)
自动做多参考态计算的程序MOKIT

93

帖子

0

威望

535

eV
积分
628

Level 4 (黑子)

12#
 楼主 Author| 发表于 Post on 2024-5-9 16:43:17 | 只看该作者 Only view this author
zjxitcc 发表于 2024-5-9 16:31
x2c-tzvpall-2c是给真的二分量计算使用的,你做的是标量相对论sfx2c1e计算,要用x2c-TZVPall。(不过,我 ...

噢噢这样,老师。那我试试x2c-tzvpall。之前用x2c-tzvpall-2c是参考了文献里的基组,想复现一下数据。谢谢老师!

93

帖子

0

威望

535

eV
积分
628

Level 4 (黑子)

13#
 楼主 Author| 发表于 Post on 2024-5-9 16:57:40 | 只看该作者 Only view this author
zjxitcc 发表于 2024-5-9 16:31
x2c-tzvpall-2c是给真的二分量计算使用的,你做的是标量相对论sfx2c1e计算,要用x2c-TZVPall。(不过,我 ...

老师我又遇到一个问题,我没有重新创建conda环境,直接在我现有的环境里conda insall安装了mokit,现在报错ERROR in subroutine sys_copy_file: fail to copy file from
/home/meng/src/anaconda3/envs/psi4env/lib/python3.10/site-packages/mokit//mokit/basis/x2c-TZVPall to x2c-TZVPall。看起来中间路径从mokit//mokit就错了,这是啥问题导致的呀,是我没重新创建新的环境的问题吗(但是感觉不太像。。不知道了)(我问题真多

3806

帖子

4

威望

7996

eV
积分
11882

Level 6 (一方通行)

MOKIT开发者

14#
发表于 Post on 2024-5-9 17:01:43 | 只看该作者 Only view this author
banxia 发表于 2024-5-9 16:57
老师我又遇到一个问题,我没有重新创建conda环境,直接在我现有的环境里conda insall安装了mokit,现在 ...

运行automr --version查看版本是否满足条件
自动做多参考态计算的程序MOKIT

93

帖子

0

威望

535

eV
积分
628

Level 4 (黑子)

15#
 楼主 Author| 发表于 Post on 2024-5-9 17:04:29 | 只看该作者 Only view this author
zjxitcc 发表于 2024-5-9 17:01
运行automr --version查看版本是否满足条件

AutoMR 1.2.6rc30 :: MOKIT, release date: 2024-May-8。老师看起来版本是可以的

本版积分规则 Credits rule

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

GMT+8, 2024-11-24 23:09 , Processed in 0.191467 second(s), 21 queries , Gzip On.

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