24小时热门版块排行榜    

CyRhmU.jpeg
查看: 8060  |  回复: 19

goodluck1982

铁虫 (初入文坛)

[交流] vasp 计算 partial charge 时k点选取的问题已有9人参与

比如 graphene, SCF 计算时使用 PAW PBE势,然后算能带,然后根据能带的波函数提取出M点价带的 partial charge。然而使用两种 k-line 取法时得到的结果却很不一样:
(1) band1: 第一种就是直接算 Gamma-K-M-Gamma 一个比较完整的能带,每段41个点,那么 M 点是第 82和83 个k点。
(2) band2: 第二种就是直接算 M 到 -M,就取两个点,那么 M 点就是第一个 k 点。

然后 (1)  得到的 PARCHG.0004.0082 和 (2)得到的 PARCHG.0004.0001 差别很大。(可以用 diff 或 vimdiff 比较)
这是怎么回事呢?该如何选取K点好呢?
而且即使在(1)中, PARCHG.0004.0082 和 PARCHG.0004.0083 也是有些许差别的,但这个可以看出是数值误差。

附: scf 的 INCAR 如下
CODE:
system = graphene
ISTART=1
ICHARG=1
PREC=High
ENCUT=400
EDIFF=1e-6
ISMEAR=-5

KPOINTS 取 40x40x1
POSCAR 为
CODE:
graphene
2.46
1         0            0
0.5       0.8660254    0
0         0            4
C
2
Cartesian
0         0          0         
0.5       0.2886751  0

band1 INCAR:
CODE:
ISTART=1
ICHARG=11
PREC=High
ENCUT=400
EDIFF=1e-6
ISMEAR=1
LWAVE  = T

之后计算 partial charge 的 INCAR 为
CODE:
ISTART=1
ICHARG=1
PREC=High
ENCUT=400
EDIFF=1e-6

LPARD=T
IBAND=4
KPUSE=82 83
LSEPB=T
LSEPK=T

KPOINTS为
CODE:
for band: Gamma-K-M-Gamma
41
line mode
Reciprocal
0           0           0   ! Gamma
0.6666667   0.3333333   0   ! K

0.6666667   0.3333333   0   ! K
0.5         0           0   ! M

0.5         0           0   ! M
0           0           0   ! Gamma

band2 的 INCAR 只改
CODE:
KPUSE=1   2

KPOINTS 相应为
CODE:
for band
2
line mode
Reciprocal
0.5         0           0   ! M
-0.5         0           0   !- M

[ Last edited by goodluck1982 on 2013-1-31 at 18:00 ]

计算 partial charge 的 INCAR 中的 ICHARG 应为 11

[ Last edited by goodluck1982 on 2015-3-19 at 17:44 ]
回复此楼

» 收录本帖的淘帖专辑推荐

VASP and MS 第一原理资料汇编 第一性原理相关文档 半导体

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

bjwang

铁杆木虫 (正式写手)


小木虫: 金币+0.5, 给个红包,谢谢回帖
进行Partial Charge分析必须要保留有自洽计算的WAVECAR才可以。http://muchong.com/bbs/viewthread.php?tid=1404880
至于k点文件用自动的不行吗? 我一般都是计算某个能量区间的,采用和自洽相同的k点文件。没计算过指定能带的,指定计算能带的k点文件要和计算能带的k点文件一样?

[ Last edited by bjwang on 2013-1-31 at 22:07 ]
It is a shame for the soul to be first to give way in this life,when thy body does not give way.
3楼2013-01-31 21:31:23
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

北漂2012

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
4楼: Originally posted by goodluck1982 at 2013-02-02 17:08:37
要算指定的能带和k点。自动产生的k点里不一定有我想要的k点,那只能通过能带方式指定了。...

我先自洽,然后画出能带。根据能带上,我要计算fermi面附近一定能量区间的电荷密度。
然后做parital charge的计算,当然用的是自洽的WAVRCAR,选择费米面附近-0.1eV-0.1eV的能量区间
其中INCAR的设置:
NBMOD=-3
EINT=-0.1  0.1
LPARD=.TRUE.
还有这个时候我用的KPOINTS,是画能带的KPOINTS。
按理说程序会判断,我的KPOINTS中,有哪些个k点对应的能量落在我指定的能量区间内。
(1)我发现,程序判断的k点和我从能带图上直接观察到属于指定能量区间的k点,不一致。比如从能带上看,我看到的第5条能带的第10个k点落在我选择的能量区间;而程序自己找的却是是第5条能带的第2个k点。这样的话,得到的patial电荷密度结果就应该不可靠了。
(2)前面计算画能带得到的本征值文件EIGENVAL,和做partial charge charge得到的EIGENVAL文件,虽然他们的KPOINTS是一样的,但是里面同一个k点对应的能量值,却是不同的。
我觉得是两个过程的EIGENVAL的不同,导致问题(1)
ibelieveicanfly,ibelieveeicantouchthesky.Ificanseeit,thenicandoit,ifijustbelieveit,thethereisnothingtoit.
7楼2014-02-23 12:47:59
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

