计算化学公社

 找回密码 Forget password
 注册 Register

使用Multiwfn+ORCA自动批量计算静电势与偶极矩的脚本

查看数: 3676 | 评论数: 12 | 收藏 Add to favorites 11
关灯 | 提示:支持键盘翻页<-左 右->
    组图打开中,请稍候......
发布时间: 2025-5-7 03:23

正文摘要:

本帖最后由 Stardust0831 于 2025-5-9 20:08 编辑 静电势(ESP)和偶极矩作为非常常用的数据,批量计算的需求很旺盛。 其中,静电势对于考察分子间静电相互作用、预测反应位点、预测分子性质等方面有重要意义, ...

回复 Reply

CM234 发表于 Post on yesterday 17:32
本帖最后由 CM234 于 2026-1-23 18:22 编辑

请问我将vmd,orca和Multiwfn都加入系统变量,也修改了ESP_orca.sh文件中的路径,运行后出现如下报错,请问要怎么排除呢?附上我的输入文件

屏幕截图 2026-01-23 182004.png (365.37 KB, 下载次数 Times of downloads: 1)

屏幕截图 2026-01-23 182004.png

Achun-B-Al.gjf

6.2 KB, 下载次数 Times of downloads: 0

wwwwwt 发表于 Post on 2025-8-15 08:39:00
Stardust0831 发表于 2025-8-14 21:29
g16用不了GFN2-xTB这种半经验级别,所以我自己的工作流不会用g16。
简单给你讲一下怎么批量运行:
(假 ...

感谢感谢!
wwwwwt 发表于 Post on 2025-8-15 08:38:51
Stardust0831 发表于 2025-8-14 21:07
gjf是gaussian的格式,我会用gjf当输入是因为我建模的主力软件是gview。
你文件里写的事实上是orca的格 ...

感谢回复!
Stardust0831 发表于 Post on 2025-8-14 21:29:28
本帖最后由 Stardust0831 于 2025-9-24 13:53 编辑
wwwwwt 发表于 2025-8-13 11:08
请问有针对Gaussian16 Linux版本的批量计算静电势脚本吗?

g16用不了GFN2-xTB这种半经验级别,所以我自己的工作流不会用g16。
简单给你讲一下怎么批量运行:
(假设gaussian已经被正确安装,在环境变量里了)
1.批量执行gjf文件
  1. for inf in *.gjf
  2. do
  3. echo Running ${inf} ...
  4. g16 < ${inf} > ${inf//gjf/out}
  5. done
复制代码
这5行单独当一个sh脚本,可以执行当前目录下所有以.gjf结尾的文件。

2.批量生成波函数文件:
  1. for inf in *.chk
  2. do
  3. formchk ${inf}
  4. done
复制代码
3.生成用于绘图的格点文件:
  1. for inf in *.fchk
  2. do
  3. echo Export cub file from ${inf} ...
  4. Multiwfn.exe $inf << EOF > log.txt
  5. 5
  6. 1
  7. 3
  8. 2
  9. 0
  10. 5
  11. 12
  12. 1
  13. 2
  14. 0
  15. r
  16. totesp.cub
  17. 13
  18. 11
  19. 5
  20. 627.5095
  21. 0
  22. totesp.cub
  23. -1
  24. q
  25. EOF
  26. mv -f density.cub ${inf//.fchk/_density.cub}
  27. mv -f totesp.cub ${inf//.fchk/_ESP.cub}
  28. echo
  29. done
复制代码
4.绘制esp,此时基本上类似《使用Multiwfn+VMD快速地绘制静电势着色的分子范德华表面图和分子间穿透图(含视频)》里的流程,只是.vmd文件要换成这个:
ESP_stardust0831.vmd (2.53 KB, 下载次数 Times of downloads: 3)
和原版的差异是cub文件命名是按“分子名_ESP.cub”这种格式的,可以直接看cub认出是哪个分子,并且有我在二楼提到的一些自定义函数,比如“xr 文件名”直接按特定文件名导出并渲染图片等。


Stardust0831 发表于 Post on 2025-8-14 21:07:49
本帖最后由 Stardust0831 于 2025-8-14 21:11 编辑
wwwwwt 发表于 2025-8-14 09:47
楼主你好,我在运行esp_sh时,一直出现输入文件无效的错误,附件是我的输入文件,请问是哪里出错了么?

gjf是gaussian的格式,我会用gjf当输入是因为我建模的主力软件是gview。
你文件里写的事实上是orca的格式和关键词(并且关键词是过时的),这显然和gjf这个后缀不符,multiwfn当gaussian输入文件来读取自然认不出来。
把脚本里的
  1. File_extension="gjf"
复制代码
改成
  1. File_extension="in"
复制代码
并且把这个orca格式的文件的后缀改成.in,这样multiwfn就可以读取了。
wwwwwt 发表于 Post on 2025-8-14 09:47:05
楼主你好,我在运行esp_sh时,一直出现输入文件无效的错误,附件是我的输入文件,请问是哪里出错了么?

test.gjf

274 Bytes, 下载次数 Times of downloads: 6

wwwwwt 发表于 Post on 2025-8-14 09:43:38
wal 发表于 2025-8-13 14:59
显示在哪个原子/基团上有点难吧。顶多告诉你index是多少,具体属于哪个原子/基团得自己判断

感谢
wal 发表于 Post on 2025-8-13 14:59:54
wwwwwt 发表于 2025-8-13 14:31
请问显示静电势极大值和极小值时,是否能显示其极大极小值在哪个原子或基团上么?

显示在哪个原子/基团上有点难吧。顶多告诉你index是多少,具体属于哪个原子/基团得自己判断
wwwwwt 发表于 Post on 2025-8-13 14:31:29
请问显示静电势极大值和极小值时,是否能显示其极大极小值在哪个原子或基团上么?
wwwwwt 发表于 Post on 2025-8-13 11:08:55
请问有针对Gaussian16 Linux版本的批量计算静电势脚本吗?
KuangL 发表于 Post on 2025-5-10 14:59:20
成功复现!
总的来说配置环境的时间并不长,跟着教程一步一步来一会儿就完成了
确实是一个很方便省事的小脚本,大大简化了绘制ESP的难度
期待下一次更新!

1.jpg (633.8 KB, 下载次数 Times of downloads: 60)

1.jpg

评分 Rate

参与人数
Participants 1
eV +5 收起 理由
Reason
Stardust0831 + 5 谢谢

查看全部评分 View all ratings

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

GMT+8, 2026-1-24 08:13 , Processed in 0.200385 second(s), 31 queries , Gzip On.

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