计算化学公社

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

[CP2K] [脚本] 用Multiwfn批量将结构优化结果生成cp2k输入文件

[复制链接 Copy URL]

31

帖子

0

威望

138

eV
积分
169

Level 3 能力者

跳转到指定楼层 Go to specific reply
楼主
本帖最后由 stishovite 于 2024-5-14 17:16 编辑

用cp2k优化完结构后,输出了很多*.pdb文件。进行后面的计算,需要用Multiwfn打开*.pdb重新生成cp2k输入文件,如果手动操作,十分麻烦。
受到sob老师详谈Multiwfn的命令行方式运行和批量运行的方法 - 思想家公社的门口:量子化学·分子模拟·二次元 (sobereva.com),以及坛友相关帖子的启发,编了一个脚本用于解决上面的问题。

脚本内容如下:

  1. @echo off

  2. for %%i in (*.pdb) do (
  3.     D:\Multiwfn\Multiwfn.exe %%i < pdb2inp.txt
  4. )

  5. if not exist ".\task" mkdir ".\task"

  6. for %%f in (*.inp) do (
  7.     move %%f ".\task\" > nul
  8. )

  9. set "inplist=.\task\inplist.sh"
  10. if exist "%inplist%" del "%inplist%"

  11. for %%f in (.\task\*.inp) do (
  12.     echo mpirun -np 4 cp2k.popt %%~nxf ^|tee %%~nf.out >> "%inplist%"
  13. )

  14. echo All done!
复制代码




指令文件pdb2inp.txt的内容如下:

  1. 100 // Other functions (Part 1)
  2. 2 // Export input file
  3. 25 // CP2k

  4. -1 // Choose task
  5. 1 // Energy
  6. 0 // Gernerate
  7. 0 // Return
  8. q //quit
复制代码



该脚本仅适用于Windows,说明:

1. 要和*.pdb文件放在同一个目录下,运行时自动调用Multiwfn.exe,因此需要将D:\Multiwfn\Multiwfn.exe修改为实际地址。
2. Multiwfn的操作指令在pdb2inp.txt内,可以根据实际需求修改。
3. 自动将*.pdb转换完的*.inp文件存入task文件夹,并生inplist.sh用于批量提交任务.
4. 使用时,可根据实际需求修改脚本中的内容,例如要转换的文件格式(*.pdb)、Multiwfn的操作指令(pdb2inp.txt)、存放inp文件的目录名称(task)和批量提交任务文件的内容(mpirun -np 4)。


p.s. 本人刚开始学习第一性原理计算,有很多不懂,头很大,欢迎大家留言讨论。



pdb2inp.bat (379 Bytes, 下载次数 Times of downloads: 4) pdb2inp.txt (140 Bytes, 下载次数 Times of downloads: 5)



评分 Rate

参与人数
Participants 3
eV +11 收起 理由
Reason
sim + 3 好物!
shinkon + 3 GJ!
sobereva + 5

查看全部评分 View all ratings

31

帖子

0

威望

138

eV
积分
169

Level 3 能力者

3#
 楼主 Author| 发表于 Post on 2024-5-14 18:09:20 | 只看该作者 Only view this author
sobereva 发表于 2024-5-14 18:00
传入Multiwfn的命令实际上还可以简化

以下部分可以改为直接在主界面输入cp2k

感谢sob老师的回复,近距离感受到了您对高效简洁的极致追求。p.s. 后面部分没有省略的原因是,如果要选择其他任务,可以便于对照修改。

5万

帖子

99

威望

5万

eV
积分
112356

管理员

公社社长

2#
发表于 Post on 2024-5-14 18:00:35 | 只看该作者 Only view this author
传入Multiwfn的命令实际上还可以简化

以下部分可以改为直接在主界面输入cp2k
100 // Other functions (Part 1)
2 // Export input file
25 // CP2k

以下部分可以省略,默认就是算单点任务
-1 // Choose task
1 // Energy
北京科音自然科学研究中心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!

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

GMT+8, 2024-11-24 16:00 , Processed in 0.196149 second(s), 26 queries , Gzip On.

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