计算化学公社

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

[综合交流] Gaussian-ORCA-xTB联用进行ONIOM计算

[复制链接 Copy URL]

82

帖子

4

威望

2534

eV
积分
2696

Level 5 (御坂)

跳转到指定楼层 Go to specific reply
楼主
最近论坛上好多联用,挺有意思的。以下欢迎拍砖。
这里试着把三个常用的三个量化软件进行ONIOM计算。
用的是社长原创的接口,这里稍微修改了点,以适应不同情形。
请看 gox.zip (1.91 MB, 下载次数 Times of downloads: 305)




试了几个例子,貌似还是可行的。
ONIOM用的不多,不恰当的地方请指出。欢迎试算恰当的实际例子。

用之前先把orca.sh中的orcapath定义为自己的实际路径。
其他照常运行,设置好三个程序正常的运行路径和环境变量。


例子一(Gau-xTB):
%nproc=1
#P ONIOM(B3LYP/def2SVP em=GD3BJ : External="sh ./xtb.sh") Opt(nomicro)



例子二(Gau-ORCA):
%nproc=1
#P ONIOM(External="sh ./orca.sh" : uff) Opt(nomicro)


例子三(Gau-ORCA-xTB三者联用):
%nproc=1
#P ONIOM(External="sh ./orca.sh" : External="sh ./xtb.sh") Opt(nomicro)


例子四(Gaussian非联用):
#P ONIOM(B3LYP/6-31G(d,p):UFF) Opt

以上仅双层的例子,三层的例子应该也可行。

References
http://bbs.keinsci.com/thread-10141-1-1.html
http://bbs.keinsci.com/thread-10106-1-1.html........


评分 Rate

参与人数
Participants 9
威望 +1 eV +39 收起 理由
Reason
tkaray + 5 GJ!
Alizzard + 4 谢谢
ggdh + 5 太强了!
ldatea + 5 好物!
zsu007 + 5 谢谢分享
hebrewsnabla + 5 GJ!
snljty + 5
ABetaCarw + 5 精品内容
sobereva + 1

查看全部评分 View all ratings

1665

帖子

5

威望

4788

eV
积分
6553

Level 6 (一方通行)

喵星人

2#
发表于 Post on 2020-8-18 23:44:25 | 只看该作者 Only view this author
用ONIOM的情况下调用其他软件计算是用内坐标优化效率比较高,直接调用用的笛卡尔坐标,优化效率很低,貌似以前有人说过这事

82

帖子

4

威望

2534

eV
积分
2696

Level 5 (御坂)

3#
 楼主 Author| 发表于 Post on 2020-8-19 20:46:45 | 只看该作者 Only view this author
喵星大佬 发表于 2020-8-18 23:44
用ONIOM的情况下调用其他软件计算是用内坐标优化效率比较高,直接调用用的笛卡尔坐标,优化效率很低,貌似 ...

Opt里面不指定坐标类型的话,貌似ONIOM默认转为冗余内坐标计算,应该是推荐的。
不过如果结构优化过程中存在变成三点一线的原子,则可能会失败报错。
我试了指定z-matrix,反而优化效率更低,甚至在默认的优化圈数内无法收敛。

21

帖子

0

威望

217

eV
积分
238

Level 3 能力者

4#
发表于 Post on 2020-11-19 15:00:16 | 只看该作者 Only view this author
您好,我试了Orca4.2.1和xTB6.3.2,跑算例出错了。 是不是版本更新了格式对不上了呢?

82

帖子

4

威望

2534

eV
积分
2696

Level 5 (御坂)

5#
 楼主 Author| 发表于 Post on 2020-11-19 18:57:29 | 只看该作者 Only view this author
Alizzard 发表于 2020-11-19 15:00
您好,我试了Orca4.2.1和xTB6.3.2,跑算例出错了。 是不是版本更新了格式对不上了呢?

你贴下出错信息看看

82

帖子

4

威望

2534

eV
积分
2696

Level 5 (御坂)

6#
 楼主 Author| 发表于 Post on 2020-11-24 08:26:52 | 只看该作者 Only view this author
Alizzard 发表于 2020-11-19 15:00
您好,我试了Orca4.2.1和xTB6.3.2,跑算例出错了。 是不是版本更新了格式对不上了呢?

