计算化学公社

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

[辅助/分析程序] 批量转换量子化学软件I/O文件以及提取输出信息的Shell脚本

  [复制链接 Copy URL]

1102

帖子

18

威望

6643

eV
积分
8105

Level 6 (一方通行)

計算化学の社畜

本帖最后由 冰释之川 于 2024-11-3 08:03 编辑

之前看到了社长写的一键把所有gjf文件转成xyz文件、把所有Gaussian输出文件转成gjf文件的脚本:
http://sobereva.com/530http://bbs.keinsci.com/thread-16161-1-1.html

于是乎本人心血来潮,基于Multiwfn编写了多种常用量子化学程序间I/O文件转换的脚本包
1 Convert [*.gjf/*.xyz/*.fchk/*.fch/*.out/*.log] files to [*.gjf/*.inp/*.mop/*.xyz] files by Multiwfn
2 Convert [*.fchk/*.fch] files to [*.mkl] files by Multiwfn
3 Interconvert between [*.fchk/*.fch] and [*.molden] files by Multiwfn
4 Interconvert between [*.fchk] and [*.chk] Gaussian checkpoint files by formchk/unfchk tool
5 Interconvert between [*.gbw] and [*.mkl] ORCA files by orca_2mkl tool
6 Convert [*.gbw] files to [*.molden] files by orca_2mkl tool

Conversion_Scripts.sh (17.08 KB, 下载次数 Times of downloads: 336)


另外附上提取ORCA和Gaussian输出文件信息,利用freqchk重新计算热力学量的提取脚本
1 Extract single point energy (SPE) of DFT and HF from Gaussian16 output files
2 Extract Zero-point energy (ZPE) and thermal correction to G, H and U (Gcorr, Hcorr, and Ucorr) from Gaussian16 output files
3 Extract TDDFT information from Gaussian16 output files
4 Extract SPE from ORCA-4.2.1 output files
5 Extract Zero-point energy (ZPE) and thermal correction to G, H and U (Gcorr, Hcorr, and Ucorr) from ORCA-4.2.1 output files [ updated on 2020.04.03 ]
6 Recalculate Gcorr and Hcorr by using freqchk tool and Gaussian16 [*.fchk] files
7 Detect the status of Gaussian optimization outputs (imaginary frequency, opt/SCF convergency, etc.)
8 Extract SPE from xtb-6.3(pre) output files  [ updated on 2020.04.07 ]
9 Calculate ZPE, Gcorr, Hcorr, and Ucorr by using Shermo 2.0 [ updated on 2020.05.12 ]

P.s. Shermo 2.0 下载地址为http://sobereva.com/soft/shermo/
在~/.bashrc中设置Shermo 2.0的环境变量:
  1. export Shermopath=/sob/Shermo_2.0
  2. export PATH=$PATH:/sob/Shermo_2.0
复制代码

Extraction_Scripts.sh (28.99 KB, 下载次数 Times of downloads: 229)

#PS 感谢Jingdan Chen同学对Extraction_Scripts.sh脚本进行修订,修订日志如下
  1. ```ORCA version 6.0.0

  2. Line 272-289, Function extr_thermal_orca_process
  3. 1. 如果ORCA的优化任务包含Calc_Hess或Recalc_Hess关键词,与Gaussian不同,在每次频率分析后ORCA都会以相同格式输出热力学量,因此原脚本会出现拉出不止一个数值的情况,导致拿到的数值异常且有报错信息(但程序会正常跑完)。修改:  awk 加入END机制,
  4. 2. 修改: printf 补充 \n换行

  5. Line 74-75
  6. 1. 修改: 补充mainchoice == 5 的分析结束后的信息输出
  7. ```
复制代码
Extraction_Scripts_rev.sh (29.15 KB, 下载次数 Times of downloads: 3) (Jingdan Chen修订版)



批量删除文件脚本 [ added on 2020.02.10 ]
Files_Cleaner.sh (2.72 KB, 下载次数 Times of downloads: 86)


批量为*.gjf/*.inp/*.xyz/*.mop生成PBS作业提交文件的脚本(请酌情修改PBS模板文件)[ updated on 2022.06.23 ]
PBS模板文件为:Gaussian.pbs, ORCA.pbs, MOPAC.pbs, xtb.pbs, xtb_md.pbs和xtb_md_temp_search.pbs
其中folder_qsub_all.sh为批量提交PBS任务的脚本
Scripts_PBS_Allocation.zip (18.74 KB, 下载次数 Times of downloads: 125)


具体使用方法:
(1) 把*.sh脚本放到工作目录下
(2) 用bash命令 运行之
(3) 脚本会深度遍历该目录下所有的子目录,并处理目标文件。

如果发现Bug,烦请邮箱联系本人











评分 Rate

参与人数
Participants 23
威望 +1 eV +104 收起 理由
Reason
pinpo + 5
dadaoqiuzhi + 2 好物!
Henge + 5 赞!
Chlorine@Chem + 5 谢谢
bannc + 5 谢谢
Y30181009 + 5 牛!
wangxc + 4 谢谢
北大-陶豫 + 5 牛!
hdhxx123 + 5 精品内容
Hanz + 5 GJ!
pika02 + 5 bbj大法好
snljty + 5 也是辛苦
小红豆 + 3
小苹果 + 5 牛!
ggdh + 5 GJ!
978142355 + 5 bb姐强悍
biogon + 5
tjuptz + 5 牛!
zsu007 + 5 好物!
Warm_Cloud + 5 bb姐强!

查看全部评分 View all ratings

Stand on the shoulders of giants

343

帖子

1

威望

6996

eV
积分
7359

Level 6 (一方通行)

2#
发表于 Post on 2020-2-6 08:25:14 | 只看该作者 Only view this author

1102

帖子

18

威望

6643

eV
积分
8105

Level 6 (一方通行)

計算化学の社畜

3#
 楼主 Author| 发表于 Post on 2020-2-7 10:27:03 | 只看该作者 Only view this author
Extract_Scripts.sh 已更新,增加了下述功能:
Detect the status of Gaussian optimization outputs (imaginary frequency, opt/SCF convergency, etc.)

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
Smes + 5 谢谢,太需要了

查看全部评分 View all ratings

Stand on the shoulders of giants

362

帖子

1

威望

4368

eV
积分
4750

Level 6 (一方通行)

4#
发表于 Post on 2020-2-7 11:55:02 | 只看该作者 Only view this author
冰冰姐好腻害!

903

帖子

37

威望

5324

eV
积分
6967

Level 6 (一方通行)

5#
发表于 Post on 2020-2-7 18:26:34 | 只看该作者 Only view this author
没有介绍用法啊,萌新一脸懵逼

1102

帖子

18

威望

6643

eV
积分
8105

Level 6 (一方通行)

計算化学の社畜

6#
 楼主 Author| 发表于 Post on 2020-2-7 19:00:32 | 只看该作者 Only view this author
ggdh 发表于 2020-2-7 18:26
没有介绍用法啊,萌新一脸懵逼

钟叔是大蟒+壳大神,瞟一眼代码就知道怎么用了
Stand on the shoulders of giants

39

帖子

0

威望

511

eV
积分
550

Level 4 (黑子)

7#
发表于 Post on 2020-2-8 15:48:24 | 只看该作者 Only view this author
非常好用,输出的坐标是小数点后6位,要是能完整取出小数点后10位就更好了,另外,输出的gjf文件怎么批量指定关键词或%部分,谢谢!

1102

帖子

18

威望

6643

eV
积分
8105

Level 6 (一方通行)

計算化学の社畜

8#
 楼主 Author| 发表于 Post on 2020-2-8 15:59:53 | 只看该作者 Only view this author
本帖最后由 冰释之川 于 2020-2-8 16:01 编辑
小苹果 发表于 2020-2-8 15:48
非常好用,输出的坐标是小数点后6位,要是能完整取出小数点后10位就更好了,另外,输出的gjf文件怎么批量指 ...

这是调用Multiwfn批量输出gjf的,要取10位小数得改Multiwfn了
关于输出的gjf如何批量改关键词,我这边提供一种方法,就是利用notepad++对要编辑的*.gjf批量打开,然后利用正则表达式查找功能进行对指定行的字符串替换(这里我对第4和第5行进行替换)。




Stand on the shoulders of giants

39

帖子

0

威望

511

eV
积分
550

Level 4 (黑子)

9#
发表于 Post on 2020-2-8 16:42:40 | 只看该作者 Only view this author
冰释之川 发表于 2020-2-8 15:59
这是调用Multiwfn批量输出gjf的,要取10位小数得改Multiwfn了
关于输出的gjf如何批量改关键词,我 ...

奥利给!我用Ultraedit也可以,省了不少功夫,非常感谢,元宵节平安快乐!

5万

帖子

99

威望

5万

eV
积分
112351

管理员

公社社长

10#
发表于 Post on 2020-2-10 07:10:56 | 只看该作者 Only view this author
小苹果 发表于 2020-2-8 15:48
非常好用,输出的坐标是小数点后6位,要是能完整取出小数点后10位就更好了,另外,输出的gjf文件怎么批量指 ...

Gaussian输出文件里给出的就是6位,输出10位没有意义
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

1102

帖子

18

威望

6643

eV
积分
8105

Level 6 (一方通行)

計算化学の社畜

11#
 楼主 Author| 发表于 Post on 2020-2-10 19:54:57 | 只看该作者 Only view this author
2020.2.10增加:
(1)批量删除文件脚本
(2)批量为*.gjf/*.inp/*.xyz/*.mop生成PBS作业提交文件的脚本(请酌情修改模板文件)
Stand on the shoulders of giants

39

帖子

0

威望

511

eV
积分
550

Level 4 (黑子)

12#
发表于 Post on 2020-2-11 01:31:20 | 只看该作者 Only view this author
sobereva 发表于 2020-2-10 07:10
Gaussian输出文件里给出的就是6位,输出10位没有意义

一般的计算可能不需要,但如果取优化后几何做单点能量计算时,6和10位有时的差别可能不能忽略,比如比较各垂直或绝热态的能量,一般从正常终结的结果文件最后的最后坐标取出。像下边这样
\0,1\C,-0.2053340042,0.0481801158,0.\H,0.3483874757
,-0.8860944766,0.\H,-1.2892620756,-0.0010504554,0.\C,0.4570426498,1.19
83902093,0.\H,1.5384022319,1.2780758788,0.\Cl,-0.3273554376,2.76350264
8,0.\\Version=ES64L-G09RevD.01\State=1-A'\HF=-538.1853943\

39

帖子

0

威望

511

eV
积分
550

Level 4 (黑子)

13#
发表于 Post on 2020-2-11 01:35:26 | 只看该作者 Only view this author
冰释之川 发表于 2020-2-10 19:54
2020.2.10增加:
(1)批量删除文件脚本
(2)批量为*.gjf/*.inp/*.xyz/*.mop生成PBS作业提交文件的脚本(请 ...

直接从Gaussian结果文件中批量提取TDDFT的S1态的能量和振子强度输出到txt或excel文件怎么写,在论坛中找了些,但还是没办法,对shell编程一无所知,可否请老师指点下,万分感谢。

5万

帖子

99

威望

5万

eV
积分
112351

管理员

公社社长

14#
发表于 Post on 2020-2-11 11:54:41 | 只看该作者 Only view this author
小苹果 发表于 2020-2-11 01:31
一般的计算可能不需要,但如果取优化后几何做单点能量计算时,6和10位有时的差别可能不能忽略,比如比较 ...

6和10位的差异可以充分忽略,凭我的经验小数点第七位之后的差异绝对不可能造成在电子态能量横向比较问题上产生有对研究实际问题可察觉的差异,几何优化verytight收敛限的最大位移阈值都有0.000006 Bohr。
没必要从末尾读取,非常麻烦。倘若出于特殊目的真需要更高精度的坐标,还不如从fch里读,把fch作为Multiwfn输入文件即可。
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

5万

帖子

99

威望

5万

eV
积分
112351

管理员

公社社长

15#
发表于 Post on 2020-2-11 12:05:39 | 只看该作者 Only view this author
小苹果 发表于 2020-2-11 01:35
直接从Gaussian结果文件中批量提取TDDFT的S1态的能量和振子强度输出到txt或excel文件怎么写,在论坛中找 ...

稍微google一下grep和awk的使用立马明白
北京科音自然科学研究中心http://www.keinsci.com)致力于计算化学的发展和传播,长期开办高质量的各种计算化学类培训:初级量子化学培训班中级量子化学培训班高级量子化学培训班量子化学波函数分析与Multiwfn程序培训班分子动力学与GROMACS培训班CP2K第一性原理计算培训班,内容介绍以及往届资料购买请点击相应链接查看。这些培训是计算化学从零快速入门以及进一步全面系统性提升研究水平的高速路!培训各种常见问题见《北京科音办的培训班FAQ》
欢迎加入“北京科音”微信公众号获取北京科音培训的最新消息、避免错过网上有价值的计算化学文章!
欢迎加入人气非常高、专业性特别强的综合性理论与计算化学交流QQ群“思想家公社QQ群”:1号:18616395,2号:466017436,3号:764390338,搜索群号能搜到哪个说明目前哪个能加,合计9000人。北京科音培训班的学员在群中可申请VIP头衔,提问将得到群主Sobereva的最优先解答。
思想家公社的门口Blog:http://sobereva.com(发布大量原创计算化学相关博文)
Multiwfn主页:http://sobereva.com/multiwfn(十分强大的量子化学波函数分析程序)
ResearchGate:https://www.researchgate.net/profile/Tian_Lu
Money and papers are rubbish, get a real life!

本版积分规则 Credits rule

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

GMT+8, 2024-11-23 09:51 , Processed in 0.226841 second(s), 27 queries , Gzip On.

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