计算化学公社

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

[Multiwfn使用咨询] 如何通过python打开一个供multiwfn分析的高斯优化结果.out文件?

[复制链接 Copy URL]

23

帖子

0

威望

191

eV
积分
214

Level 3 能力者

如题

我现在的文件夹下有一系列.out文件需要分析。文件数量很大,需要自动化处理。每个文件分析指令完全相同。

我搜到了下方这个帖子:

python中如何调用Multiwfn程序
http://bbs.keinsci.com/forum.php ... 1&fromuid=58917
(出处: 计算化学公社)

同理,我使用如下代码尝试将文件名作为参数传给subprocess.run:
  1. import subprocess

  2. subprocess.run("D:/multiwfn/Multiwfn_3.8_dev_bin_Win64/Multiwfn.exe", input=str.encode("C:/Users/1a.log"))
复制代码

但是这个input参数并没有被multiwfn当作打开文件的路径。

请问有什么比较好的解决方案吗?

202405160935118772..png (58.34 KB, 下载次数 Times of downloads: 32)

202405160935118772..png

23

帖子

0

威望

191

eV
积分
214

Level 3 能力者

2#
 楼主 Author| 发表于 Post on 2024-5-16 10:20:17 | 只看该作者 Only view this author
自行解决了,以下是我的解决办法:


  1. import subprocess
  2. f = open("out.txt", "w")
  3. subprocess.run("multiwfn C:/data/final/AI/1a/1a.log", input=str.encode('12 \n 0 \n 10 \n 5\n \q'), stdout=f)
复制代码


popen现在已经被run替代,input参数提供multiwfn內部步骤选项,stdout参数提供输出文件路径,注意这里不能直接以string形式提供路径。

本版积分规则 Credits rule

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

GMT+8, 2025-8-13 22:26 , Processed in 0.148859 second(s), 23 queries , Gzip On.

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