计算化学公社

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

[Molclus] 将多帧xyz文件转化成量子化学输入文件的工具:xyz2QC

  [复制链接 Copy URL]

6万

帖子

99

威望

5万

eV
积分
120137

管理员

公社社长

跳转到指定楼层 Go to specific reply
#
将多帧xyz文件转化成量子化学输入文件的工具:xyz2QC
xyz2QC: A tool to convert multi-frame xyz files to input files of quantum chemistry program

文/Sobereva@北京科音
First release: 2019-Mar-17  Last update: 2021-Aug-26

1 前言

笔者开发的免费的做构象搜索和团簇构型搜索的Molclus程序是如今最为流行的构型和构象搜索程序之一,介绍和下载见官网http://www.keinsci.com/research/molclus.html。Molclus做搜索过程一般流程是先用十分廉价但粗糙的级别(如调用Openbabel跑MMFF94、调用xtb跑GFN-xTB)做结构优化和初步筛选,将其中能量最低的、为数不多的一批体系保留,最后再调用量子化学程序用更准确的方法算能量或做进一步优化。在整个过程中,初筛的耗时很低,在个人计算机上跑也没有任何压力,而最后对为数不多的筛出来的体系进一步做DFT/后HF量子化学计算才是占整个搜索过程的大头,才是真正有必要弄到超算上跑的(对于那些没有自己的像样的服务器的人而言)。然而,在超算上,计算任务一般是以提交方式进行的,而molclus这样自动调用其它程序去运行的方式在超算上不方便使用。为了解决这个矛盾,本文介绍笔者开发的xyz2QC程序。xyz2QC作为Molclus程序(1.7版及之后)的一个子程序发布,在Molclus压缩包里就可以找到。


2 xyz2QC介绍

xyz2QC可以基于Gaussian和ORCA的模板文件,将含有多帧的.xyz文件中指定的一批帧转化成Gaussian和ORCA输入文件。

模板文件的格式要求和molclus的完全一样,Gaussian的必须叫template.gjf,ORCA的必须叫template.inp,运行xyz2QC前必须将之放在当前目录下。

读进xyz2QC的多帧的.xyz可以是genmer、gentor直接产生的,也可以是molclus跑完后产生的isomers.xyz,也可以是isostat筛选、排序、归簇后产生的cluster.xyz。

转化出的Gaussian/ORCA的输入文件,既可以是所有被选择的结构作为多步任务出现在同一个输入文件里的,也可以要求拆分成一个个独立的文件,比如000001.gjf、000002.gjf...文件名是.xyz里的帧号,文件名数字前头可以自行定义前缀。


3 例子

xyz2QC使用极其简单,下面是一个简单例子。

