计算化学公社

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

[Quantum ESPRESSO] QE的一个小辅助工具包QEtoolkit

[复制链接 Copy URL]

432

帖子

11

威望

3422

eV
积分
4074

Level 6 (一方通行)

本帖最后由 丁越 于 2022-4-28 17:33 编辑

QE的一个小辅助工具包QEtoolkit

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
[2022-Apr-28]: 1.更新了(vc)vcrelax的输出文件都能向.cif、.gjf、.xyz格式的转换 (即结构优化输出文件向这些格式转化也支持了)。
                      2. 添加了(vc)relax输出文件产生nscf计算输入文件的功能
修复了vcrelax转nscf文件时晶胞信息没有更新的bug
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
一、前言
   QE已经学习了有一小段时间了,就目前我个人的使用感受来说,QE在一些电子结构分析方面能给CP2K很大的补充,比如可以结合Lobster做COOP、COHP分析,通过DFPT方法计算U、杂化泛函计算能带等等,这些方面CP2K目前还是不能胜任的。缺点来说首当其冲的就是速度,比起CP2K简直慢的不要不要的。。。言归正传,这两天我总结了一下使用QE过程中一些需要程序化的东西,顺便把它整合成了一个小工具包方便使用,包括生成输入文件、输入/出文件向其他格式转化,如.cif,.gjf,.xyz。原子固定、能量收敛监控、k点收敛性测试、动能截断能和电子密度截断能测试。目前为止就添加了这么些功能,其他的我以后想到了再慢慢加入。

二、脚本使用
  使用脚本请检查一下用户是否可以调用Multiwfn和gnuplot,否则有些功能是不支持的。
  该脚本支持交互式执行和程序界面输入文件名两种形式,交互式执行时输入如"./QEtoolkit.sh xxx.scf.in"。直接执行 ./QEtoolkit 时界面如下所示,并且提示输入相应文件名:
  1. >----------------------------------------------------------------------------------<
  2. >-                                                                                -<
  3. >-                                 QEtoolkit                                      -<
  4. >-                                                                                -<
  5. >-                              Author: Yue Ding                                  -<
  6. >-                                                                                -<
  7. >-                              Version 1.0 (dev)                                 -<
  8. >-                                                                                -<
  9. >----------------------------------------------------------------------------------<

  10. Note: Below functions are only suit for ibrav=0 combined with angstrom unit

  11.                                 ******Main Function Menu******

  12.   0. Generate pw.x input file throuth Multiwfn (.cif, .gjf, etc that supported by Multiwfn)
  13.   1. Output vcrelax structure to .gjf format
  14.   2. Output vcrelax structure to .cif format
  15.   3. Output relaxed structure to .xyz format (both relax and vcrelax)
  16.   4. Convert pw.x input file to .xyz format
  17.   5. Convert pw.x input file to .cif format
  18.   6. Convert pw.x input file to .gjf format
  19.   7. Fix atoms for slab model
  20.   8. Monitor energy convergence in SCF, relax, and vcrelax
  21.   9. Convergence test for ecutwfc and ecutrho
  22. 10. Convergence test for kpoint

  23.   Input the file name, for example Ni.vcrelax.out

复制代码
  非常重要的一点是该脚本只支持ibrav=0 ,并且以angstrom为单位的笛卡尔坐标形式,因为这种形式的坐标在使用上来说是最直观形象的。但是让我非常不理解的是QE为什么会有alat这种格式,拗口之余还非常晦涩。  下面就简单说说这些功能:


*  0号功能是调用Multiwfn生成一个单点文件(xxx.scf.in),这里只要Multiwfn支持的含晶胞信息的结构文件都能产生QE的输入文件,然后用pwgui做进一步修改即可。


*  1、2号功能则是将晶胞优化产生的输出文件转化为.gjf、.cif格式。我们做表面计算的一般流程是优化晶胞 -> 切面 -> 优化slab -> 吸附分子再优化,但是QE的可视化程序比如xcrysden不支持产生cif和gjf文件,导致我们做完晶胞优化完才发现,咦,我还需要切面啊,但是貌似没有程序直接支持pw.x输出文件向cif等格式转化啊。。。唯一办法就是利用xcrysden转化为.xsf格式,然后再用VESTA转成.cif 。

*  3号功能则是直接将结构优化和晶胞优化的输出文件转化为.xyz格式。

* 4、5、6号功能就正好反过来,把pw.x的输入文件再转化为.cif、.gjf、.xyz格式
  
* 7号功能之前我已经写过了,正好这次把它整合过来


