计算化学公社

标题: ORCA计算SOC时出现error termination in SCF,但是SCF已经收敛 [打印本页]

作者
Author:
zhangwei2713    时间: 2023-9-8 10:22
标题: ORCA计算SOC时出现error termination in SCF,但是SCF已经收敛
本帖最后由 zhangwei2713 于 2023-9-8 10:36 编辑

向各位前辈老师求教,我在计算一个金纳米团簇的SOC。输入文件和输出文件已经附上。
输入文件相关内容为:
! B3LYP/G 6-311g(d,p) sloppySCF noautostart miniprint nopop VerySlowConv
%maxcore  35000
%pal nprocs   10 end
%tddft
nroots 50
dosoc true
tda false
printlevel 3
end
%scf
TolE 1e-5
end
%scf
MaxIter 200
end
%basis
NewGTO Au "LANL2DZ" end
NewECP AU "HayWadt" end
DelECP Au
end
* xyz   0   1
*****(坐标)
*

其中输出文件中,SOC已经收敛成功,报错内容为:
Number of orbitals to swap in and swap out does not match (103, 103, 111)
SKIPPING Reordering!


ORCA finished by error termination in SCF。


因为前后已经试了差不多快一个月了,实在是没辙了,从我的输入文件各个限制条件也可以看出来.....烦请各位不吝赐教,感谢!

作者
Author:
niobium    时间: 2023-9-8 15:59
你为什么把Au的赝势又删掉了?几个建议:金团簇用TPSSh泛函;关掉TRAH;加上levelshift;需要算50个态吗?
作者
Author:
zjxitcc    时间: 2023-9-9 01:23
本帖最后由 zjxitcc 于 2023-9-14 12:17 编辑

无需sloppySCF VerySlowConv TolE 1e-5 MaxIter 200,无需试一个月,一次计算即成、两三个小时即可。目前问题出在SCF计算上,我们从Gaussian向ORCA传轨道即可,写一个gjf文件
  1. %mem=48GB
  2. %nprocshared=24
  3. %chk=Au-soc.chk
  4. #p B3LYP genecp nosymm int=nobasistransform scf(xqc,maxcycle=128)

  5. title

  6. 0 1
  7. [坐标]

  8. H C S 0
  9. 6-311G(d,p)
  10. ****
  11. Au 0
  12. LANL2DZ
  13. ****

  14. Au 0
  15. LANL2

复制代码
交给高斯,约1h算完。执行以下两行命令
  1. fch2mkl Au-soc.chk
  2. orca_2mkl Au-soc_o -gbw
复制代码
第一行生成ORCA输入文件Au-soc_o.inp和波函数文件Au-soc_o.mkl,第二行将mkl文件转化为gbw文件。在Au-soc_o.inp里改一下关键词(我们要做的是B3LYP计算)
! RKS B3LYP/G TightSCF noTRAH RIJCOSX defgrid3 def2/J
可以在输出文件里看出SCF是正常的,并极速收敛(只需7圈)。当然你还可以加激发态的关键词。注意输入文件中已写好混合基组的数据,连你去自定义基组也省了。

当你学会了这些之后,可以换用更好的基组,比如一开始就给Au用LANL2TZ(f),LANL2DZ太粗糙了,本文传轨道步骤同样适用。
作者
Author:
zhangwei2713    时间: 2023-9-9 11:12
niobium 发表于 2023-9-8 15:59
你为什么把Au的赝势又删掉了?几个建议:金团簇用TPSSh泛函;关掉TRAH;加上levelshift;需要算50个态吗?

不加上delecp就会报错。我看之前帖子中有人建议删掉赝势然后再自己加赝势。那个“haywadt”就是我在orca手册查到了。nroot 设大一点也是之前一直报错,我看有的帖子sob老师建议的设大一点nroot。
我按照您的建议我再尝试一下,把参数修改一下试试,先谢谢了!
作者
Author:
zhangwei2713    时间: 2023-9-9 11:14
zjxitcc 发表于 2023-9-9 01:23
无需sloppySCF VerySlowConv TolE 1e-5 MaxIter 200,无需试一个月,一次计算即成、两三个小时即可。目前问 ...

您这个是要在产生chk文件的基础上再做后续的吗?我的高斯计算是在超算做的,orca是在自己的服务器上做的。那我按照您的建议试一下,全部在自己的服务器上面来一遍看看。
感谢指导!
作者
Author:
zjxitcc    时间: 2023-9-9 14:07
本帖最后由 zjxitcc 于 2023-9-11 10:00 编辑
zhangwei2713 发表于 2023-9-9 11:14
您这个是要在产生chk文件的基础上再做后续的吗?我的高斯计算是在超算做的,orca是在自己的服务器上做的 ...

超算、自己服务器都无所谓。你可以在超算上把chk文件转化为fch文件formchk Au-soc.chk Au-soc.fch

然后到自己服务器上运行fch2mkl Au-soc.fch

当然如果你一开始就没保存chk或fch文件,那就只能重算一遍高斯了。
作者
Author:
zhangwei2713    时间: 2023-9-11 09:26
zjxitcc 发表于 2023-9-9 14:07
超算、自己服务器都无所谓。你可以在超算上把chk文件转化为fch文件
formchk Au-soc.chk Au-soc.fch