假设我们之前用molclus对某个有机分子在粗糙的半经验方法PM7下做了批量优化,并用isostat做了处理,得到了按照能量排序后的cluster.xyz文件(可以这里下载:http://sobereva.com/attach/472/cluster.xyz)。这里我们想把其中能量最低的三个转化成.gjf文件,之后弄到超算/服务器上算更准确的能量,于是我们准备一个Gaussian模板文件template.gjf,内容为比如

%nproc=4
# M062X/TZVP

Template file

0 1
[GEOMETRY]
<---此处有空行
<---此处有空行


我们将cluster.xyz、template.gjf都放到xyz2QC目录下,然后进入此目录,启动xyz2QC,按照屏幕操作,依次输入:
1  //产生含多步的单一Gaussian输入文件
cluster.xyz  //输入.xyz的实际路径,因为此文件就在当前目录,因此这里不用输绝对路径
1-3  //我们只需要算能量最低的三个结构,由于cluster.xyz里已经按照能量排序,所以这里我们选择xyz文件里的第1~3帧

此时程序提示Gaussian.gjf已经产生在了当前目录,按回车退出即可。这个文件的内容是这样的:
%nproc=4
# M062X/TZVP

Template file

0 1
O          -2.30907426      1.90383755      0.11387296
...略
H          -3.80099226     -1.36391720      0.45491869

--link1--
%nproc=4
# M062X/TZVP

Template file

0 1
O          -2.47455224      1.86708010     -0.16509991
...略
H          -3.70656780     -1.42641602      0.64335011

--link1--
%nproc=4
# M062X/TZVP

Template file

0 1
O          -2.34444893      1.89718026      0.06136974
...略
H          -3.75360804     -1.39079507      0.53898348


有一定Gaussian基础的人都知道,在Gaussian的输入文件里可以用--link1--来将多步任务进行分隔,因此直接执行Gaussian.gjf,这三个结构的能量就都会挨个算出来了。之后我们可以用比如Ultraedit或者Linux下的grep命令直接把带有SCF Done字样的行都提取出来,就直接得到这三个结构的能量了,非常方便!

注意--link1--前头的空行数目必须对,否则多步任务将运行不成功,上面产生的Gaussian.gjf这样是没问题的。--link1--前面空行数目取决于template.gjf末尾的空行数。

xyz2QC还允许将.xyz里的指定帧拆分成产生单独的.gjf文件,这有何意义?一般来说,像上面这样把多个结构弄到一个.gjf里运行起来最方便,但有一个缺点是如果其中一个任务失败了(如SCF不收敛、几何优化不收敛),那么整个任务就会停了,后面的步骤也不算了。如果拆成单独的.gjf文件,那就没这个问题了。

Gaussian模板文件中可以使用[FILENAME]占位,xyz2QC产生输入文件时它将被替换为"前缀 帧号",因此可以在模板文件里写比如%chk=/sob/[FILENAME].chk从而使得计算完毕后chk文件以恰当的名字留存在/sob目录下。这对于通过Multiwfn程序批量做波函数分析尤其有用。当有多帧的xyz文件,想对里面每个结构都用Multiwfn做波函数分析时,可以拆分完了后批量执行,得到对应的chk文件,然后再批量转换成fch,最后通过批处理脚本调用Multiwfn批量分析。怎么靠脚本实现批量转换和执行见《使用Gaussian时的几个实用脚本和命令》(http://sobereva.com/258)。

类似地,xyz2QC还可以产生ORCA的输入文件,也是可以作为多步任务构成单一文件,或拆分成不同的文件。对于多步任务,强烈建议在模板文件template.inp里加入noautostart关键词,要不然下一个任务的初猜会自动用前一个任务收敛的波函数,然而你选定的那些结构的几何差异可能不小,因此这样得到的初猜可能会很糟糕。noautostart代表不自动从与当前文件同名的.gbw文件中读取初猜波函数,就可以确保没这个问题。

评分 Rate

参与人数
Participants 20
eV +83 收起 理由
Reason
yjk369983454 + 4 精品内容
cym + 5 牛!
sasaru + 2 谢谢茄子
美泽虎 + 5 好物!
Lixiaolong + 4 好物!
sinking + 1 好物!
达斯维达尼亚 + 5 赞!
Joely + 1 赞!
aqhuangry + 5 赞!
dongdong + 4 谢谢
zsu007 + 5 赞!
常轩豪 + 4 хорошо!
ggdh + 5 赞!
fallleave + 5 好物!
ZCSco + 5 GJ!
greta2009 + 4 谢谢分享
kulaomega + 5 赞!
Novice + 5
yeahhanpei + 5 赞!
杨小狗 + 4 GJ!

查看全部评分 View all ratings

北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

72

帖子

0

威望

387

eV
积分
459

Level 3 能力者

65#
发表于 Post on 2024-11-19 15:49:45 | 只看该作者 Only view this author
sobereva 发表于 2024-11-19 08:07
cat *.xyz > all.xyz,就把当前目录下所有xyz文件合并成多帧的all.xyz了

好的,谢谢

6万

帖子

99

威望

5万

eV
积分
120137

管理员

公社社长

64#
 楼主 Author| 发表于 Post on 2024-11-19 08:07:04 | 只看该作者 Only view this author
wilely 发表于 2024-11-18 17:09
能不能反过来用?即把多个如100个xyz文件合并到一个xyz文件里面,好用xtb一起优化。

cat *.xyz > all.xyz,就把当前目录下所有xyz文件合并成多帧的all.xyz了
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

72

帖子

0

威望

387

eV
积分
459

Level 3 能力者

63#
发表于 Post on 2024-11-18 17:09:51 | 只看该作者 Only view this author
能不能反过来用?即把多个如100个xyz文件合并到一个xyz文件里面,好用xtb一起优化。

6万

帖子

99

威望

5万

eV
积分
120137

管理员

公社社长

62#
 楼主 Author| 发表于 Post on 2024-4-19 05:13:55 | 只看该作者 Only view this author
Whitedwarf 发表于 2024-4-18 10:17
Sob老师,请问现在还可以要到xyz2QC的源码嘛?我想在MD增强采样到不同cv路径的帧数据中按照数据点密度或者 ...

可以通过电子邮件向我索取,注明个人身份
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

6

帖子

0

威望

361

eV
积分
367

Level 3 能力者

61#
发表于 Post on 2024-4-18 10:17:24 | 只看该作者 Only view this author
Sob老师,请问现在还可以要到xyz2QC的源码嘛?我想在MD增强采样到不同cv路径的帧数据中按照数据点密度或者其他筛选算法,筛选出一些数据去Gaussian做能量计算,想参考xyz2QC的写法或者在源码上加一些功能,不知道能不能实现

49

帖子

0

威望

320

eV
积分
369

Level 3 能力者

60#
发表于 Post on 2024-2-3 16:26:14 | 只看该作者 Only view this author
卡开发发 发表于 2024-2-3 15:44
不好说。一看记录何种数据和转换精度,例如有些按照晶胞参数(三个长度三个角度)有些则按照3x3的晶胞矢 ...

好的好的,非常感谢

3753

帖子

3

威望

1万

eV
积分
19672

Level 6 (一方通行)

围观吃瓜群众

59#
发表于 Post on 2024-2-3 15:44:01 | 只看该作者 Only view this author
0325-ddd 发表于 2024-2-3 15:15
您好!斗胆请教一下您,算无机物的时候,cif文件转换为mol再转化为gjf这样计算的结果比较准确嘛?

不好说。一看记录何种数据和转换精度,例如有些按照晶胞参数(三个长度三个角度)有些则按照3x3的晶胞矢量,但两者在转换时也可能导致一些微小差异,或是分数坐标到笛卡尔坐标转换也有类似问题,二是每个格式或者写入该格式的程序的数值精度如何。

事实上相关的格式转换有现成工具,并不需要先向mol格式转换,python生态下ase就能做的很好,但转换或输出精度是否能达到你想要的样子你可以自行验证。
日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。不做培*,不接代*,不接*发谢谢。

49

帖子

0

威望

320

eV
积分
369

Level 3 能力者

58#
发表于 Post on 2024-2-3 15:30:59 | 只看该作者 Only view this author
sobereva 发表于 2024-2-3 15:25
这种问题没意义,你只需要关注文件里记录了什么信息,如果记录的信息是等价的,并且程序在读取时都会读到 ...

好滴,谢谢老师(不太懂无机物,怕给老板搞错了

6万

帖子

99

威望

5万

eV
积分
120137

管理员

公社社长

57#
 楼主 Author| 发表于 Post on 2024-2-3 15:25:08 | 只看该作者 Only view this author
0325-ddd 发表于 2024-2-3 15:15
您好!斗胆请教一下您,算无机物的时候,cif文件转换为mol再转化为gjf这样计算的结果比较准确嘛?

这种问题没意义,你只需要关注文件里记录了什么信息,如果记录的信息是等价的,并且程序在读取时都会读到,显然跟格式没关系。转化成mol完全莫名其妙,本来mol格式也不是专门记录周期性体系用的
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

49

帖子

0

威望

320

eV
积分
369

Level 3 能力者

56#
发表于 Post on 2024-2-3 15:15:38 | 只看该作者 Only view this author
卡开发发 发表于 2019-5-13 14:06
这里以xtl为例子,因为同样能够被M$识别。python实现CP2K做cif或xtl格式转换的要点在于:
1、原子坐标由 ...

您好!斗胆请教一下您,算无机物的时候,cif文件转换为mol再转化为gjf这样计算的结果比较准确嘛?

6万

帖子

99

威望

5万

eV
积分
120137

管理员

公社社长

55#
 楼主 Author| 发表于 Post on 2023-11-25 01:13:18 | 只看该作者 Only view this author
WOOOOWOOOO 发表于 2023-11-24 10:05
那格式的关键点是什么呀?要整理成完全一致吗,空格之类的都要一致吗,从Gaussian计算后的输出文件里摘出 ...

谈谈记录化学体系结构的xyz文件
http://sobereva.com/477

坐标部分是自由格式
注释部分尽量按照molclus产生的xyz文件的格式写,否则不保证isostat能认出里面的能量等信息
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

1万

帖子

0

威望

8998

eV
积分
20753

Level 6 (一方通行)

54#
发表于 Post on 2023-11-24 19:29:46 | 只看该作者 Only view this author
WOOOOWOOOO 发表于 2023-11-24 03:05
那格式的关键点是什么呀?要整理成完全一致吗,空格之类的都要一致吗,从Gaussian计算后的输出文件里摘出 ...

xyz文件的空格数,不是xyz文件格式的一部分。所以但凡是一个写得足够好的程序,读xyz文件的时候都不会对xyz文件的空格数有要求。
如果是初学编程的人写的读xyz文件的程序,那另当别论
Zikuan Wang
山东大学光学高等研究中心 研究员
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员
Google Scholar: https://scholar.google.com/citations?hl=zh-CN&user=XW6C6eQAAAAJ&view_op=list_works&sortby=pubdate
ORCID: https://orcid.org/0000-0002-4540-8734
主页:http://www.qitcs.qd.sdu.edu.cn/info/1034/1702.htm
本团队长期招收研究生,有意者可私信联系

144

帖子

1

威望

1616

eV
积分
1780

Level 5 (御坂)

53#
发表于 Post on 2023-11-24 10:05:52 | 只看该作者 Only view this author
sobereva 发表于 2023-11-24 02:00
目前没办法直接弄

那格式的关键点是什么呀?要整理成完全一致吗,空格之类的都要一致吗,从Gaussian计算后的输出文件里摘出来的坐标和xyz文件坐标的空格这些都不一样。

6万

帖子

99

威望

5万

eV
积分
120137

管理员

公社社长

52#
 楼主 Author| 发表于 Post on 2023-11-24 02:00:44 | 只看该作者 Only view this author
WOOOOWOOOO 发表于 2023-11-23 22:41
请问我用xyz2QC生成的输入文件计算后,怎么弄一个能用isostat.exe处理的xyz文件?自己用手复制来复制去搞不 ...

目前没办法直接弄
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办极高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入北京科音微信公众号获取北京科音培训的最新消息,并避免错过网上有价值的计算化学文章!
欢迎加入人气极高、专业性特别强的理论与计算化学综合交流群思想家公社QQ群(群号见此链接),合计达一万多人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大、极为流行的量子化学波函数分析程序)
Google Scholar:https://scholar.google.com/citations?user=tiKE0qkAAAAJ
ResearchGate:https://www.researchgate.net/profile/Tian_Lu

144

帖子

1

威望

1616

eV
积分
1780

Level 5 (御坂)

51#
发表于 Post on 2023-11-23 22:41:03 | 只看该作者 Only view this author
请问我用xyz2QC生成的输入文件计算后,怎么弄一个能用isostat.exe处理的xyz文件?自己用手复制来复制去搞不好,而且我还是opt任务,能量和坐标不好找。。。。。

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

GMT+8, 2025-8-15 18:23 , Processed in 0.165751 second(s), 23 queries , Gzip On.

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