* 8号功能是监测单点、结构优化、晶胞优化过程中的能量收敛情况。脚本中会自动根据输出文件的输出情况做判断,假如输入文件是一个单点文件,那么gnuplot绘图的横坐标含义是每个electronic step 的能量相对第一个电子步能量变化;假如输入文件是一个结构优化输出文件,当第一个离子步没完成或者刚完成时,输出的横坐标含义还是和单点输出一致。只有当完成两个离子步及以上时,横坐标的含义是每个离子步相对于第一个离子步的能量变化。如下是一个Ni的晶胞优化的输出文件。注意纵坐标单位是eV而不是Ry,第7个ionic step是QE做完晶胞优化后会再做一个单点的能量,这是体系最终的能量。


  * 9号功能是对动能截断能、电子密度截断能做收敛性测试。输入格式请务必按照 e.g.提示的形式来,否则会有问题。对于PAW赝势,经验法则是电子密度截断能要为动能截断能的4倍;超软赝势则取动能截断能的8~12倍。输入动能截断能的形式如屏幕提示所示:截断能的起始值,扫描步长,截断能的终止值。比如输入30 5 40,则被扫描的动能截断能有“30,35,40”这三个值。注意这里的dual值,根据屏幕提示,这里不是要你输入电子密度截断能的值,而是输入一个倍数值,电子密度截断能=动能截断能*dual,因此按照刚才说的经验法则合理选取倍数。还有一点是假如你输入了多个dual,比如“4 8”,如果上步输入的动能截断能是 “30 5 40”,那么在30的动能截断能下,就会产生电子密度截断分别为“120 和240”的两个输入文件;同理对于动能截断能为35和40,因此总共的输入文件数量将是3*2=6个,被保存在了在当前目录下名为scan_ecut的目录中,产生的输入文件形式是{prefix}_{ecutwfc}_{ecutrho}.scf.in。此外,在scan_ecut的目录下,同样产生了用于pbs队列批量计算的脚本和gnuplot绘图脚本,对于不使用队列的用户来说,把sub_qe.sh脚本中做循环的那部分代码拿出来,然后自己建一个名为sub_qe.sh的可执行文件去批量计算即可。计算完成后,直接gnuplot scan_ecut.gp就可以绘制结果了。

* 10号功能是对于k点做收敛性测试,注意输入格式一定要写为1 1 1,2 3 4,3 3 3等此类样式。这个功能设计时就没有设计为像动能截断能扫描那种样式,那样运行反倒是不灵活的,比如第三个方向的k点每次扫描只取1。同9号功能,批量提交任务的脚本和gnuplot脚本也被输出到了scan_kp的目录下。产生的输入文件的命名形式是{prefix}_{kpoint}.scf.in。下面展示的是一个k点收敛性测试的结果:
  


  以上就是目前为止添加的功能,欢迎大家的建议和意见!














QEtoolkit.sh

12.12 KB, 下载次数 Times of downloads: 87

V1.0

QEtoolkit.sh

15.45 KB, 下载次数 Times of downloads: 141

V1.1

评分 Rate

参与人数
Participants 14
威望 +1 eV +51 收起 理由
Reason
bushiyueliang + 1 谢谢
kkxcxx + 1 好物!
snljty2 + 5 好物!
zjh1999 + 5 好物!
PoorChaos + 2 精品内容
obaica + 2
djjj148 + 5 赞!
biogon + 5 GJ!
ChemG + 5 牛!
ggdh + 5 对标vaspkit的多功能软件么
bblovelp + 5 赞!
hdhxx123 + 5 好物!
sobereva + 1
卡开发发 + 5 精品内容

查看全部评分 View all ratings

自由发挥,野蛮生长

247

帖子

1

威望

2407

eV
积分
2674

Level 5 (御坂)

2#
发表于 Post on 2022-4-5 14:34:25 | 只看该作者 Only view this author
确实Lobster不支持CP2K,所以做COHP还得用QE之前都是自己复制以前的输入文件改着用
我唯一知道的就是我一无所知,但我是化学小迷弟

353

帖子

0

威望

2029

eV
积分
2382

Level 5 (御坂)

真 掘墓者

3#
发表于 Post on 2022-4-6 08:57:15 | 只看该作者 Only view this author
支持与不支持
圣诞刨坟忙

432

帖子

11

威望

3422

eV
积分
4074

Level 6 (一方通行)

4#
 楼主 Author| 发表于 Post on 2022-4-6 09:28:50 | 只看该作者 Only view this author

狗哥啥时候再更新一下QE的教程呀
自由发挥,野蛮生长

433

帖子

0

威望

2195

eV
积分
2628

Level 5 (御坂)

娃娃儿鱼

