Views: 62035|回复 Reply: 20
[VASP]
VASP计算过渡态常见问题总结(待更新)
[复制链接 Copy URL]
啦啦黑还黑
啦啦黑还黑
当前离线
UID3295
在线时间255 小时
注册时间2016-6-4
最后登录2025-8-27
好友58
119
帖子2
威望2196
eV
Level 5 (御坂), 积分 credits 2355, 距离下一级还需 1645 积分 credits
积分2355
Level 5 (御坂)
发消息 Send PM
电梯直达 Go to
楼主
发表于 Post on 2019-5-1 00:32:22
|
只看该作者 Only view this author
|倒序浏览 Reverse view
|阅读模式 Reading model
本帖最后由 啦啦黑还黑 于 2019-5-1 00:55 编辑
本文由作者转自http://blog.wangruixing.cn/2019/05/01/transitionstate/,权归作者Jin-Cheng Liu所有,文章从未向任何其他个人或组织授权转载过,严禁任何人以任何形式转载文章内容(但非常欢迎转发文章链接)!
问题一:CI-NEB计算得到的中间有点的能量比初态和末态都要低。
解:这时候有两种可能,一是在初态和末态之间还存在至少一个极小点;二是,初态和末态本就不是极小点,需要用更严格的精度重新继续计算初态和末态。
问题二:CI-NEB计算开始出现极大的原子受力,比如10 eV/Angstrom 以上
解:这个原因肯定是差点的初始结构不合理,办法用idpp方法,许楠博士提供了idpp.py脚本使用pymatgen实现了这个功能,需要调用pymatgen和pymatgen_diffusion
from pymatgen.core import Structurefrom pymatgen_diffusion.neb.pathfinder import IDPPSolverimport numpy as npimport osimport sys
sys.stdout = open(os.devnull, 'w')
if len(sys.argv) <4: raise SystemError('Sytax Error! Run as python idpp ini/POSCAR fin/POSCAR 4')
init_struct = Structure.from_file(sys.argv[1], False)final_struct = Structure.from_file(sys.argv[2], False)
obj = IDPPSolver.from_endpoints(endpoints=[init_struct, final_struct], nimages=int(sys.argv[3]), sort_tol=1.0)new_path = obj.run(maxiter=5000, tol=1e-5, gtol=1e-3,step_size=0.05,\ max_disp=0.05, spring_const=5.0)
for i in range(len(new_path)): image_file='{0:02d}'.format(i) if not os.path.exists(image_file): os.makedirs(image_file) POSCAR_file=image_file+'/POSCAR' new_path.to(fmt="poscar", filename=POSCAR_file)
sys.stdout = sys.__stdout__#Image Dependent Pair Potential for improved interpolation of NEB initial guess#Reference: S. Smidstrup, A. Pedersen, K. Stokbro and H. Jonsson, Improved initial guess for minimum energy path calculations, J. Chem. Phys. 140, 214106 (2014).print("Improved interpolation of NEB initial guess has been generated. BYE.")
用法:python3 ./idpp.py ini/POSCAR fin/POSCAR 4或者把不合理的POSCAR下载下来,人工调整这些不合理结构。
问题三:DIMER计算一直不收敛,过程中NEWMODECAR的振动模已经完全偏离了我们预想的方式。
解:是否出现这种问题可以运行dimmode.pl脚本,把生成的dimmode.xyz放到Jmol里看轨迹,振动方向是不是已经完全偏离我们设想的过渡态。这时候有可能是力的计算精度不好和初始结构不可理造成的,解决方法有几种,比如可以先固定住其他和反应不相干的原子找过渡态,然后在此基础上再正常固定原子算。
问题四:已经接近收敛,但是很久受力不能达到收敛标准EDIFFG。
解:一可能是力的精度不够,用PREC=accurate,EDIFF=1E-7,二可能是过渡态的优化算法不合适,尝试IOPT=1或2或7,或者IOPT=0,用vasp自带的DIIS优化。三可能是力的收敛标准过于严格,EDIFFG = -0.02或-0.03对于过渡态来说就可以了。最有效的解决方案是使用我在 解决VASP计算不收敛的方法总结博文中提供的粗收敛+精收敛方案。
问题五:没有虚频或者有两个以上的虚频。
解:首先我们要确保频率计算的精度够高,至少要和过渡态的EDIFF要求一样。如果没有虚频,那计算肯定是错的,最可能的还是力的精度不够。算法决定了一般用CI-NEB和Dimer计算正常结束不会碰到没有虚频的情况。如果有多个虚频,这个是常见问题,也可能是力的精度不够,这时候可以把结构向着较小的那个虚频的方向做微小的位移重新作为初始结构计算,俗称消虚频。
问题六:插点结构非常混乱要检查初态和末态的原子顺序是不是一一对应的!这个是新手的常见错误,所以在计算初态和末态的时候就要注意不要打乱相应的原子顺序。提高SCF的计算精度(即提高力的计算精度至关重要)
评分 Rate
参与人数Participants 1eV +3
收起
理由Reason
普通人2004
+ 3
精品内容
查看全部评分 View all ratings
收藏 Add to favorites40
回复 Reply
举报 Report
薛定谔的老猫
薛定谔的老猫
当前离线
UID9024
在线时间275 小时
注册时间2018-4-22
最后登录2026-6-13
好友10
118
帖子0
威望1366
eV
Level 4 (黑子), 积分 credits 1484, 距离下一级还需 16 积分 credits
积分1484
Level 4 (黑子)
发消息 Send PM
2#
发表于 Post on 2019-5-1 14:26:17
|
只看该作者 Only view this author
非常感谢分享,我有一个疑问就是,按理说过渡态的搜索,一般Gaussian比较好,为啥好多人用vasp?是相变过程么?这两者分别有啥优势呢?感谢!
回复 Reply
举报 Report
啦啦黑还黑
啦啦黑还黑
当前离线
UID3295
在线时间255 小时
注册时间2016-6-4
最后登录2025-8-27
好友58
119
帖子2
威望2196
eV
Level 5 (御坂), 积分 credits 2355, 距离下一级还需 1645 积分 credits
积分2355
Level 5 (御坂)
发消息 Send PM
3#
楼主 Author|
发表于 Post on 2019-5-1 14:52:03
|
只看该作者 Only view this author
薛定谔的老猫 发表于 2019-5-1 14:26
非常感谢分享,我有一个疑问就是,按理说过渡态的搜索,一般Gaussian比较好,为啥好多人用vasp?是相变过程 ...
vasp算过渡态可用于处理周期性体系,比如:表面催化反应,电极材料中离子迁移。相变是比较复杂的过程单独用VASP还不行,还需要其他的程序如USPEX,Calypso,SSW等连用。
Gaussian算过渡态只能处理孤立的体系。
回复 Reply
举报 Report
薛定谔的老猫
薛定谔的老猫
当前离线
UID9024
在线时间275 小时
注册时间2018-4-22
最后登录2026-6-13
好友10
118
帖子0
威望1366
eV
Level 4 (黑子), 积分 credits 1484, 距离下一级还需 16 积分 credits
积分1484
Level 4 (黑子)
发消息 Send PM
4#
发表于 Post on 2019-5-1 15:07:26
|
只看该作者 Only view this author
啦啦黑还黑 发表于 2019-5-1 14:52
vasp算过渡态可用于处理周期性体系,比如:表面催化反应,电极材料中离子迁移。相变是比较复杂的过程单独 ...
好的,非常感谢
回复 Reply
举报 Report
jhkwoaini123
jhkwoaini123
当前离线
UID9848
在线时间8 小时
注册时间2018-7-10
最后登录2020-4-16
好友0
5
帖子0
威望67
eV
Level 2 能力者, 积分 credits 72, 距离下一级还需 78 积分 credits
积分72
Level 2 能力者
发消息 Send PM
5#
发表于 Post on 2019-5-5 17:28:29
|
只看该作者 Only view this author
请问你说消虚频向着较小的方向消,是什么意思?该怎么操作呢?
回复 Reply
举报 Report
啦啦黑还黑
啦啦黑还黑
当前离线
UID3295
在线时间255 小时
注册时间2016-6-4
最后登录2025-8-27
好友58
119
帖子2
威望2196
eV
Level 5 (御坂), 积分 credits 2355, 距离下一级还需 1645 积分 credits
积分2355
Level 5 (御坂)
发消息 Send PM
6#
楼主 Author|
发表于 Post on 2019-5-5 20:21:13
|
只看该作者 Only view this author
jhkwoaini123 发表于 2019-5-5 17:28
请问你说消虚频向着较小的方向消,是什么意思?该怎么操作呢?
过渡态应该就一个虚频,如果还有其他的虚频,说明该虚频振动的方向上没有被充分优化,可以顺着该方向稍微位移一下重新算过渡态,可能把这些虚频消掉。看vaspkit手册功能507.
https://github.com/tamaswells/VA ... 4%BB%8B%E7%BB%8D.md
回复 Reply
举报 Report
小诗哥不屈服
小诗哥不屈服
当前离线
UID6710
在线时间4 小时
注册时间2017-8-22
最后登录2019-10-14
好友0
2
帖子0
威望57
eV
Level 2 能力者, 积分 credits 59, 距离下一级还需 91 积分 credits
积分59
Level 2 能力者
发消息 Send PM
7#
发表于 Post on 2019-9-19 20:14:44
|
只看该作者 Only view this author
啦啦黑还黑 发表于 2019-5-5 20:21
过渡态应该就一个虚频,如果还有其他的虚频,说明该虚频振动的方向上没有被充分优化,可以顺着该方向稍微 ...
你好,我算出一个两个虚频的过渡态,然后其中一个是35cm左右,想用vaspkit的507功能消除这个小虚频,但是输出是这样的提示, -->> (01) Reading Structural Parameters from CONTCAR File...
+---------------------------------------------------------------+
| Selective Dynamics is Activated! |
+---------------------------------------------------------------+
Warning! Molecule was found periodic in the box!
-->> (02) Analyzing Molecular Symmetry Information...
Molecular Symmetry is:
Molecular symmetry is:
-->> (03) Reading positions From CONTCAR File...
-->> (04) Reading Structural Parameters from CONTCAR File...
+---------------------------------------------------------------+
| Selective Dynamics is Activated! |
+---------------------------------------------------------------+
-->> (05) Reading Frequences From OUTCAR File...
Frequencies have excluded the rotational and translational ones!
No imaginary-freq to be corrected!
+---------------------------------------------------------------+
| * DISCLAIMER * |
| Check the Consistency of Your Results if Necessary |
| Any Suggestions for Improvements are Welcome |
| (^.^) GOOD LUCK (^.^) |
|---------------------------------------------------------------|
| We Would Appreciate if You Cite in Your Research with VASPKIT.|
| Ref: V. Wang, N. Xu, J.C. LIU, G. Tang, et al, VASPKIT: A Pre-|
| and Post-Processing Program for VASP Code, arXiv:1908.08269. |
+---------------------------------------------------------------+
还没有POSCAR_NEW是为什么呢
回复 Reply
举报 Report
pww1997
pww1997
当前离线
UID16351
在线时间1 小时
注册时间2019-11-3
最后登录2020-5-29
好友0
1
帖子0
威望11
eV
Level 1 能力者, 积分 credits 12, 距离下一级还需 13 积分 credits
积分12
Level 1 能力者
发消息 Send PM
8#
发表于 Post on 2020-3-12 23:51:55
|
只看该作者 Only view this author
小诗哥不屈服 发表于 2019-9-19 20:14
你好,我算出一个两个虚频的过渡态,然后其中一个是35cm左右,想用vaspkit的507功能消除这个小虚频,但是 ...
你好 请问这个问题你解决了吗?
回复 Reply
举报 Report
Jack
Jack
当前离线
UID3065
在线时间1164 小时
注册时间2016-5-7
最后登录2026-6-16
好友0
91
帖子0
威望6293
eV
积分6384
Level 6 (一方通行)
发消息 Send PM
9#
发表于 Post on 2020-4-25 17:13:18
|
只看该作者 Only view this author
啦啦黑还黑 发表于 2019-5-1 14:52
vasp算过渡态可用于处理周期性体系,比如:表面催化反应,电极材料中离子迁移。相变是比较复杂的过程单独 ...
请问VASP和SSW联用怎么处理?
回复 Reply
举报 Report
郑亚鹏
郑亚鹏
当前离线
UID14811
在线时间7 小时
注册时间2019-7-27
最后登录2022-5-17
好友0
2
帖子0
威望55
eV
Level 2 能力者, 积分 credits 57, 距离下一级还需 93 积分 credits
积分57
Level 2 能力者
发消息 Send PM
10#
发表于 Post on 2020-6-23 10:23:27
|
只看该作者 Only view this author
在算过渡态的时候,减小K点粗算的时候(把K点设置为1 1 1),使用IPOT=1的算法,过渡态可以正常计算,并且能量曲线是正常的,这应该是说明过渡态的插点是合理的;但是当进行精算的时候,即把K点密度增大为3 5 1,计算就会报错,导致计算卡在第一个离子步,运行不下去,请问这样的问题您有没有遇到过?有么有办法解决?报错的信息如下:{ 0, 0}: On entry to
PZSTEIN parameter number 4 had an illegal value
{ 0, 1}: On entry to
PZSTEIN parameter number 4 had an illegal value
{ 0, 2}: On entry to
PZSTEIN parameter number 4 had an illegal value
{ 0, 3}: On entry to
PZSTEIN parameter number 4 had an illegal value
{ 0, 4}: On entry to
PZSTEIN parameter number 4 had an illegal value
{ 0, 5}: On entry to
PZSTEIN parameter number 4 had an illegal value
{ 0, 8}: On entry to
PZSTEIN parameter number 4 had an illegal value
{ 0, 9}: On entry to
PZSTEIN parameter number 4 had an illegal value
回复 Reply
举报 Report
Jaydu1996
Jaydu1996
当前离线
UID14789
在线时间42 小时
注册时间2019-7-26
最后登录2024-11-14
好友1
26
帖子0
威望250
eV
Level 3 能力者, 积分 credits 276, 距离下一级还需 224 积分 credits
积分276
Level 3 能力者
发消息 Send PM
11#
发表于 Post on 2020-7-2 09:58:26
|
只看该作者 Only view this author
郑亚鹏 发表于 2020-6-23 10:23
在算过渡态的时候,减小K点粗算的时候(把K点设置为1 1 1),使用IPOT=1的算法,过渡态可以正常计算,并且 ...
你好,请问你的问题解决了吗,我也遇到了类似的错误
回复 Reply
举报 Report
坚持就完事了
坚持就完事了
当前离线
UID16400
在线时间4 小时
注册时间2019-11-5
最后登录2020-10-31
好友0
2
帖子0
威望31
eV
Level 2 能力者, 积分 credits 33, 距离下一级还需 117 积分 credits
积分33
Level 2 能力者
发消息 Send PM
12#
发表于 Post on 2020-7-2 19:22:19
|
只看该作者 Only view this author
郑亚鹏 发表于 2020-6-23 10:23
在算过渡态的时候,减小K点粗算的时候(把K点设置为1 1 1),使用IPOT=1的算法,过渡态可以正常计算,并且 ...
请问您解决了吗,我也遇到了类似问题。
回复 Reply
举报 Report
Jaydu1996
Jaydu1996
当前离线
UID14789
在线时间42 小时
注册时间2019-7-26
最后登录2024-11-14
好友1
26
帖子0
威望250
eV
Level 3 能力者, 积分 credits 276, 距离下一级还需 224 积分 credits
积分276
Level 3 能力者
发消息 Send PM
13#
发表于 Post on 2020-7-4 15:07:31
|
只看该作者 Only view this author
坚持就完事了 发表于 2020-7-2 19:22
请问您解决了吗,我也遇到了类似问题。
一般遇到这个东西还是初始结构不合理导致的,尝试改一下初始结构,或者计算前使用ulimit –s unlimited(此命令),我是使用后面这个命令解决的,但是没有调整初始结构,不过我的初始结构确实不大合理
回复 Reply
举报 Report
郑亚鹏
郑亚鹏
当前离线
UID14811
在线时间7 小时
注册时间2019-7-27
最后登录2022-5-17
好友0
2
帖子0
威望55
eV
Level 2 能力者, 积分 credits 57, 距离下一级还需 93 积分 credits
积分57
Level 2 能力者
发消息 Send PM
14#
发表于 Post on 2020-7-6 09:11:20
|
只看该作者 Only view this author
坚持就完事了 发表于 2020-7-2 19:22
请问您解决了吗,我也遇到了类似问题。
添加AMIX, BMIX这几个参数应该是可以解决的,具体的参数设置可以参考vasp手册
回复 Reply
举报 Report
多次拒绝斯佳丽
多次拒绝斯佳丽
当前离线
UID22629
在线时间13 小时
注册时间2020-9-15
最后登录2021-1-30
好友1
13
帖子0
威望47
eV
Level 2 能力者, 积分 credits 60, 距离下一级还需 90 积分 credits
积分60
Level 2 能力者
发消息 Send PM
15#
发表于 Post on 2021-1-4 09:05:43
|
只看该作者 Only view this author
本帖最后由 多次拒绝斯佳丽 于 2021-1-4 09:07 编辑
感谢分享!!!
回复 Reply
举报 Report