计算化学公社

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

[VASP] VASP计算精度和是否收敛问题

[复制链接 Copy URL]

170

帖子

0

威望

636

eV
积分
806

Level 4 (黑子)

(1)各位老师,我最近在自学VASP,然后我看网上的教程了解到VASP收敛主要看能量和力是否收敛,我做结构优化后,我在看输出文件OSZICAR的时候发现第一步离子步的时候电子步计算到了最大的步数还是没有收敛,但是程序也没有停下来,反而继续开始了后面的离子步,但是我看最后离子步都跑完了好像d E好像都没有达到我设置的EDIFF,然后我看OUTCAR里面的TOTAL-FORCE也没有达到EDIFFG,虽然最后显示reached required accuracy - stopping structural energy minimisation是不是其实还是没收敛呀?
(2)各位老师我想问一下,我看网上说有时候也要看d eps是否小于EDIFF这个是判断什么呢?还有像我这种程序显示收敛但是能量和力都没有达到设定的情况,是不是有办法可以像Gaussian里面一样读取最后一步作为初始步继续优化,达到收敛的概率会大一点呢?
(3)各位老师我想问一下VASP对于高精度计算的定义主要是指哪一类呢?我主要是结构优化、计算能带、PDOS、吸附能这一块,因为我看我输出文件里面warning建议对于精度不高的计算可以用LREAL= Auto

INCAR

206 Bytes, 下载次数 Times of downloads: 8

OSZICAR

37.11 KB, 下载次数 Times of downloads: 6

out.log

48.78 KB, 下载次数 Times of downloads: 3

OUTCAR

1.76 MB, 下载次数 Times of downloads: 3

3621

帖子

3

威望

1万

eV
积分
18429

Level 6 (一方通行)

第一原理惨品小作坊

2#
发表于 Post on 2024-6-18 08:53:49 | 只看该作者 Only view this author
1、EDIFFG参考的不是TOTAL-FORCE,而是原子当中最大的力,亦即|Fi|<EDIFFG,i∈[1,Natoms]。
2、要dE和d eps都效应EIDFF,可以仔细看下手册。可以读取最后一步的结构续算,没有必要重新算,例如cp CONTCAR POSCAR。需要注意的是变胞优化有可能会出现与之前过程最后一步能量不相等的情况,这在原理上是正常的,但也可能个别体系会数值不稳定导致类似问题,需要谨慎处理。
3、事实上一般需要LREAL=F的情况不是很多,除非对能量/电子结构计算要求特别精确或体系这些性质对数值比较敏感才需要,绝大部分情况LREAL=Auto就可以,在官网也有说明
日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

1060

帖子

0

威望

3256

eV
积分
4316

Level 6 (一方通行)

3#
发表于 Post on 2024-6-18 09:56:16 | 只看该作者 Only view this author
(1) 你在 INCAR 里设置的 EDIFF = 1E-5,OSZICAR 里第一个离子步里达到了默认的最大 SCF 循环, dE 无论后没有小于 1E-5 (电子自洽收敛标准)都会自动停止 SCF 计算,进入下一个离子步的电子自洽 SCF。这是程序默认的。在后续的离子步里,电子自洽 SCF 都达到了设置的 1E-5 收敛标准。二楼卡老师也提到 d eps 也应该小于 1E-5。你的 OSZICAR 也是满足的此标准的。

至于最大受力是否达到收敛标准,可以用我的脚本试试。链接在本站,如下:
http://bbs.keinsci.com/forum.php ... 65&fromuid=1532

170

帖子

0

威望

636

eV
积分
806

Level 4 (黑子)

4#
 楼主 Author| 发表于 Post on 2024-6-19 21:38:28 | 只看该作者 Only view this author
本帖最后由 KCM@SHU 于 2024-6-19 21:41 编辑
卡开发发 发表于 2024-6-18 08:53
1、EDIFFG参考的不是TOTAL-FORCE,而是原子当中最大的力,亦即|Fi|

谢谢老师,老师我想问一下,您说的|Fi|这个参数是在哪里看呢?我在b站看的几个视频里面说的都是看OUTCAR里面的TOTAL-FORCE (eV/Angst),然后我在手册里面也没找到对应的Fi是那个参数



202406192139473819..png (29.33 KB, 下载次数 Times of downloads: 32)

202406192139473819..png

170

帖子

0

威望

636

eV
积分
806

Level 4 (黑子)

5#
 楼主 Author| 发表于 Post on 2024-6-19 21:42:15 | 只看该作者 Only view this author
乐平 发表于 2024-6-18 09:56
(1) 你在 INCAR 里设置的 EDIFF = 1E-5,OSZICAR 里第一个离子步里达到了默认的最大 SCF 循环, dE 无论后 ...

谢谢老师,我琢磨一下您的脚本

3621

帖子

3

威望

1万

eV
积分
18429

Level 6 (一方通行)

第一原理惨品小作坊

6#
发表于 Post on 2024-6-19 23:23:05 | 只看该作者 Only view this author
KCM@SHU 发表于 2024-6-19 21:38
谢谢老师,老师我想问一下,您说的|Fi|这个参数是在哪里看呢?我在b站看的几个视频里面说的都是看OUTCAR ...

这个|Fi|=sqrt(Fx,i^2+Fy,i^2+Fz,i^2),需要进行计算,VASP自身没有显示,
方案1:如果你装了VASP搜索过渡态的插件VTST,就会在OUTCAR有如下字段
FORCES: max atom, RMS

