计算化学公社

标题: 双杂化泛函IOp小助手 [打印本页]

作者
Author:
hebrewsnabla    时间: 2022-4-26 17:48
标题: 双杂化泛函IOp小助手
本帖最后由 hebrewsnabla 于 2022-4-26 23:00 编辑

写了一个自动生成某斯(非内置)双杂化泛函iop的小程序(原理见 http://sobereva.com/344 )。并且,鉴于某斯不能对双杂化泛函的SCF部分做stable=opt(内置的也不行),此脚本还支持只生成SCF部分的iop。

程序地址

https://github.com/hebrewsnabla/dh_helperhttps://git.nju.edu.cn/wsr/dh_helper

用法
执行以下命令可以看到help信息

  1. > python3 dhhelper -h
  2. usage: dhhelper [-h] -t type -f functional [--version]

  3. Generate Gaussian iops for doubly hybrid functionals

  4. optional arguments:
  5.   -h, --help            show this help message and exit
  6.   -t type, --type type  scf: for SCF only (useful for stable=opt)
  7.                          dh: for full functional (include SCF and PT2)
  8.   -f functional, --fun functional
  9.                         supported: B2PLYP    MPW2PLYP    PBE0DH      PBEQIDH
  10.                                  PBE02     B2GPPLYP    LS1DHPBE    DSDPBEP86
  11.                                  DSDPBEP86D3    revDSDPBEP86D3     DSDPBEPBED3
  12.                                  DSDBLYPD3      DSDPBEB95D3        B2PLYPD3
  13.                          Attention: No hyphens in functional name
  14.   --version             show program's version number and exit
复制代码

注意泛函名称均不含'-',大小写不敏感。

例如,想要获得revDSDPBEP86-D3的SCF部分,可以这样操作

  1. > python3 dhhelper -t scf -f revDSDPBEP86D3
  2. #p PBEP86
  3. # iop(3/76=1000006900, 3/77=0310003100, 3/78=0429604296)
  4. # em=gd3bj iop(3/174=0437700,3/175=-1,3/176=0,3/177=-1,3/178=5500000)
复制代码
加上基组和stable=opt就可以获得稳定波函数了。


未尽之处


Note
  撰写此脚本的目的主要是方便结合stable=opt来获取双杂化泛函的稳定波函数,并不提倡用某斯做完整的双杂化计算——使用不能开RI-MP2的程序算双杂化都是浪费机时。
  感谢@冰释之川 的建议和帮助。





欢迎光临 计算化学公社 (http://bbs.keinsci.com/) Powered by Discuz! X3.3