计算化学公社

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

[Gaussian/gview] 求助如何使用脚本分析高斯log文件中坐标信息

[复制链接 Copy URL]

51

帖子

0

威望

240

eV
积分
291

Level 3 能力者

跳转到指定楼层 Go to specific reply
楼主
我最近需要使用python提取高斯优化任务的坐标文件用于后续分析,但遇到一个问题:如何从优化得到的许多帧坐标文件中,选择并提取出优化结束的最后一帧,并保存对应的坐标和能量?望赐教。

1万

帖子

0

威望

7402

eV
积分
18171

Level 6 (一方通行)

2#
发表于 Post on 2021-11-5 19:01:58 | 只看该作者 Only view this author
最简单的方法是,把每一帧都读进来,然后只保留最后一帧。
你只要会读取一帧,就应该知道怎么读取所有帧,然后扔掉前N-1帧就行了
BDF(https://bdf-manual.readthedocs.io/zh_CN/latest/Introduction.html)、ORCA(https://orcaforum.kofo.mpg.de/index.php)开发团队成员

3814

帖子

4

威望

8002

eV
积分
11896

Level 6 (一方通行)

MOKIT开发者

3#
发表于 Post on 2021-11-5 19:16:07 | 只看该作者 Only view this author
打开文件倒着读(或读取位置移到文件末尾),检测这样遇到的第一帧结构,然后顺着读取natom行 即可获得想要的坐标。能量同理。
自动做多参考态计算的程序MOKIT

51

帖子

0

威望

240

eV
积分
291

Level 3 能力者

4#
 楼主 Author| 发表于 Post on 2021-11-5 19:28:16 | 只看该作者 Only view this author
zjxitcc 发表于 2021-11-5 19:16
打开文件倒着读(或读取位置移到文件末尾),检测这样遇到的第一帧结构,然后顺着读取natom行 即可获得想要 ...

感觉不是很理解,倒着读到结构之后怎么再找到natom处顺着读呢?有没有相似的例子可以参考,不胜感激

3814

帖子

4

威望

8002

eV
积分
11896

Level 6 (一方通行)

MOKIT开发者

5#
发表于 Post on 2021-11-5 19:33:24 | 只看该作者 Only view this author
本帖最后由 zjxitcc 于 2021-11-5 19:37 编辑
zhangzh 发表于 2021-11-5 19:28
感觉不是很理解,倒着读到结构之后怎么再找到natom处顺着读呢?有没有相似的例子可以参考,不胜感激

我不知道你打算用什么编程语言写这个,反正Fortran是很简单的
  1. program main
  2. implicit none
  3. integer :: fid
  4. character(len=240) :: buf

  5. open(newunit=fid,file='xxx.log',status='old',position='append') !打开时处于文件尾
  6. do while(.true.)
  7.   BACKSPACE(fid)
  8.   BACKSPACE(fid)
  9.   read(fid,'(A)') buf
  10.   if(buf(起始:终止) == '关键词') exit
  11. end do

  12. do i = 1, natom, 1
  13.   !读取第i个原子坐标
  14. end do

  15. close(fid)
  16. stop
  17. end program main
复制代码

自动做多参考态计算的程序MOKIT

1187

帖子

5

威望

2841

eV
积分
4129

Level 6 (一方通行)

6#
发表于 Post on 2021-11-5 19:54:15 | 只看该作者 Only view this author
别的大多数语言没有backspace这个函数/子程序,上面的方法不太好实现。你就可以一直读,如果读到一个新的就更新一下,这样保留的就是最后一个。如果想省前面几次读坐标的时间(其实没有意义),别的主流语言比如C/C++/Python都有获得当前文件位置的函数,以及跳转到文件某个位置的函数(C的ftell和fseek,Python的tell和seek)。你搜natoms=,搜到一次就更新一次这个关键词的位置,直到读到文件尾,再跳回最后一次的位置,接着读坐标。

51

帖子

0

威望

240

eV
积分
291

Level 3 能力者

7#
 楼主 Author| 发表于 Post on 2021-11-5 20:04:00 | 只看该作者 Only view this author
snljty 发表于 2021-11-5 19:54
别的大多数语言没有backspace这个函数/子程序,上面的方法不太好实现。你就可以一直读,如果读到一个新的就 ...

非常感谢,我去试一下

49

帖子

0

威望

476

eV
积分
525

Level 4 (黑子)

8#
发表于 Post on 2021-11-6 16:09:28 | 只看该作者 Only view this author
可以安装这个软件,命令行输入makexyz  xxxx.log     坐标即可输出到屏幕上。也可以重定向到一个文本里

makexyz软件地址,用于linux

5万

帖子

99

威望

5万

eV
积分
112492

管理员

公社社长

9#
发表于 Post on 2021-11-6 18:10:50 | 只看该作者 Only view this author
可以借用Multiwfn

Multiwfn打开Gaussian的out文件后,直接会载入里面最后一帧结构,之后用主功能100的子功能2可以导出各种常见格式,包括形式很简单的xyz格式,再从里面读取即可。在Python脚本里调用Multiwfn做这种处理很容易
详谈Multiwfn的命令行方式运行和批量运行的方法
http://sobereva.com/612http://bbs.keinsci.com/thread-24929-1-1.html
北京科音自然科学研究中心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!

49

帖子

0

威望

994

eV
积分
1043

Level 4 (黑子)

10#
发表于 Post on 2022-12-14 23:07:04 | 只看该作者 Only view this author
wzkchem5 发表于 2021-11-5 19:01
最简单的方法是,把每一帧都读进来,然后只保留最后一帧。
你只要会读取一帧,就应该知道怎么读取所有帧, ...

想问下老师最后一帧做坐标在哪读呀,我发现out文件最后有话的坐标和用gaussview转出来的不一样。
想写个bash script 把out转化成gjf文件,卢老师的脚本没把 转化成我自己想要的模板,想自己写,但是不太清楚抓取out文件坐标的逻辑。

62

帖子

0

威望

511

eV
积分
573

Level 4 (黑子)

11#
发表于 Post on 2023-7-10 18:40:10 | 只看该作者 Only view this author
红米饭1234 发表于 2021-11-6 16:09
可以安装这个软件,命令行输入makexyz  xxxx.log     坐标即可输出到屏幕上。也可以重定向到一个文本里

...

可以重新发一下这个软件的网址吗?我打不开这个链接

本版积分规则 Credits rule

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

GMT+8, 2024-11-27 03:49 , Processed in 0.183558 second(s), 21 queries , Gzip On.

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