24小时热门版块排行榜    

查看: 1086  |  回复: 8
当前主题已经存档。

yunml

铜虫 (小有名气)

[交流] 【求助】读CHGCAR里的数据

虽然用vesta能很好的看电荷密度,但是不能得到几个相减的电荷密度差。网上有小软件做这个,但我的老是出问题,所以特别想自己拿最原始的数据,自己动手在origin做。

问题是chgcar里面的数据根本读不同,有没有哪位高人能指点下? 不胜感激。
回复此楼

» 猜你喜欢

一以贯之
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

TIGERYZZ

金虫 (小有名气)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
aylayl08(金币+3,VIP+0):感谢指点 12-4 13:46
chgcar首先输出的是结构信息,然后输出FFT-grid的维度,即NGX,NGY,NGZ,然后输出网格中每一个点的电荷密度,输出的格式在vasp手册里有提到:
WRITE(IU,FORM) (((C(NX,NY,NZ),NX=1,NGXC),NY=1,NGYZ),NZ=1,NGZC)
2楼2009-12-04 13:24:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

灯塔守望者

铁杆木虫 (正式写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
aylayl08(金币+1,VIP+0):鼓励交流 12-5 16:37
OK,下一步我将在vaspkit中增加提取差分电荷密度数据!
3楼2009-12-04 17:50:41
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

bingmou

金虫 (著名写手)

自己动手编程吧
4楼2009-12-04 17:51:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yunml

铜虫 (小有名气)

引用回帖:
Originally posted by TIGERYZZ at 2009-12-4 13:24:
chgcar首先输出的是结构信息,然后输出FFT-grid的维度,即NGX,NGY,NGZ,然后输出网格中每一个点的电荷密度,输出的格式在vasp手册里有提到:
WRITE(IU,FORM) (((C(NX,NY,NZ),NX=1,NGXC),NY=1,NGYZ),NZ=1,NGZC)

能不能解释一下"WRITE(IU,FORM) (((C(NX,NY,NZ),NX=1,NGXC),NY=1,NGYZ),NZ=1,NGZC) "?  因为我看chgcar里面电荷密度部分每行有五个数据,按照(x,y,z,density)理解好像不对啊。

还有,上面的语句是Fortran写的吗?  多谢了!

CHGCAR 如下:
Fe-CO                                    
   1.00000000000000     
     0.000000    5.732800    0.000000
     0.000000    0.000000    5.732800
    17.166000    0.000000    0.000000
   1   1  24
Direct
  0.500000  0.464705  0.451881
  0.500000  0.641670  0.501367
  0.000000  0.000000  0.000000
  0.000000  0.500000  0.000000
  0.500000  0.000000  0.000000
...

   48   48  144
0.11710375410E+05 0.11082654420E+05 0.93465338201E+04 0.69185564327E+04 0.43845496481E+04
0.23036430807E+04 0.98892296509E+03 0.40174174331E+03 0.23369168341E+03 0.16858018791E+03
0.13671233690E+03 0.12337598318E+03 0.11990845078E+03 0.12335148597E+03 0.13665683923E+03
0.16846542258E+03 0.23345974810E+03 0.40125016805E+03 0.98777940755E+03
...

augmentation occupancies  25 138
-0.8339124E-02  0.1781598E-03 -0.2282241E-03 -0.1983454E-03 -0.3674109E-04
  0.4917278E-03 -0.1912815E-01  0.8767631E-03 -0.7149171E-03 -0.8271628E-03
-0.2565947E-03  0.2019992E-02  0.9772558E-02 -0.5522550E-02  0.3923657E-01
...
augmentation occupancies  26 138
-0.9033073E-02  0.1112419E-03  0.3308886E-03 -0.2789434E-03  0.9789807E-04
  0.5204789E-03 -0.1939311E-01  0.4184915E-03  0.1347132E-02 -0.1239935E-02
  0.2499834E-03  0.2262646E-02  0.5939990E-02  0.3275988E-02  0.3513974E-01
  0.0000000E+00  0.0000000E+00  0.0000000E+00  0.0000000E+00  0.0000000E+00
...
一以贯之
5楼2009-12-05 09:24:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yunml

铜虫 (小有名气)

引用回帖:
Originally posted by 灯塔守望者 at 2009-12-4 17:50:
OK,下一步我将在vaspkit中增加提取差分电荷密度数据!

问下,我想用Fe吸附CO后的减去单独优化的Fe表面的,再减去单独CO的可以吗?

网上那个小软件似乎必须得结构参数一样才能减。

非常感谢!
一以贯之
6楼2009-12-05 09:30:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

灯塔守望者

铁杆木虫 (正式写手)

★ ★ ★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
aylayl08(金币+3,VIP+0):谢谢指点 12-5 16:37
可以,只要保证前后晶胞结构参数和K点不变,所产生的电荷密度维数是相同的,直接减就行。
WRITE(IU,FORM) (((C(NX,NY,NZ),NX=1,NGXC),NY=1,NGYZ),NZ=1,NGZC)等价于
for NZ=1,NGZC
    for Ny=1,NGYZ
         for NX,=1, NGXC
         print   ***

看看fortran书就知道了,有这时间还不如自己查资料搞定。
7楼2009-12-05 10:50:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

yunml

铜虫 (小有名气)

引用回帖:
Originally posted by 灯塔守望者 at 2009-12-5 10:50:
可以,只要保证前后晶胞结构参数和K点不变,所产生的电荷密度维数是相同的,直接减就行。
WRITE(IU,FORM) (((C(NX,NY,NZ),NX=1,NGXC),NY=1,NGYZ),NZ=1,NGZC)等价于
for NZ=1,NGZC
    for Ny=1,NGYZ
         ...

谢谢回复. 不过你的解释也没看懂. 以前没接触过Fortran,马上就开始学.

我不明白你说的"晶胞结构参数不变"的意思. 我前面说的(slab+CO)-CO,减号前后构型是一样的吗?
一以贯之
8楼2009-12-05 12:34:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

灯塔守望者

铁杆木虫 (正式写手)

★ ★
小木虫(金币+0.5):给个红包,谢谢回帖交流
aylayl08(金币+1,VIP+0):谢谢指点 12-5 16:38
就是晶胞大小不变。计算CO是把铁原子去掉!
9楼2009-12-05 13:30:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 yunml 的主题更新
普通表情 高级回复 (可上传附件)
信息提示
请填处理意见