计算化学公社

标题: Orca_5.0.3报错no orbitals were found in the gbw file解决过程记录,期望老师们指正 [打印本页]

作者
Author:
The_only_oneZLY    时间: 2024-4-4 16:02
标题: Orca_5.0.3报错no orbitals were found in the gbw file解决过程记录,期望老师们指正
本帖最后由 The_only_oneZLY 于 2024-4-4 20:17 编辑

在参考sobereva老师的帖子“将Gaussian等程序收敛的波函数作为ORCA的初猜波函数的方法http://bbs.keinsci.com/forum.php ... 14905&fromuid=27359”时,利用Gaussian09得到的收敛的轨道波函数并利用Multiwfn和orca_2mkl生成了包含轨道信息的gbw文件,并将其拷贝到了orca的计算目录下,但是进行orca计算的时候报了如下图所示的错误:
(, 下载次数 Times of downloads: 22)
在查看了帖子“ORCA计算过渡金属阳离子不收敛求助http://bbs.keinsci.com/forum.php ... 20748&fromuid=27359”中的hdhxx123总结的ORCA-SCF.txt文件后,发现其中说了在%moinp "收敛的文件名.gbw"中,%moinp后的文件名应当与你想要让计算任务读取的gbw文件名一致!(注意不要与当前任务文件名重合,会让当前任务无法进行而报错!)。而我写的输入文件恰好犯了这个错误,猜测报错原因是因为orca在一开始计算时就会产生新的gbw文件,它把原有的同名的gbw文件覆盖了,而这个文件里是没有轨道信息的,因而出现gbw文件里找到轨道的情况。
(, 下载次数 Times of downloads: 15)

(, 下载次数 Times of downloads: 18)
接着我将要读取的gbw文件名前缀(即DyCH)改为和当前计算任务输入文件不同的名字,再修改输入文件里需要读取的gbw文件名:
(, 下载次数 Times of downloads: 16) (, 下载次数 Times of downloads: 21)
再次提交任务,从输出文件中可以看到gbw文件读取成功:
(, 下载次数 Times of downloads: 17)

作者
Author:
zjxitcc    时间: 2024-4-4 17:03
这是介绍成功经验,还是未解决问题来提问呢?最好能说明一下。另外,确实不需要%moinp和MOREAD关键词,只需要gbw与inp文件同名即可自动读入,但如果你非要整得复杂一些,找点报错给自己去解决,也是可以的。
作者
Author:
The_only_oneZLY    时间: 2024-4-4 20:12
本帖最后由 The_only_oneZLY 于 2024-4-4 20:15 编辑

zjxitcc老师,您好,我是最近接触的orca,所以好多东西还不是很清楚,发这个贴子一方面是作为学习的记录,另一方面也是希望得到更多老师的指导,如果有更好的解决方法的话。就是按照您说的不写%moinp和moread关键词的方法,输入文件如下 (, 下载次数 Times of downloads: 14)
接着我将DyCH_gauss.gbw拷贝成了DyCH.gbw (, 下载次数 Times of downloads: 19)
然后提交任务。但是在计算的时候程序并没有读取DyCH.gbw文件,而是使用猜测的波函数,输出文件如下: (, 下载次数 Times of downloads: 18)

输入文件的前缀名和gbw文件前缀名也都是一样的,因此我也感到困惑

作者
Author:
zjxitcc    时间: 2024-4-4 20:34
The_only_oneZLY 发表于 2024-4-4 20:12
zjxitcc老师,您好,我是最近接触的orca,所以好多东西还不是很清楚,发这个贴子一方面是作为学习的记录, ...

我看不懂你说的。大量信息都没展示:Gaussian用什么计算级别?具体什么关键词?与ORCA一致吗?你提交任务前.ges文件存在吗?如果提交失败了,再次提交前是否删了.ges文件呢?你展示的截图它是在.ges文件存在的情况下提交的吗?

目前我只能提几个建议,希望你不要犯这些错误:
(1)Gaussian->ORCA传轨道时,效果最好的办法是在两个量化软件里使用同样的计算级别(方法、基组、赝势等,包括标量相对论哈密顿DKH2)。尽管不同方法或基组的结果也能传,ORCA会将其投影到目标基组上,但这效果就大打折扣了,还不如用ORCA自己构造一个初猜来读取,完全没有必要用Gaussian获得初猜。尤其是在使用赝势基组的时候,不管用哪个软件,读取前后的赝势必须要严格一致,比如这样是极其糟糕的:Gaussian用SDD算,传给ORCA之后却用def2赝势,即使在同一个软件里也不能这么读取轨道。
(2)提交任务前记得清理残留文件,例如.ges和各种.tmp文件。
作者
Author:
The_only_oneZLY    时间: 2024-4-4 21:17
本帖最后由 The_only_oneZLY 于 2024-4-4 21:25 编辑
zjxitcc 发表于 2024-4-4 20:34
我看不懂你说的。大量信息都没展示:Gaussian用什么计算级别?具体什么关键词?与ORCA一致吗?你提交任务 ...