北漂2012

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
6楼: Originally posted by highpeter at 2013-10-07 21:38:41
弱弱的问一下,为什么82.83是同一个k点啊?...

K-points
82
Line-mode
0 0 0      !G
0 0 0.5   !Z

0 0 0.5  !Z
0.5 0   0  ! X
比如上面是我画能带的KPOINTS文件。
把G-Z点之间线段,分成81(82-1)份,包括线段两端,共有82个点。G是第一个点,Z是第82个点;
同理
把Z-X点之间线段,也分成81(82-1)份;包括线段两端,共有82个点。接着G-Z线段之后,我们再开始计数,这里Z是第83(82+1)点,X是第164(82+82)个点;
这样,第82和83个点都是Z点。不信你可以看一下画出来的能带数据。
ibelieveicanfly,ibelieveeicantouchthesky.Ificanseeit,thenicandoit,ifijustbelieveit,thethereisnothingtoit.
8楼2014-02-23 12:59:47
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

北漂2012

新虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
4楼: Originally posted by goodluck1982 at 2013-02-02 17:08:37
要算指定的能带和k点。自动产生的k点里不一定有我想要的k点,那只能通过能带方式指定了。...

同学,在吗。
VASP 做partial charge 计算时候。
可以通过画能带的KPOINTS,去指定某条能带,某个k点吗?
为什么我觉得我用KPOINTS去指定能带,好像不起作用。
它实际计算中依然自动用了自洽中的K点呢?
谢谢啦!
ibelieveicanfly,ibelieveeicantouchthesky.Ificanseeit,thenicandoit,ifijustbelieveit,thethereisnothingtoit.
9楼2014-02-24 22:45:18
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

goodluck1982

铁虫 (初入文坛)

可能是算能带时 CHGCAR 文件用乱了。
后来重复了一遍,算能带时使用相同的 scf 收敛后的CHGCAR,最后后 (1)  得到的 PARCHG.0004.0082 和 (2)得到的 PARCHG.0004.0001 差别不大了,不过还是有数值误差,在小数点后四五位左右,比  PARCHG.0004.0082 和  PARCHG.0004.0083 间的差别稍大。

不过,82 和 83 明明是同一个k点,算出来却不完全一样,让人觉得不爽。
2楼2013-01-31 18:11:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

goodluck1982

铁虫 (初入文坛)

引用回帖:
3楼: Originally posted by bjwang at 2013-01-31 21:31:23
进行Partial Charge分析必须要保留有自洽计算的WAVECAR才可以。http://muchong.com/bbs/viewthread.php?tid=1404880
至于k点文件用自动的不行吗? 我一般都是计算某个能量区间的,采用和自洽相同的k点文件。没 ...

要算指定的能带和k点。自动产生的k点里不一定有我想要的k点,那只能通过能带方式指定了。
4楼2013-02-02 17:08:37
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

highpeter

金虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
3楼: Originally posted by bjwang at 2013-01-31 21:31:23
进行Partial Charge分析必须要保留有自洽计算的WAVECAR才可以。http://muchong.com/bbs/viewthread.php?tid=1404880
至于k点文件用自动的不行吗? 我一般都是计算某个能量区间的,采用和自洽相同的k点文件。没 ...

计算能量区间的时候,是会自动帮我们选定能带的吧。 但是用这种方法算费米能附近partial charge很麻烦,有些时候系统自动给我们选的费米能会非常夸张的大。   
如果在INCAR的EINT设置费米能,又有计算partial charge和自洽计算时费米能会有一定浮动的问题。
5楼2013-10-07 21:27:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

highpeter

金虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
2楼: Originally posted by goodluck1982 at 2013-01-31 18:11:12
可能是算能带时 CHGCAR 文件用乱了。
后来重复了一遍,算能带时使用相同的 scf 收敛后的CHGCAR,最后后 (1)  得到的 PARCHG.0004.0082 和 (2)得到的 PARCHG.0004.0001 差别不大了,不过还是有数值误差,在小数点 ...

弱弱的问一下,为什么82.83是同一个k点啊?
6楼2013-10-07 21:38:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

highpeter

金虫 (初入文坛)


小木虫: 金币+0.5, 给个红包,谢谢回帖
引用回帖:
7楼: Originally posted by 北漂2012 at 2014-02-23 12:47:59
我先自洽,然后画出能带。根据能带上,我要计算fermi面附近一定能量区间的电荷密度。
然后做parital charge的计算,当然用的是自洽的WAVRCAR,选择费米面附近-0.1eV-0.1eV的能量区间
其中INCAR的设置:
NBMOD=- ...

你选EINT=-0.1  0.1的话,它应该是能量-0.1到0.1的范围,而不是费米能附近的。
10楼2014-02-26 12:27:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 goodluck1982 的主题更新
普通表情 高级回复(可上传附件)
信息提示
请填处理意见