24小时热门版块排行榜    

查看: 4260  |  回复: 11

CXC_小草

银虫 (正式写手)

[求助] 差分电荷密度的计算 已有2人参与

生成的CHGCAR文件网格下面的数据太大,我把三个系统的数据分别导入到excel中相减,但由于数据太多,excel中只能导入一部分,无法全部倒入或不能导入,这样肯定结果不全,我想问前辈有什么方法吗?谢谢!
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
回帖支持 ( 显示支持度最高的前 50 名 )

hn19870519

木虫 (正式写手)

【答案】应助回帖


youzhizhe(金币+1): 谢谢交流。 2011-10-22 23:44:01
楼主怎么能用excel处理CHGCAR呢。。。自己编个几十行的程序就可以搞定。。。
2楼2011-10-22 23:22:16
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
普通回帖

hn19870519

木虫 (正式写手)

【答案】应助回帖


youzhizhe(金币+1): 建议直接上传附件。谢谢交流。 2011-10-22 23:43:38
subroutine chgdiff
!################################################
!DMol3 total electron density            
!(1p,e12.5)  
!   9.000   8.200   9.400  90.000  90.000  90.000
!   45   41   47
!   1  -23   22  -20   21  -22   25
!#################################################
!initializing all paremeters
implicit none
integer :: NGX,NGY,NGZ
real*8 :: amod,bmod,cmod,alpha,beta,gamma,VOL
real*8 :: scale
real*8,allocatable :: a(,b(,c(
real*8,allocatable :: atomnum(
real*8,allocatable :: chgdata1(:,:,,chgdata2(:,:,
integer :: i,j,k,n,m,iserror,p

open(11,file='CHGCAR1',form='formatted',status='old',iostat=iserror)
open(13,file='CHGCAR2',form='formatted',status='old',iostat=iserror)
if(iserror>0) then
write(*,*)"The CHGCAR file does not exist, please try again!"
stop
endif
!读入原子种类数量
write(*,*)"---------------------------------"
write(*,*)"Please input atomic species amount: "
read(*,*)n

!read initialized paremeters and discard head sections
read(11,*)
read(11,*)scale
allocate(a(3))
allocate(b(3))
allocate(c(3))
allocate(atomnum(n))
read(11,*)a(1:3)
read(11,*)b(1:3)
read(11,*)c(1:3)
read(11,*)atomnum(1:n)
read(11,*)
do i=1,sum(atomnum(1:n))+1
read(11,*)
enddo
read(11,*)NGX,NGY,NGZ
!compute angle
call getmod(a,scale,amod)                                                                                               
call getmod(b,scale,bmod)                                                                                               
call getmod(c,scale,cmod)   
alpha=acos(dot_product(a,c)*(scale**2)/(amod*cmod))*180/3.1415926                                                         
beta=acos(dot_product(b,c)*(scale**2)/(bmod*cmod))*180/3.1415926                                                           
gamma=acos(dot_product(a,b)*(scale**2)/(amod*bmod))*180/3.1415926
!charge part
open(12,file='ms.grd',status='replace')
write(12,'(A)')"DMol3 spin density"
write(12,'(A)')'(1p,e12.5)'
write(12,'(6f8.3)')amod,bmod,cmod,alpha,beta,gamma
write(12,'(3I5)')NGX-1,NGY-1,NGZ-1
write(12,'(7I5)')1,-(NGX/2-1),NGX/2,-(NGY/2-1),NGY/2,-(NGZ/2-1),NGZ/2
allocate(chgdata1(NGX,NGY,NGZ))
allocate(chgdata2(NGX,NGY,NGZ))
!--将电荷密度数据存入数组chgdata中----
read(11,*)chgdata1
do i=1,57
read(13,*)
enddo
read(13,*)chgdata2
!-------------------------------------
VOL=scale*scale*scale*(a(1)*b(2)*c(3)+a(2)*b(3)*c(1)+a(3)*b(1)*c(2)&
&-a(1)*b(3)*c(2)-a(2)*b(1)*c(3)-a(3)*b(2)*c(1))
write(*,*)VOL
do i=1,NGZ
do j=1,NGY
  do k=1,NGX
  write(12,'(6E12.5)')(chgdata1(k,j,i)-chgdata2(k,j,i))/VOL
  enddo
enddo
enddo
write(*,*)"Write charge density successfully!!!"

end subroutine
3楼2011-10-22 23:23:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hn19870519

木虫 (正式写手)

【答案】应助回帖

youzhizhe: 建议直接上传附件。 2011-10-22 23:43:51
贴一个我自己用的程序。。。笑脸的地方改成 冒号)
期待高手来指正
4楼2011-10-22 23:25:26
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

CXC_小草

银虫 (正式写手)

引用回帖:
2楼: Originally posted by hn19870519 at 2011-10-22 23:22:16:
楼主怎么能用excel处理CHGCAR呢。。。自己编个几十行的程序就可以搞定。。。

我对程序很无奈啊!我确实不会,希望大侠拯救一下下啊!!!
5楼2011-10-23 11:39:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

CXC_小草

银虫 (正式写手)

引用回帖:
3楼: Originally posted by hn19870519 at 2011-10-22 23:23:51:
subroutine chgdiff
!################################################
!DMol3 total electron density            
!(1p,e12.5)  
!   9.000   8.200   9.400  90.000  90.000  90.000
!   45   41   47
...

你好,这个需要怎么用呢?
6楼2011-10-23 11:42:42
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

lushunqi

禁虫 (小有名气)

本帖内容被屏蔽

7楼2011-10-24 09:00:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

CXC_小草

银虫 (正式写手)

引用回帖:
3楼: Originally posted by hn19870519 at 2011-10-22 23:23:51:
subroutine chgdiff
!################################################
!DMol3 total electron density            
!(1p,e12.5)  
!   9.000   8.200   9.400  90.000  90.000  90.000
!   45   41   47
...

我在linux下无法运行啊!求教用法!
8楼2011-10-24 10:44:21
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sgquan

铁杆木虫 (著名写手)

学习了!
9楼2011-10-24 11:18:08
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

anuil

新虫 (初入文坛)

【答案】应助回帖

★ ★
franch: 金币+2, 谢谢回帖交流 2014-01-13 22:15:33
我用的是一个小插件,chgdiff.pl,你可以用这个的啊
一定不要浪费了好资源
10楼2014-01-13 11:03:39
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 CXC_小草 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[论文投稿] 岩土工程学报什么时候才能终审完呐 25+3 yeager111 2026-08-10 4/200 2026-08-16 20:42 by tfang
[基金申请] 时间戳又变了8-15 +13 archvillain 2026-08-15 25/1250 2026-08-16 20:13 by zhaosm1982
[基金申请] 2027广东省杰青 +3 奶牛小黑 2026-08-15 6/300 2026-08-16 20:07 by 奶牛小黑
[基金申请] 快农历七夕节了,轻松一下,男人悄悄话,女施主请不要进来。 +3 Tide man 2026-08-14 3/150 2026-08-16 17:47 by jurkat.1640
[基金申请] 咱们一起用铁证分析2026国家社科基金中标与否 +7 启萌科技 2026-08-12 26/1300 2026-08-16 12:35 by 启萌科技
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +11 家与远方 2026-08-10 16/800 2026-08-16 10:28 by ray43
[基金申请] 有时候,自然基金真的不能太认真 (我的申报经验) +10 majunge000 2026-08-11 12/600 2026-08-16 08:18 by xli1984
[精细化工] 招聘 金属平磨液,抛光液研发工程师 +3 小天0311 2026-08-14 3/150 2026-08-16 07:31 by H9PLUS
[基金申请] filecode +8 cratir 2026-08-14 12/600 2026-08-15 18:08 by zyfgau
[基金申请] 小木虫上这么多卖论文的,真有人买论文么?感觉没必要啊 +12 Tide man 2026-08-10 13/650 2026-08-15 16:34 by 氺木
[基金申请] 是这周出结果还是下周出结果? +4 yuleib84 2026-08-11 4/200 2026-08-14 23:05 by lfy8008
[基金申请] 奇怪,两个人的filecode固定段从头到尾一模一样 +8 布布和一二 2026-08-10 11/550 2026-08-14 14:58 by Equinoxhua
[硕博家园] 读博的好处 +4 lnee 2026-08-11 4/200 2026-08-14 10:20 by ahsoarli
[基金申请] filecode +15 documentary 2026-08-10 17/850 2026-08-14 10:08 by kissu88
[基金申请] 静等基金结果 +8 gjjjzhong 2026-08-10 21/1050 2026-08-13 17:56 by 且听虎啸
[基金申请] 重要来源:本周末出结果 +10 瞬息宇宙 2026-08-12 10/500 2026-08-13 15:46 by likettle
[基金申请] 不应该看fileCode +7 且听虎啸 2026-08-12 9/450 2026-08-13 14:27 by flydreamws
[基金申请] 分享一下我之前已中青C的计划书的filecode +4 布布和一二 2026-08-11 5/250 2026-08-13 12:56 by cratir
[基金申请] 2019年青年基金涵评意见,大家看看几个A,几个B? +11 Tide man 2026-08-11 11/550 2026-08-13 07:35 by 撸猫猫
[基金申请] 为什么网上很多人说本周 12号出结果 +6 瞬息宇宙 2026-08-10 7/350 2026-08-11 19:25 by Tide man
信息提示
请填处理意见