5#
发表于 Post on 2022-4-6 10:23:03 | 只看该作者 Only view this author

QE教程或成最大输家 狗哥快更新教程
真·探

135

帖子

0

威望

1549

eV
积分
1684

Level 5 (御坂)

6#
发表于 Post on 2022-4-6 13:43:44 | 只看该作者 Only view this author
支持支持,在生成输入文件这一块Burai就很不错,可以模仿下,输出文件转格式及处理方面,ase gui就非常方便。。。8910功能比较实用。
8号自己写个脚本容易实现,9,10号功能官方是推荐用pwtk来做,不过学习需要一些成本。
祝越做越好

5万

帖子

99

威望

5万

eV
积分
112356

管理员

公社社长

7#
发表于 Post on 2022-4-12 02:18:59 | 只看该作者 Only view this author
ChemG 发表于 2022-4-5 14:34
确实Lobster不支持CP2K,所以做COHP还得用QE之前都是自己复制以前的输入文件改着用

我还有念头以后让Multiwfn支持CP2K做COHP

评分 Rate

参与人数
Participants 1
eV +2 收起 理由
Reason
丁越 + 2 期待社长开发

查看全部评分 View all ratings

北京科音自然科学研究中心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!

247

帖子

1

威望

2407

eV
积分
2674

Level 5 (御坂)

8#
发表于 Post on 2022-4-12 11:49:22 | 只看该作者 Only view this author
sobereva 发表于 2022-4-12 02:18
我还有念头以后让Multiwfn支持CP2K做COHP

那就太完美了,如果是大体系的话QE哪怕是做单点也很费劲儿,期待社长开发更多的cp2k后处理方法
我唯一知道的就是我一无所知,但我是化学小迷弟

432

帖子

11

威望

3422

eV
积分
4074

Level 6 (一方通行)

9#
 楼主 Author| 发表于 Post on 2022-4-28 10:23:29 | 只看该作者 Only view this author
更新了version-1.1
自由发挥,野蛮生长

44

帖子

0

威望

3842

eV
积分
3886

Level 5 (御坂)

10#
发表于 Post on 2022-4-28 11:22:11 | 只看该作者 Only view this author
http://www.densityflow.com/about/
这里也有个同名软件,感觉工具类的软件还挺多的

432

帖子

11

威望

3422

eV
积分
4074

Level 6 (一方通行)

11#
 楼主 Author| 发表于 Post on 2022-4-28 12:26:53 | 只看该作者 Only view this author
泡泡媛 发表于 2022-4-28 11:22
http://www.densityflow.com/about/
这里也有个同名软件,感觉工具类的软件还挺多的

出发点不一样,我写这个就是为了方便输出文件的转换,手动搞很麻烦的
自由发挥,野蛮生长

55

帖子

0

威望

2359

eV
积分
2414

Level 5 (御坂)

12#
发表于 Post on 2022-9-14 11:11:10 | 只看该作者 Only view this author
丁老师您好!我运行之后出现了如下问题:

./QEtoolkit-2.sh: line 1667: syntax error near unexpected token `newline'
./QEtoolkit-2.sh: line 1667: `done'


咋整?求助!

432

帖子

11

威望

3422

eV
积分
4074

Level 6 (一方通行)

13#
 楼主 Author| 发表于 Post on 2022-9-14 11:48:23 | 只看该作者 Only view this author
Quantum198907 发表于 2022-9-14 11:11
丁老师您好!我运行之后出现了如下问题:

./QEtoolkit-2.sh: line 1667: syntax error near unexpecte ...

用这个http://bbs.keinsci.com/thread-31439-1-1.html
自由发挥,野蛮生长

55

帖子

0

威望

2359

eV
积分
2414

Level 5 (御坂)

14#
发表于 Post on 2022-9-14 15:11:58 | 只看该作者 Only view this author
丁越 发表于 2022-9-14 11:48
用这个http://bbs.keinsci.com/thread-31439-1-1.html

丁老师,俺用的就是这个¥#%……¥%好迷&*&*&

432

帖子

11

威望

3422

eV
积分
4074

Level 6 (一方通行)

15#
 楼主 Author| 发表于 Post on 2022-9-14 21:14:59 | 只看该作者 Only view this author
Quantum198907 发表于 2022-9-14 15:11
丁老师,俺用的就是这个¥#%……¥%好迷&*&*&

你把输入文件,操作过程都描述一下,要不然没法知道报错原因
自由发挥,野蛮生长

本版积分规则 Credits rule

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

GMT+8, 2024-11-24 07:44 , Processed in 0.183628 second(s), 25 queries , Gzip On.

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