非常感谢老师的建议,之前Gaussian计算时采用的赝势确实和orca使用的不一样,上面的任务主要是为了测试orca能不能读取.gbw文件。3楼中第二个截图展示的就是orca计算任务目录下所有的文件,.ges和所有.tmp文件都已经删除了,但是提交任务后orca好像还是没有读取.gbw文件,而是读取orca自己产生的.ges文件。3楼第三个截图展示的就是第二个截图中提交任务后输出的结果。
作者
Author:
zjxitcc    时间: 2024-4-4 21:21
本帖最后由 zjxitcc 于 2024-4-4 21:24 编辑
The_only_oneZLY 发表于 2024-4-4 21:17
非常感谢老师的建议,之前Gaussian计算时采用的赝势确实和orca使用的不一样,上面的任务主要是为了测试or ...

我还有个困惑,我看你在ORCA里用的似乎是DKH2相对论哈密顿+相对论全电子基组,那你在Gaussian里用什么呢?不会是“不仅没用标量相对论哈密顿,又用了赝势”吧?如果真是这样,这跟ORCA计算级别有天壤之别,传轨道压根就是错误的,讨论是否成功读取gbw文件也没有意义。

作者
Author:
The_only_oneZLY    时间: 2024-4-4 21:32
之前Gaussian计算中确实没有加DKH2关键词,后面我又加上重新算了一下,关键词如下图:
(, 下载次数 Times of downloads: 17)
Dy采用的也是和orca中一样的基组:
(, 下载次数 Times of downloads: 13)
C、H采用的也和orca一样了:
(, 下载次数 Times of downloads: 19)
想利用这个传轨道的方法就是因为之前在orca中使用了很多不同的方法和基组算了都不收敛。
作者
Author:
The_only_oneZLY    时间: 2024-4-4 21:37
并且在计算完成后利用Multiwfn导出.mkl文件时还出现了报错,说是目前还不支持处理高于h的角动量轨道:
(, 下载次数 Times of downloads: 22)
请问老师这种有什么解决方法吗?
作者
Author:
zjxitcc    时间: 2024-4-10 02:42
本帖最后由 zjxitcc 于 2024-4-10 03:19 编辑

可使用MOKITfch2mkl小程序从Gaussian传轨道给ORCA,fch2mkl最高支持I角动量(即比H角动量高)。我不知道你体系的坐标,这里以单个Dy原子举例,Dy.gjf文件内容为
  1. %mem=180GB
  2. %nprocshared=64
  3. %chk=Dy.chk
  4. #p RHF gen nosymm int(nobasistransform,DKH2)

  5. title

  6. 0 1
  7. Dy   0.0   0.0   0.0

  8. (Sapporo-DKH3-QZP-2012基组数据等,太长了,这里不写出来了)
复制代码
高斯算完后获得Dy.chk文件,依次执行
  1. formchk Dy.chk Dy.fch
  2. fch2mkl Dy.fch
  3. orca_2mkl Dy_o -gbw
复制代码
产生Dy_o.inp, Dy_o.mkl, Dy_o.gbw三个文件,其中坐标,方法,基组数据,DKH2哈密顿等关键词全都写好了。提交给ORCA做计算,SCF立即收敛。有几点注意事项:
(1)inp文件里的内存和核数,可以根据自己的需求修改。
(2)gjf文件中应带上nosymm int=nobasistransform关键词进行计算,使传轨道后收敛更快。
(3)gjf文件中若用的是RHF/ROHF/UHF方法,fch2mkl会自动识别并将其写入inp文件,因此无需修改方法。若用的是某一种泛函,fch2mkl无法自动识别,需要自己添加泛函名称和相应的关键词,例子可以看以往的帖子
http://bbs.keinsci.com/forum.php ... 285755&fromuid=2632


作者
Author:
The_only_oneZLY    时间: 2024-4-13 08:17
zjxitcc 发表于 2024-4-10 02:42
可使用MOKIT的fch2mkl小程序从Gaussian传轨道给ORCA,fch2mkl最高支持I角动量(即比H角动量高)。我不知道 ...