请问一下您上面的两行代码
fch2mkl Au-soc.chk
orca_2mkl Au-soc -gbw
输出得到的gbw文件就保留在服务器中,然后修改相应的inp文件,计算就可以直接调用了吗?我转回chk后发现数据丢失的比较多,所以我准备重新算一下并得到chk文件,再按照您说的来一遍。
作者
Author:
zjxitcc    时间: 2023-9-11 09:58
zhangwei2713 发表于 2023-9-11 09:26
请问一下您上面的两行代码
fch2mkl Au-soc.chk
orca_2mkl Au-soc -gbw

这里详细讲一下
(1)formchk Au-soc.chk Au-soc.fch
调用Gaussian自带的formchk小程序将chk转化为fch。这一步要在你产生chk文件的计算平台/机器上操作。

(2)fch2mkl Au-soc.fch
会产生Au-soc_o.inp和Au-soc_o.mkl文件,如果没有产生,说明用户操作有误。注意文件名多了一个_o,仅仅是方便阅读和辨认出这是ORCA输入文件。这一步可以在任何平台下操作(只要你把fch文件发送到相应平台下)。若直接运行fch2mkl Au-soc.chk,等价于(1)+(2)两步。若已有fch文件,没必要倒退一步(指将fch文件转回chk文件),本来要用的就是fch文件。

(3)orca_2mkl Au-soc_o -gbw
会将Au-soc_o.mkl文件转化为Au-soc_o.gbw文件,如果没有产生,说明用户操作有误。这一步可以在任何平台下操作(只要你把mkl文件发送到相应平台下)。Au-soc_o.inp计算时检测到Au-soc_o.gbw文件已存在,就会读取里面的波函数,达到极速收敛效果。
作者
Author:
zhangwei2713    时间: 2023-9-13 17:38
zjxitcc 发表于 2023-9-11 09:58
这里详细讲一下
(1)formchk Au-soc.chk Au-soc.fch
调用Gaussian自带的formchk小程序将chk转化为fch ...

不好意思又麻烦您了。
我在服务器上重新做了计算得到了相应的chk/fch文件。但是您说的fch2mkl代码在服务器上无法识别,您说的“这一步可以在任何平台下操作”貌似不行。
我看了一下您其他的贴子,这个代码是要在mokit小程序上面才能使用是吗?如果是的话我还要花时间去研究一下mokit
作者
Author:
zjxitcc    时间: 2023-9-13 17:57
本帖最后由 zjxitcc 于 2023-9-13 17:59 编辑
zhangwei2713 发表于 2023-9-13 17:38
不好意思又麻烦您了。
我在服务器上重新做了计算得到了相应的chk/fch文件。但是您说的fch2mkl代码在服务 ...

fch2mkl是免费、开源MOKIT程序里的一个小程序。你只想用fch2mkl,不需要花时间研究,我在3L说了“一次计算即成、两三个小时”,那就真的是这样。直接下载预编译版,写好环境变量即可使用,见https://jeanwsr.gitlab.io/mokit- ... want-frag_guess_wfn
作者
Author:
zhangwei2713    时间: 2023-9-15 22:06
zjxitcc 发表于 2023-9-13 17:57
fch2mkl是免费、开源MOKIT程序里的一个小程序。你只想用fch2mkl,不需要花时间研究,我在3L说了“一次计 ...

不好意思,又要向您请教了。
我按照您写(https://jeanwsr.gitlab.io/mokit- ... 5.html#4524-fch2mkl)的,已经做好了python,numpy,gcc的设置,版本与您表格中要求是一致的。

但是貌似是我设置环境变量一直没对,显示的是“bash: fch2mkl: 未找到命令...”。试了好多次,没有找出原因(只需要用fch2mkl这类命令,因此没有下载gamess软件)。

我写的环境变量如下:
export MOKIT_ROOT=$HOME/root/mokit
export PATH=$MOKIT_ROOT/bin:$PATH
export PYTHONPATH=$MOKIT_ROOT:$PYTHONPATH
export LD_LIBRARY_PATH=$MOKIT_ROOT/mokit/lib:$LD_LIBRARY_PATH

劳烦您能不能给我指出这地方易错点在哪里?再次感谢!
作者
Author:
zjxitcc    时间: 2023-9-15 22:26
本帖最后由 zjxitcc 于 2023-9-15 22:28 编辑
zhangwei2713 发表于 2023-9-15 22:06
不好意思,又要向您请教了。
我按照您写(https://jeanwsr.gitlab.io/mokit-doc-mdbook/chap4-5.html#452 ...

不需要python,numpy,gcc的设置,不需要安装GAMESS,不需要设置PYTHONPATH。我说了“一次计算即成、两三个小时即可”,那就真的是这样。我在10L里早已给出了链接——如果只想用fch2mkl小程序的最简便方法。

“bash: fch2mkl: 未找到命令...”这是基本Linux常识问题。只能进行入门教学:你写的这个$HOME/root/mokit路径它是真实存在的么?不能凭感觉随便写。

如何检验存在:运行ls $HOME/root/mokit,如果报错No such file or directory,说明不存在。你把mokit放在哪里,就要写上真实、对应的路径。




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