计算化学公社

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

[理论与算法] CHGCAR价电子密度文件中的数值问题

[复制链接 Copy URL]

20

帖子

0

威望

74

eV
积分
94

Level 2 能力者

求助各位老师,为什么vasp-wiki官网给出的CHGCAR的信息中总的价电子数目的形式和它给出的电荷密度的形式不自洽?

34.png (135.27 KB, 下载次数 Times of downloads: 0)

wiki官网

wiki官网

35.png (55.45 KB, 下载次数 Times of downloads: 0)

我自己的推导

我自己的推导

3621

帖子

3

威望

1万

eV
积分
18426

Level 6 (一方通行)

第一原理惨品小作坊

2#
发表于 Post on 2024-10-8 02:11:53 | 只看该作者 Only view this author
VASP手册这里写的应该比较乱。abc是应该是一个体素或是说体元(voxels)的长度,Vcell就是一个体素的体积。建议稍微改下符号,按照这样:
实际晶胞的体积是Vcell
体素或是说网格数目Ngrid=NGXF*NGYF*NGZF
体素体积为ΔV
这样有Vcell=Ngrid·ΔV
然后按照VESTA的手册描述
When these files are read in to visualize isosurfaces and sections, data values are divided by V in the unit of bohr^3.

这样n(r)=data(r)/Vcell
然后根据矩形求积规则NELECT=∫{n(r)}dr r∈Vcell
NELECT=∑{data(n)/Vcell}ΔV n∈Ngrid
根据前面提到的,data(n)/Vcell·ΔV=data(n)/Ngrid,这样与最终公式相同。

事实上一个比较简单的做法是根据Fourier变换关系,有:
n(r)=∫{n(G)exp(iG·r)}dG
G仅取(0,0,0)时即为n(r)在Vcell内的平均值,因为已经乘了晶胞体积应该很方便就能得到电子数。

评分 Rate

参与人数
Participants 1
eV +4 收起 理由
Reason
tjuphysfang + 4 赞!

查看全部评分 View all ratings

日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

20

帖子

0

威望

74

eV
积分
94

Level 2 能力者

3#
 楼主 Author| 发表于 Post on 2024-10-8 16:28:23 | 只看该作者 Only view this author
卡开发发 发表于 2024-10-8 02:11
VASP手册这里写的应该比较乱。a、b、c是应该是一个体素或是说体元(voxels)的长度,Vcell就是一个体素的体 ...

感谢您的答疑~问题解决了!还有一个问题想请教一下您,我之前计算AECCAR0中总的核芯电子数目的时候,发现对于不同的NGXF,NGYF,NGZF数值,核心电子总数差别很大,只有取非常密集的网格才可以得到正确的核芯电子总数,如果总数正确了,请问老师,现在AECCAR0中的数值可以用来进行实际计算吗?

3621

帖子

3

威望

1万

eV
积分
18426

Level 6 (一方通行)

第一原理惨品小作坊

4#
发表于 Post on 2024-10-8 17:05:59 | 只看该作者 Only view this author
tjuphysfang 发表于 2024-10-8 16:28
感谢您的答疑~问题解决了!还有一个问题想请教一下您,我之前计算AECCAR0中总的核芯电子数目的时候,发现 ...

可以,但不推荐这样做。不过如你所见并不是很好处理,可能需要很密集的网格才能得到合理的数值,这也是为什么Henkelman组的AIM电荷程序Bader仅使用CHGCAR而不用AECCAR0+2那个和来进行盆积分(当然划分盆肯定还是用AECCAR0+2)。

原因是因为AECCAR0本身就是内层电子在冻芯下的密度(从POTCAR-PAW信息构造),一个是本身振荡要比价层赝波函数快,其次是在原子芯附近本身就有个岐点或者叫尖点,这样的东西用均匀网格本身就不怎么好描述。因此,如果没有什么特定需求,完全可以对CHGCAR进行积分,然后芯电子数目直接从POTCAR当中读出来加在上面就行了。当然一定要去处理全电子密度是可以通过一定技巧来实现的,不过要麻烦很多。
日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

20

帖子

0

威望

74

eV
积分
94

Level 2 能力者

5#
 楼主 Author| 发表于 Post on 2024-10-8 21:11:58 | 只看该作者 Only view this author
本帖最后由 tjuphysfang 于 2024-10-8 21:47 编辑
卡开发发 发表于 2024-10-8 17:05
可以,但不推荐这样做。不过如你所见并不是很好处理,可能需要很密集的网格才能得到合理的数值,这也是为 ...

感谢您的回答,我研究的问题确实需要计算核芯电子的分布情况,而不只是求总的全电子数目,所以一直在纠结这个数值到底是否可信,因为随着网格的变化,芯电子数目变化太大了。请问老师,可以介绍一下在哪里可以学习这些技巧来计算全电子分布吗?感谢!

3621

帖子

3

威望

1万

eV
积分
18426

Level 6 (一方通行)

第一原理惨品小作坊

6#
发表于 Post on 2024-10-9 04:05:29 | 只看该作者 Only view this author
本帖最后由 卡开发发 于 2024-10-9 04:19 编辑
tjuphysfang 发表于 2024-10-8 21:11
感谢您的回答,我研究的问题确实需要计算核芯电子的分布情况,而不只是求总的全电子数目,所以一直在纠结 ...

这方面其实你可以参考LAPW基组的处理方式。这时候不推荐使用AECCAR0+2的数据进行处理,因为它们在映射到均匀网格太容易失真,除非网格选取非常稠密,但这样会给计算和存储造成很多困难。你可能得从PAW-POTCAR当中获取ae+ps的partial wave和core density。事实上如果你真的这么需要讨论原子芯附近的电子行为,本身就应该使用LAPW+lo基组进行计算(比如Wien2K、ELK、Fleur等)。
日常打哑谜&&探寻更多可能。
原理问题不公开讨论,非商业性质讨论欢迎私聊。
本周忙

本版积分规则 Credits rule

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

GMT+8, 2024-11-23 17:14 , Processed in 0.193034 second(s), 25 queries , Gzip On.

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