非常感谢老师的分享和指导,根据您说的方法,我先在Gaussian中用如下关键字得到了稳定的轨道,
(, 下载次数 Times of downloads: 15)
接着用MOKIT转换得到了相应的inp和gbw文件,并采用和Gaussian计算中相同的泛函和DKH2方法。
(, 下载次数 Times of downloads: 18)
在ORCA中计算很快就收敛了。
(, 下载次数 Times of downloads: 18)
另外,我之前在3楼中说的当存在与ORCA计算任务同名的gbw文件时ORCA仍然读取ges文件的问题也找到原因了。原因是当存在与ORCA计算任务同名的gbw文件时,ORCA会自动将gbw文件重命名为ges文件,
(, 下载次数 Times of downloads: 19)
因此在后面ORCA读取的就是重命名为ges的gbw文件。
(, 下载次数 Times of downloads: 18)
作者
Author:
zjxitcc    时间: 2024-4-13 10:37
The_only_oneZLY 发表于 2024-4-13 08:17
非常感谢老师的分享和指导,根据您说的方法,我先在Gaussian中用如下关键字得到了稳定的轨道,

接着用 ...

恭喜成功完成了计算。有一点需要说明一下,fch2mkl生成的inp文件里不需要写KDIIS,因为初始轨道已经十分好了。加KDIIS 大概率不如 没加时候 收敛快。不过既然你已经收敛了,倒也没必要去折腾更快的收敛方式。
作者
Author:
The_only_oneZLY    时间: 2024-4-14 08:59
zjxitcc 发表于 2024-4-13 10:37
恭喜成功完成了计算。有一点需要说明一下,fch2mkl生成的inp文件里不需要写KDIIS,因为初始轨道已经十分 ...

噢噢,明白了老师,非常感谢您!
作者
Author:
zhaoxiaoni    时间: 2024-8-14 17:27
zjxitcc 发表于 2024-4-4 21:21
我还有个困惑,我看你在ORCA里用的似乎是DKH2相对论哈密顿+相对论全电子基组,那你在Gaussian里用什么呢 ...

老师,您好,我在ORCA中Am元素用的是SARC-DKH-TZVP,我在Gaussian中计算的时候在基组库只找到一个SARC-DKH这个,我不太懂这儿应该怎么用
作者
Author:
wzkchem5    时间: 2024-8-14 18:00
zhaoxiaoni 发表于 2024-8-14 10:27
老师,您好,我在ORCA中Am元素用的是SARC-DKH-TZVP,我在Gaussian中计算的时候在基组库只找到一个SARC-DK ...

如果BSE上面找不到的话,可以在orca里面用%output print[p_basis] 2 end输出基组的定义
作者
Author:
zjxitcc    时间: 2024-8-14 21:57
本帖最后由 zjxitcc 于 2024-8-15 11:15 编辑
zhaoxiaoni 发表于 2024-8-14 17:27
老师,您好,我在ORCA中Am元素用的是SARC-DKH-TZVP,我在Gaussian中计算的时候在基组库只找到一个SARC-DK ...

对于Am元素,Basis Set Exchange上的SARC-DKH2 就是ORCA程序内置的SARC-DKH-TZVP,可以这么验证:
写一个ORCA输入文件Am.inp
  1. %pal nprocs 1 end
  2. %maxcore 2000
  3. %scf
  4. DryRun True
  5. end
  6. ! UHF SARC-DKH-TZVP
  7. *xyz 0 8
  8. Am   0.0    0.0   0.0
  9. *
复制代码
DryRun表示不进行SCF计算,任务几秒结束,这样也会产生Am.gbw文件,那些Amxxx.tmp没用的文件都删掉。依次运行
  1. orca_2mkl Am -mkl
  2. mkl2gjf Am.mkl
复制代码
这会产生Am.gjf文件,内含SARC-DKH-TZVP基组数据,可与Basis Set Exchange上的SARC-DKH2详细对比,发现一致。其他元素可用类似手段验证。orca_2mkl是ORCA内置小程序,mkl2gjfMOKIT的小程序。此处Am.gjf文件不仅可以用于验证基组数据,也可稍加修改后用于Gaussian的具体计算。


作者
Author:
zhaoxiaoni    时间: 2024-8-15 10:58
zjxitcc 发表于 2024-8-14 21:57
对于Am元素,Basis Set Exchange上的SARC-DKH2 就是ORCA程序内置的SARC-DKH-TZVP,可以这么验证:
写一 ...