其中第一个就是3Natoms当中最大的原子受力。
方案2:使用楼上的脚本。
方案3:自己写,python用正则表达式抓一下,也写不了几行代码。
日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

170

帖子

0

威望

636

eV
积分
806

Level 4 (黑子)

7#
 楼主 Author| 发表于 Post on 2024-6-20 09:21:43 | 只看该作者 Only view this author
卡开发发 发表于 2024-6-19 23:23
这个|Fi|=sqrt(Fx,i^2+Fy,i^2+Fz,i^2),需要进行计算,VASP自身没有显示,
方案1:如果你装了VASP搜索过 ...

懂了,谢谢老师

1060

帖子

0

威望

3256

eV
积分
4316

Level 6 (一方通行)

8#
发表于 Post on 2024-6-20 10:16:45 | 只看该作者 Only view this author
本帖最后由 乐平 于 2024-6-28 16:58 编辑
KCM@SHU 发表于 2024-6-20 09:21
懂了,谢谢老师

我的 Python 脚本里用了 Numpy 来求最大受力。核心的求解公式就一行
  1. np.amax(np.linalg.norm(data, axis=-1), axis=-1)
复制代码


其余的代码主要是检查 OUTCAR, POSCAR 文件是否存在,以及 POSCAR 里是否有被限制(不移动)的原子。如果存在不移动的原子,则不需要计算这些原子的受力。再就是读取 OUTCAR 里表格中的力在 x, y, z 三个方向的分量。

170

帖子

0

威望

636

eV
积分
806

Level 4 (黑子)

9#
 楼主 Author| 发表于 Post on 2024-6-20 12:37:43 | 只看该作者 Only view this author
乐平 发表于 2024-6-20 10:16
我的 Python 脚本里用了 Numpy 来求最大受力。核心的求解公式就一行

好的老师,我用您的代码画出来图形了,我再琢磨一下咋样可以抓点,我不太确定力有没有达到我设定值,感觉好像在我设定值附近波动,老师计算出来图形上面那个能量是不是就是可以用来计算吸附能的自由能呢?

202406201237546917..png (89.43 KB, 下载次数 Times of downloads: 30)

202406201237546917..png

1060

帖子

0

威望

3256

eV
积分
4316

Level 6 (一方通行)

10#
发表于 Post on 2024-6-21 16:31:07 | 只看该作者 Only view this author
KCM@SHU 发表于 2024-6-20 12:37
好的老师,我用您的代码画出来图形了,我再琢磨一下咋样可以抓点,我不太确定力有没有达到我设定值,感觉 ...

你不需要取点,只用看趋势就可以了

如果实在不放心,可以点图上工具栏里的“放大镜”工具,然后框选最大受力的末尾十来个点。框选的时候尽量靠近点,这样纵坐标会自动缩放。你会看到纵坐标的刻度变成 10^-3 左右。足以说明最大受力满足你设置的 EDIFFG = -0.02

5

帖子

0

威望

53

eV
积分
58

Level 2 能力者

11#
发表于 Post on 2024-9-10 15:49:37 | 只看该作者 Only view this author
楼主你好,请问你做结构优化用时多久呢,有多少原子和核数

170

帖子

0

威望

636

eV
积分
806

Level 4 (黑子)

12#
 楼主 Author| 发表于 Post on 2024-9-18 22:56:24 | 只看该作者 Only view this author
qqqm 发表于 2024-9-10 15:49
楼主你好,请问你做结构优化用时多久呢,有多少原子和核数

这个不太好说,我一般一次优化5-10个小时,一般优化一次不一定成功,用的核数是28,原子大概在70-200左右

31

帖子

0

威望

373

eV
积分
404

Level 3 能力者

13#
发表于 Post on 2024-9-28 19:56:48 | 只看该作者 Only view this author
乐平 发表于 2024-6-21 16:31
你不需要取点,只用看趋势就可以了

如果实在不放心,可以点图上工具栏里的“放大镜”工具,然后框选最 ...

我输入:python3 check_VASP_convergency.py 之后,就直接显示这个,这是为啥呀,大佬
Traceback (most recent call last):
  File "check_VASP_convergency.py", line 9, in <module>
    import numpy as np
ModuleNotFoundError: No module named 'numpy'

1060

帖子

0

威望

3256

eV
积分
4316

Level 6 (一方通行)

14#
发表于 Post on 2024-9-28 20:31:37 | 只看该作者 Only view this author
目前还不会计算 发表于 2024-9-28 19:56
我输入:python3 check_VASP_convergency.py 之后,就直接显示这个,这是为啥呀,大佬
Traceback (most  ...

因为你的 python 是纯 Python,没有其他库

建议安装 Anaconda3,几乎常用的库都包含了,你不需要自己额外安装其他库。

从清华的镜像网站下载就可以,链接如下(比直接从国外的网站下载要快)
https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/

31

帖子

0

威望

373

eV
积分
404

Level 3 能力者

15#
发表于 Post on 2024-9-28 22:02:43 | 只看该作者 Only view this author
乐平 发表于 2024-9-28 20:31
因为你的 python 是纯 Python,没有其他库

建议安装 Anaconda3,几乎常用的库都包含了,你不需要自己 ...

File "check_VASP_convergency.py", line 203
    raise FileNotFoundError(f"The file {file_path.name} does not exist.")
                                                                       ^
SyntaxError: invalid syntax
我安装好了库,现在又变成这样了,不知道为啥

本版积分规则 Credits rule

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

GMT+8, 2024-11-24 05:01 , Processed in 0.183598 second(s), 24 queries , Gzip On.

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