刚刚发现在跑xtb的时候罕有的也报错了,不涉及xtb版本变化。
检查了xtb.sh之后,发现加了ulimit -s unlimited和export KMP_STACKSIZE=4000000000(这个数值因系统而已)就正常了。
不知道你问题解决了没有,你可以看看是不是之前的也是这个问题。
估计服务器上有些环境变量不是那么一致。

21

帖子

0

威望

217

eV
积分
238

Level 3 能力者

7#
发表于 Post on 2020-12-2 15:20:42 | 只看该作者 Only view this author
winnerwill 发表于 2020-11-24 08:26
刚刚发现在跑xtb的时候罕有的也报错了,不涉及xtb版本变化。
检查了xtb.sh之后,发现加了ulimit -s unli ...

不好意思,前一段时间事情太多,现在才回复
我的g16和xtb(200702)单独计算都没问题。
计算OMION-ggx.gjf的结果如下

normal termination of xtb
abnormal termination of xtb
forrtl: severe (24): end-of-file during read, unit 10, file /home/hemingzhang/soft/gox/examples/xtbout
Image              PC                Routine            Line        Source            
extderi            00000000004075AB  Unknown               Unknown  Unknown
extderi            000000000042D442  Unknown               Unknown  Unknown
extderi            000000000040447A  Unknown               Unknown  Unknown
extderi            00000000004041E2  Unknown               Unknown  Unknown
libc-2.31.so       0000147CF6B200B3  __libc_start_main     Unknown  Unknown
extderi            00000000004040E9  Unknown               Unknown  Unknown
FIO-F-217/formatted read/unit=31/attempt to read past end of file.
File name = '/home/hemingzhang/tmp/Gau-29899.EOu',    formatted, sequential access   record = 1
In source file runexo.f, at line number 22
  /home/hemingzhang/soft/g16/l402.exe() [0x1a28e77]
  /home/hemingzhang/soft/g16/l402.exe() [0x19e2c1f]
  /home/hemingzhang/soft/g16/l402.exe() [0x19c06ff]
  /home/hemingzhang/soft/g16/l402.exe() [0x19c0338]
  /home/hemingzhang/soft/g16/l402.exe() [0x19c626e]
  /home/hemingzhang/soft/g16/l402.exe() [0x19c180e]
  /home/hemingzhang/soft/g16/l402.exe() [0x73751b]
  /home/hemingzhang/soft/g16/l402.exe() [0x51a530]
  /home/hemingzhang/soft/g16/l402.exe() [0x4202e0]
  /home/hemingzhang/soft/g16/l402.exe() [0x416c99]
  /home/hemingzhang/soft/g16/l402.exe() [0x4128a2]
  /home/hemingzhang/soft/g16/l402.exe() [0x4127a4]
  /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x14b9dc3750b3]
  /home/hemingzhang/soft/g16/l402.exe() [0x40cee9]
Aborted (core dumped)

[2]+  退出 1                g16 ONIOM-ggx.gjf


看来和xtb版本是无关的 ,应该是extderi 的原因把?
'/home/hemingzhang/tmp/Gau-29899.EOu' 这个文件是个空文件