感谢两位老师。那我在Gaussian中是直接用Basis Set Exchange上的SARC-DKH2还是用您上面提到的修改后的Am.gjf,如果是用Am.gjf,那应该怎么修改就可以用于Gaussian计算。
作者
Author:
zhaoxiaoni    时间: 2024-8-15 11:55
zjxitcc 发表于 2024-8-14 21:57
对于Am元素,Basis Set Exchange上的SARC-DKH2 就是ORCA程序内置的SARC-DKH-TZVP,可以这么验证:
写一 ...

老师,我在运行orca_2mkl Am -mkl这条命令的时候提示
Reading the input file Am.gbw      ...

WARNING!!!!!!!
Your GBWFile is either corrupt or from a different ORCA version!
Please be VERY careful with your calculation results!!!

Data_size, sizeof( TOrcaInfo ): 651728, 491312
[file orca_tools/qcmem.cpp, line 870]:  OUT OF MEMORY ERROR!

[file orca_tools/qcmem.cpp, line 870]:  OUT OF MEMORY ERROR!
我用的ORCA版本是ORCA-5.0.3, 看log文件是正常结束任务了的。
作者
Author:
snljty2    时间: 2024-8-15 14:46
zhaoxiaoni 发表于 2024-8-15 11:55
老师,我在运行orca_2mkl Am -mkl这条命令的时候提示
Reading the input file Am.gbw      ...

先确保你计算用的orca和转波函数用的orca_2mkl是来自同一个版本的看看。
作者
Author:
zhaoxiaoni    时间: 2024-8-15 16:55
snljty2 发表于 2024-8-15 14:46
先确保你计算用的orca和转波函数用的orca_2mkl是来自同一个版本的看看。

我是直接就在当前计算的文件夹下运行的orca_2mkl这个命令
作者
Author:
snljty2    时间: 2024-8-15 16:59
zhaoxiaoni 发表于 2024-8-15 16:55
我是直接就在当前计算的文件夹下运行的orca_2mkl这个命令

跟在哪个目录没关系,提交的脚本里面加入
  1. dirname $(\which orca)
复制代码
命令,然后跑orca_2mkl之前看
  1. dirname $(\which orca_2mkl)
复制代码
,看两者是否一致。
作者
Author:
zjxitcc    时间: 2024-8-15 18:54
zhaoxiaoni 发表于 2024-8-15 11:55
老师,我在运行orca_2mkl Am -mkl这条命令的时候提示
Reading the input file Am.gbw      ...

这是因为你混用了不同版本的ORCA所致,这与混用不同版本Gaussian类似,都是十分不好的习惯,解决办法在18L已经有人说了。要确保orca_2mkl和orca是同一个版本的,比如都是5.0.3。此贴2L和4L我也给出了详细解答http://bbs.keinsci.com/thread-47632-1-1.html
作者
Author:
zjxitcc    时间: 2024-8-15 19:01
zhaoxiaoni 发表于 2024-8-15 10:58
感谢两位老师。那我在Gaussian中是直接用Basis Set Exchange上的SARC-DKH2还是用您上面提到的修改后的Am. ...

前一个问题:都可以。
后一个问题:取决于你要做什么计算。产生的Am.gjf文件中写好了UHF的关键词,当然你还可以修改核数和内存等。这里举两个例子
(1)UHF计算,gjf文件前几行示例
  1. %chk=Am.chk
  2. %nprocshared=64
  3. %mem=180GB
  4. #p UHF/gen int(nobasistransform,DKH2) nosymm guess=cards stable=opt
  5. ...(剩余内容不动)
复制代码
相当于用ORCA的UHF初猜,使用Gaussian做UHF计算,开启了DKH2哈密顿,并检验波函数稳定性。这个单原子的计算结果是E(UHF) = -30336.1908255 a.u.

(2)UB3LYP计算,gjf文件前几行示例
  1. %chk=Am_GAU.chk
  2. %nprocshared=64
  3. %mem=180GB
  4. #p UB3LYP/gen int(nobasistransform,DKH2) nosymm stable=opt

  5. generated by utility mkl2gjf in MOKIT

  6. 0 8
  7. Am         0.00000000         0.00000000         0.00000000

  8. 1 0
  9. S   9  1.00
  10. ... (基组数据)
  11. (空行)
  12. (空行)
复制代码
删掉底下轨道数据,这里我们做的是UB3LYP计算,用不到UHF初猜。




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