|
本帖最后由 zjxitcc 于 2021-1-17 23:55 编辑
该基组用途请阅读sob老师博文《使用Gaussian做镧系金属配合物的量子化学计算》。该基组(目前)有定义的元素范围为H-Kr,均为全电子基组,适用于全电子相对论计算。
该基组为ORCA内置,目前BSE基组库上没有。最近写了个小程序mkl2gjf,发现恰好可以用于这个功能,把基组数据全都弄了出来。基组数据已做过un-normalized处理,可直接用于Gaussian自定义基组的计算。见附件,内含
DKH-def2-SVP and ZORA-def2-SVP
DKH-def2-SV(P) and ZORA-def2-SV(P)
DKH-def2-TZVP and ZORA-def2-TZVP
DKH-def2-TZVP(-f) and ZORA-def2-TZVP(-f)
DKH-def2-TZVPP and ZORA-def2-TZVPP
DKH-def2-QZVPP and ZORA-def2-QZVPP
ma-DKH-def2-SVP and ma-ZORA-def2-SVP
ma-DKH-def2-SV(P) and ma-ZORA-def2-SV(P)
ma-DKH-def2-TZVP and ma-ZORA-def2-TZVP
ma-DKH-def2-TZVP(-f) and ma-ZORA-def2-TZVP(-f)
ma-DKH-def2-TZVPP and ma-ZORA-def2-TZVPP
ma-DKH-def2-QZVPP and ma-ZORA-def2-QZVPP
recontracted.zip
(308.16 KB, 下载次数 Times of downloads: 151)
两种使用方式,任选其一:
(1)自己手动拷贝出需要用到的原子的基组数据;
(2)在gjf文件中对基组文件进行引用。
若不熟悉自定义基组写法,请勿凭感觉写,请阅读sob老师博文《详解Gaussian中混合基组、自定义基组和赝势基组的输入》
方式(1)使用举例,用高斯算个H2分子,RHF/DKH-def2-SVP,用DKH2哈密顿,输入文件如下
- #p RHF/gen nosymm int(nobasistransform,DKH2) iop(3/93=1)
- [空行]
- title
- [空行]
- 0 1
- H 0.0 0.0 0.0
- H 0.0 0.0 0.6
- [空行]
- @DKH-def2-SVP.txt
- [空行]
- [空行]
复制代码
ORCA输入文件
- ! RHF DKH-def2-SVP VeryTightSCF
- %maxcore 1000
- %rel
- method DKH
- order 2
- end
- %scf
- Thresh 1e-12
- Tcut 1e-14
- end
- * xyz 0 1
- H 0.0 0.0 0.0
- H 0.0 0.0 0.6
- *
复制代码
两者电子能量均为-1.1127713 a.u. 严格一致。这里解释一下为何输入文件有很多不常用的关键词:
(1)注意高斯默认采用Gaussian function distribution,指定iop(3/93=1)则改为point nuclei charge distribution,后者是ORCA中默认的设置。为严格对比,此处增添了很多设置。
(2)若你不将高斯与ORCA严格对比,高斯中无需写nosymm, nobasistransform和iop(3/93=1),ORCA中无需写VeryTightSCF, Thresh和Tcut。
若对如何生成基组文件不感兴趣,看到这里即可。
下文介绍如何方便地生成这些基组文件,也可以自己用于其他用途
第一步:写个ORCA输入文件DKH-def2-SVP.inp,包含H-Kr元素,坐标任意
- %maxcore 2000
- ! RHF DKH-def2-SVP noiter
- %scf
- DryRun True
- end
- * xyz 0 1
- H 0.0 0.0 0.0
- He 0.0 0.0 1.0
- Li 0.0 0.0 2.0
- ...
- Kr 0.0 0.0 35.0
- *
复制代码
提交,几秒即结束。获取mkl文件
- orca_2mkl DKH-def2-SVP -mkl
复制代码
获取gjf文件(内含坐标,基组)(若加上参数-mo,还可以将轨道写入gjf文件,但此处我们瞎写坐标,更用不到轨道)
mkl2gjf是MOKIT中新增的小程序,可以在https://gitlab.com/jxzou/mokit免费下载(命令行执行make mkl2gjf即编译mkl2gjf)。其实到这里就可以了。为了更方便起见,再将gjf里的基组数据转化为以后每次可以引用的txt文件
- gfortran replace_int_with_elem.f90 -o replace_int_with_elem
- ./replace_int_with_elem DKH-def2-SVP.gjf
复制代码
即将其中的每个序号替换为 -元素符号 这种格式。其他基组的话,把一开始的DKH-def2-SVP基组名称改一下,重复该步骤即可。输入文件DKH-def2-SVP.inp和代码replace_int_with_elem.f90都在上述压缩包input文件夹下。
注意1:ORCA的.mkl文件有个缺陷,即不含赝势信息。若有赝势,在使用完mkl2gjf小程序后,应自行添加赝势数据进gjf文件。全电子基组无此问题。
注意2:此为ORCA内置基组,本人只是转化了格式,仅能保证转化正确。而不对该基组的正确性、精度等问题负责(基组开发者和ORCA开发者的事)。
编程爱好者可尝试:完成此事不止一种做法,也可以在ORCA输入文件里加PrintBasis关键词然后从ORCA输出文件中读取、转化基组格式,这样不用做un-normalized处理,比处理mkl里的基组数据还简单。
|
评分 Rate
-
查看全部评分 View all ratings
|