(还有,算例ONIOm-ggx.gjf中的关键词“  External="sh ./xtb.sh" ”要改成“  External='./xtb.sh' ",才能找到xtb.sh这个脚本)

82

帖子

4

威望

2534

eV
积分
2696

Level 5 (御坂)

8#
 楼主 Author| 发表于 Post on 2020-12-2 21:17:47 | 只看该作者 Only view this author
Alizzard 发表于 2020-12-2 15:20
不好意思,前一段时间事情太多,现在才回复
我的g16和xtb(200702)单独计算都没问题。
计算OMION-ggx.gj ...

你用的xtb.sh是文件夹里面附带的修改版吗?
运行的Gaussian输出文件末尾是什么内容?

21

帖子

0

威望

217

eV
积分
238

Level 3 能力者

9#
发表于 Post on 2020-12-3 10:41:12 | 只看该作者 Only view this author
winnerwill 发表于 2020-12-2 21:17
你用的xtb.sh是文件夹里面附带的修改版吗?
运行的Gaussian输出文件末尾是什么内容?

你好,我用的xtb.sh是解压gox.zip后examples里面的。
Gaussian输出末尾是:
(Enter /home/hemingzhang/soft/g16/l402.exe)
External calculation of energy and first derivatives.
Running external command "./xtb.sh M"
         input file       "/home/hemingzhang/tmp/Gau-57834.EIn"
         output file      "/home/hemingzhang/tmp/Gau-57834.EOu"
         message file     "/home/hemingzhang/tmp/Gau-57834.EMs"
         fchk file        "/home/hemingzhang/tmp/Gau-57834.EFC"
         mat. el file     "/home/hemingzhang/tmp/Gau-57834.EUF"
Generating mol.tmp
Generating mol.xyz via genxyz
Running: xtb mol.xyz --chrg 0 --uhf 0 --grad > xtbout
xtb running finished with Exit code of external program call: 128 !
Extracting data from xtb outputs via extderi

ONIOM-ggx.log

34.22 KB, 下载次数 Times of downloads: 5

82

帖子

4

威望

2534

eV
积分
2696

Level 5 (御坂)

10#
 楼主 Author| 发表于 Post on 2020-12-3 16:14:08 | 只看该作者 Only view this author
Alizzard 发表于 2020-12-3 10:41
你好,我用的xtb.sh是解压gox.zip后examples里面的。
Gaussian输出末尾是:
(Enter /home/hemingzhang ...

你试了按我在6L说的改了吗?很可能是这个环境变量的设置问题。
在xtb.sh开头加
export KMP_STACKSIZE=4000000000
ulimit -s unlimited

上面的值看自己的系统决定。
另外如果xtb.sh有可执行权限就可以不用加sh,如果没有就要加上sh

21

帖子

0

威望

217

eV
积分
238

Level 3 能力者

11#
发表于 Post on 2020-12-4 09:14:47 | 只看该作者 Only view this author
winnerwill 发表于 2020-12-3 16:14
你试了按我在6L说的改了吗?很可能是这个环境变量的设置问题。
在xtb.sh开头加
export KMP_STACKSIZE= ...

试了,依旧是这个问题

hemingzhang@hemingzhang:~/soft/gox/examples$ g16 ONIOM-ggx.gjf
normal termination of xtb
abnormal termination of xtb
forrtl: severe (24): end-of-file during read, unit 10, file /home/hemingzhang/soft/gox/examples/xtbout
Image              PC                Routine            Line        Source            
extderi            00000000004075AB  Unknown               Unknown  Unknown
extderi            000000000042D442  Unknown               Unknown  Unknown
extderi            000000000040447A  Unknown               Unknown  Unknown
extderi            00000000004041E2  Unknown               Unknown  Unknown
libc-2.31.so       00001513EE4390B3  __libc_start_main     Unknown  Unknown
extderi            00000000004040E9  Unknown               Unknown  Unknown
mv: 无法获取'molden.input' 的文件状态(stat): 没有那个文件或目录
FIO-F-217/formatted read/unit=31/attempt to read past end of file.
File name = '/home/hemingzhang/tmp/Gau-81582.EOu',    formatted, sequential access   record = 1
In source file runexo.f, at line number 22
  /home/hemingzhang/soft/g16/l402.exe() [0x1a28e77]
  /home/hemingzhang/soft/g16/l402.exe() [0x19e2c1f]
  /home/hemingzhang/soft/g16/l402.exe() [0x19c06ff]
  /home/hemingzhang/soft/g16/l402.exe() [0x19c0338]
  /home/hemingzhang/soft/g16/l402.exe() [0x19c626e]
  /home/hemingzhang/soft/g16/l402.exe() [0x19c180e]
  /home/hemingzhang/soft/g16/l402.exe() [0x73751b]
  /home/hemingzhang/soft/g16/l402.exe() [0x51a530]
  /home/hemingzhang/soft/g16/l402.exe() [0x4202e0]
  /home/hemingzhang/soft/g16/l402.exe() [0x416c99]
  /home/hemingzhang/soft/g16/l402.exe() [0x4128a2]
  /home/hemingzhang/soft/g16/l402.exe() [0x4127a4]
  /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf3) [0x14df47d640b3]
  /home/hemingzhang/soft/g16/l402.exe() [0x40cee9]
Aborted (core dumped)
hemingzhang@hemingzhang:~/soft/gox/examples$



出现了“abnormal termination of xtb”,但我用xtb单独跑ONIOM-ggx这个结构的优化没问题。

gaussian 结果末尾:
(Enter /home/hemingzhang/soft/g16/l402.exe)
External calculation of energy and first derivatives.
Running external command "./xtb.sh M"
         input file       "/home/hemingzhang/tmp/Gau-81582.EIn"
         output file      "/home/hemingzhang/tmp/Gau-81582.EOu"
         message file     "/home/hemingzhang/tmp/Gau-81582.EMs"
         fchk file        "/home/hemingzhang/tmp/Gau-81582.EFC"
         mat. el file     "/home/hemingzhang/tmp/Gau-81582.EUF"
Generating mol.tmp
Generating mol.xyz via genxyz
Running: xtb mol.xyz --chrg 0 --uhf 0 --grad > xtbout
xtb running finished with Exit code of external program call: 128 !
Extracting data from xtb outputs via extderi

21

帖子

0

威望

217

eV
积分
238

Level 3 能力者

12#
发表于 Post on 2020-12-4 09:28:07 | 只看该作者 Only view this author
本帖最后由 Alizzard 于 2020-12-4 09:29 编辑
winnerwill 发表于 2020-12-3 16:14
你试了按我在6L说的改了吗?很可能是这个环境变量的设置问题。
在xtb.sh开头加
export KMP_STACKSIZE= ...

我再确认下,是这么加这两行么?

#!/bin/bash
  
#This script was written by Dr. Tian Lu at Beijing Kein Research Center for Natural Sciences (www.keinsci.com)
#Contact: sobereva@sina.com
export KMP_STACKSIZE=4000000
ulimit -s unlimited

if [[ ! -x genxyz ]]; then chmod +x genxyz; fi
if [[ ! -x extderi ]]; then chmod +x extderi; fi

read atoms derivs charge spin < $2

#Create temporary .xyz file
#the element index should be replaced with element name, and the coordinate should be convert to Angstrom
echo "Generating mol.tmp"
cat >> mol.tmp <<EOF
$atoms
……

具体结果见11楼

82

帖子

4

威望

2534

eV
积分
2696

Level 5 (御坂)

13#
 楼主 Author| 发表于 Post on 2020-12-5 11:09:53 | 只看该作者 Only view this author
Alizzard 发表于 2020-12-4 09:28
我再确认下,是这么加这两行么?

#!/bin/bash

你这个看来还有问题是跟高斯有关的。你进入运行目录下看看输入文件行尾符是什么?另外按你之前执行顺序,在执行g16命令之前echo下运行的环境变量,看看有无异常。

21

帖子

0

威望

217

eV
积分
238

Level 3 能力者

14#
发表于 Post on 2020-12-7 09:04:25 | 只看该作者 Only view this author
winnerwill 发表于 2020-12-5 11:09
你这个看来还有问题是跟高斯有关的。你进入运行目录下看看输入文件行尾符是什么?另外按你之前执行顺序, ...

确实是跟高斯有关
我用A.01计算算例,没问题,非常丝滑。
用C.01计算算例就不行。
两者直接计算算例的ONIOM2.gjf都没问题。
“进入运行目录下看看输入文件行尾符是什么”我没明白这是什么意思。

82

帖子

4

威望

2534

eV
积分
2696

Level 5 (御坂)

15#
 楼主 Author| 发表于 Post on 2020-12-7 11:09:59 | 只看该作者 Only view this author
Alizzard 发表于 2020-12-7 09:04
确实是跟高斯有关
我用A.01计算算例,没问题,非常丝滑。
用C.01计算算例就不行。

就是看看输入文件是不是在传输后不是Linux格式而是Windows格式的行尾符.
比如进入运行目录,执行以下命令: file *
看看输出结果是什么.或者在可以显示行尾符的Notepad++之类显示看看.

本版积分规则 Credits rule

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

GMT+8, 2026-2-19 02:57 , Processed in 0.301061 second(s), 24 queries , Gzip On.

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