| 查看: 9071 | 回复: 94 | ||||||||||
| 【奖励】 本帖被评价64次,作者jpchou增加金币 50.8 个 | ||||||||||
[资源]
dos-procar.f90
|
||||||||||
|
???f???~С?????????]?????w???? ??????~????S????Щ???~???п???????~???????????~?x?x ???????^ PROCAR ???? (http://muchong.com/bbs/viewthread.php?tid=6657343) ??? PROCAR ??????????? PROCAR ?D?????????D??n??~????ò??????N?????y ????????X??~?????T????W??~?]?д????M?????? ???????????ò??????N????? ?????????????x????~??F?????????W?? ????????????W?I??~?????κγ??????????δ?????????? fortran, C, perl, python, shell script, ..... ???????????κ????????? ??????????????.... ???... ????????????????^? ???????????f??? ???????~ dos-procar.f ?@???????^?????????????W???????? ??????????@????~???Р??h???? ^_^" ???? ???????????? dos-procar.f90 ????a?N???? (????? dos-procar.f) ?M?????f???e????? (ps. ???е??_?^?????????~?????????o?P) ????????: 1) ?x? PROCAR (LORBIT=10) and OUTCAR 2) ?a?? total density of state (TDOS) and partial density of state (PDOS) of s-, p-, d-orbital 3) ??????????? DOS (LDOS) 1 !=========================================================================== 2 ! Program dos-procar.f90 : > ?_?^????е???????????? "!"?????????????"?f??" 3 ! INPUT FILES : OUTCAR, PROCAR 4 ! 5 ! Modified by JPCHOU, Nov. 2013 6 !=========================================================================== 7 implicit real*8(a-h,o-z) > FORTRAN?????????r???????棬???????f?????_?^?? a, b, c, ...h, o, p, q, ....z ?????????~???? real*8 8 character*64 tmp 9 dimension ddosP(4),ddosT(4) > ddosP and ddosT ??e?? "???????DOS" ?c "??????y?? DOS " > ???????~??e???? s-, p-, d-orbital, and total 10 allocatable wt( ,oc(:,:,:, ,eigen(:, ,ee( ,na( > wt: weight, oc: occupations, eigen: eigenvalue, ee: energy, na: number of atom11 allocatable gdosP(:, ,gdosT(:, 12 pi=4.0d0*atan(1.0d0) ; netot = 1001 > ?A?????????? 1000 ?c 13 allocate(ee(netot),gdosP(4,netot),gdosT(4,netot)) 14 open(1,file='OUTCAR') 15 !================================================================= 16 nline = 0 ; open(99,status='scratch') > ?@???????x? OUTCAR???K??? E-fermi ?@??? 17 111 read(1,'(a64)',end=222) tmp > ????????? E-fermi ????????? energy ?????? E-fermi 18 if(tmp(2:8) .eq. 'E-fermi') nline=nline+1 > open 99 ?@???n???????n~??????????~???????????w(memory, ????)?? 19 if(tmp(2:8) .eq. 'E-fermi') write(99,'(a64)') tmp 20 go to 111 21 222 rewind(99) 22 do i=1,nline ; read(99,*) tmp,tmp,fermi ; end do 23 close(99) 24 !================================================================= 25 write(6,'("fermi energy = ",f10.5)') fermi > 25~30 ?????c????g???? 26 write(6,'("enter the gaussian " ') ; read(5,*) gaussian > ?o??? Gaussian function ?? width27 write(6,'("ISPIN(1/2) = ? " ') ; read(5,*) ispin > ???V???????y???????? spin, ????@?Y????????? OUTCAR ??x???28 write(6,'("How many atoms are integrated? " ') ; read(5,*) Nna >?????? "??????" ????????w29 allocate(na(Nna)) 30 write(6,*) ' atom number :' ; read(5,*) na >?????? "??????" ???ǎ??w (?o???~?????POSCAR??????) 31 32 open( 7,file='PROCAR') 33 if(ispin .eq. 1) then 34 open(11,file='gdosP-s.dat') ; open(51,file='gdosT-s.dat') > ?????y?]?????SPIN 35 open(12,file='gdosP-p.dat') ; open(52,file='gdosT-p.dat') > ?t????n?? gdosP-s, p, d, A.dat (?@????????? DOS) 36 open(13,file='gdosP-d.dat') ; open(53,file='gdosT-d.dat') > gdosT-s, p, d, A.dat (?@????????y?? DOS) 37 open(14,file='gdosP-A.dat') ; open(54,file='gdosT-A.dat') > A: all 38 else if(ispin .eq. 2) then 39 open(11,file='gdosP-up-s.dat') ; open(51,file='gdosT-up-s.dat') > ??????y?п??] spin-polarization???t????n??? up and down 40 open(12,file='gdosP-up-p.dat') ; open(52,file='gdosT-up-p.dat') 41 open(13,file='gdosP-up-d.dat') ; open(53,file='gdosT-up-d.dat') 42 open(14,file='gdosP-up-A.dat') ; open(54,file='gdosT-up-A.dat') 43 44 open(21,file='gdosP-dn-s.dat') ; open(61,file='gdosT-dn-s.dat') 45 open(22,file='gdosP-dn-p.dat') ; open(62,file='gdosT-dn-p.dat') 46 open(23,file='gdosP-dn-d.dat') ; open(63,file='gdosT-dn-d.dat') 47 open(24,file='gdosP-dn-A.dat') ; open(64,file='gdosT-dn-A.dat') 48 else 49 write(6,*) 'Input ERROR, you must input 1 or 2 ' ; stop 50 end if 51 !=========================================================================== 52 do is=1,ispin > ?_??x? PROCAR?? ?????x?? spin-up and spin-down 53 if(is .eq. 1) read(7,'(a64)') tmp > ??]????????????? tmp ??x??? 54 read(7,'(16x,i3,20x,i4,19x,i4)') nk,nband,nion > ???K?c????(nk)~BAND????(nband)~?c??????(nion) 55 if(is .eq. 1) then 56 write(6,'("number of kpoints: ",i4)') nk 57 write(6,'("number of bands: ",i4)') nband 58 write(6,'("number of ions: ",i4)') nion 59 end if 60 emin = 9999.0 ; emax= -9999.0 61 allocate(wt(nk),eigen(nk,nband),oc(nk,nband,nion+1,4)) 62 do k=1,nk 63 read(7,'(a64)') tmp 64 read(7,'(10x,i3,5x,3f11.8,13x,f11.8)') kp,pt1,pt2,pt3,wt(k) > ?x?????K?c??????g?????c???? 65 read(7,'(a64)') tmp 66 do nb=1,nband 67 read(7,'(8x,9x,f14.8,7x,f12.8)') eigen(k,nb),occ > ?x???? eigenvalue ?c occupation 68 eigen(k,nb) = eigen(k,nb) - fermi > ??????? E-fermi??? fermi level ???? 0 ?c 69 if(eigen(k,nb) .gt. emax) emax=eigen(k,nb) > ???????????? 70 if(eigen(k,nb) .lt. emin) emin=eigen(k,nb) 71 read(7,'(a64)') tmp ; read(7,'(a64)') tmp 72 niont = nion +1 73 if(nion .eq. 1) niont = 1 74 do ion = 1,niont 75 read(7,'(3x,4f7.3)') (oc(k,nb,ion,j),j=1,4) 76 end do 77 read(7,'(a64)') tmp 78 end do 79 end do 80 ! ############################################################## 81 weight = 0.0 ; gdosP=0.0d0 ; gdosT=0.0d0 82 do k=1,nk ; weight = weight + wt(k) ; end do 83 do k=1,nk ; wt(k) = wt(k) / weight ; end do 84 estart_ev = int(emin -5.0) 85 eend_ev = int(emax +5.0) 86 de_ev = (eend_ev - estart_ev)/(netot-1) 87 do ne = 1,netot ; ee(ne) = estart_ev + (ne-1) * de_ev ; end do 88 ascal = 1.0/(gaussian*sqrt(pi)) 89 ! ############################################################### 90 do k=1,nk ; do nb=1,nband 91 do i=1,4 ; ddosT(i) = oc(k,nb,niont,i)*wt(k) ; end do 92 do i=1,4 ; ddosP(i) = sum(oc(k,nb,na( ,i)*wt(k)) ; end do93 do ne=1,netot 94 dij = ( eigen(k,nb)-ee(ne) )**2 / (gaussian**2) 95 do i=1,4 96 gdosT(i,ne) = gdosT(i,ne) + ascal*ddosT(i)*exp(-dij) 97 gdosP(i,ne) = gdosP(i,ne) + ascal*ddosP(i)*exp(-dij) 98 end do 99 end do 100 end do ; end do 101 ! ############################################################### 102 if(is .eq. 1) ns=+1 ; if(is .eq. 2) ns=-1 103 do i=1,4 ; write(is*10+i ,1) (ee(j),ns*gdosP(i,j),j=1,netot) ; end do 104 do i=1,4 ; write(is*10+i+40,1) (ee(j),ns*gdosT(i,j),j=1,netot) ; end do 105 deallocate(wt,eigen,oc) 106 end do 107 !=========================================================================== 108 1 format(f10.5,f12.4) 109 end ?????? ??????.............................................................. ??l?X??????U?????~??????ж?????fЩ??N ???@?????]Ч??????? ??????????y ???????X??....... ????????????d????????????? ???.... ??????????? ???ж?????? ???????????}?????????????f???? ????????? ?@?????????^??Ч??????? ?????????? dos-procar.f ??????? ??????????~??????? |
» 本帖附件资源列表
-
欢迎监督和反馈:小木虫仅提供交流平台,不对该内容负责。
本内容由用户自主发布,如果其内容涉及到知识产权问题,其责任在于用户本人,如对版权有异议,请联系邮箱:xiaomuchong@tal.com - 附件 1 : dos-procar.f90
2013-11-25 18:52:54, 4.89 K
» 收录本帖的淘帖专辑推荐
VASP | 第一性原理相关文档 | VASP | vasp |
VASP | 模拟,理论 | 软件 | 学术 |
» 本帖已获得的红花(最新10朵)
» 猜你喜欢
自荐读博
已经有8人回复
投稿Elsevier的杂志(返修),总是在选择OA和subscription界面被踢皮球
已经有8人回复
自然科学基金委宣布启动申请书“瘦身提质”行动
已经有4人回复
求个博导看看
已经有18人回复
» 本主题相关价值贴推荐,对您同样有帮助:
|
???x souledge ???? ???? souledge ?????Z???????^?????? (????????memory ????~?? hard disk ???? ????Q????????ゃ????????...?) ?a??????}??? ???????????????T write(6,'("fermi energy = ",f10.5)') fermi write(6,'("enter the gaussian " ) ' ) ; read(5,*) gaussian write(6,'("ISPIN(1/2) = ? " ) ' ) ; read(5,*) ispin ?@??Θ?????????? write(6,'("fermi energy = ",f10.5)') fermi write(6,'("enter the gaussian " ) ' ) read(5,*) gaussian write(6,'("ISPIN(1/2) = ? " ) ' ) read(5,*) ispin ?????????????д?????????? ?????F????XΞ???????????l?(??Ξ? 16:9) ???????g???????? ??С???????????~???????Ξ??e???????CODE ???????????M??l? ???????S????????? " ; " ????? code ?????? ?@?????????????????? ?????????????X???? ????f????? |
10楼2013-11-26 16:32:07
12楼2013-11-26 22:19:59
69楼2015-08-31 04:14:28
71楼2015-08-31 16:10:55
2楼2013-11-25 19:36:18
4楼2013-11-25 19:55:36
5楼2013-11-25 21:46:51
6楼2013-11-26 00:15:28
7楼2013-11-26 01:15:52
8楼2013-11-26 13:22:49
9楼2013-11-26 16:02:27
13楼2013-11-26 23:05:50
14楼2013-11-26 23:19:28
|
CPU~~~~这个就不说了…… > 台灣這有些人叫"處理器" ~ 有些人就叫它CPU > 大陆翻译亦是“处理器”。不过更多人习惯于用英文的缩写CPU。 RAM(Memory):内存-记忆体 Hard Disk:硬盘-硬碟 Mouse:鼠标-滑鼠 > 那游標你們那邊叫啥? 就是畫面上鼠標控制的小箭頭 > 好像没有什么固定的叫法,偶尔叫鼠标,偶尔叫箭头,偶尔叫指针…… Software:软件-软体 Program:程序-程式 File:文件-档案 Operating System:操作系统-作業系統 Code:代码-程式码(是这样么?) > 是~或只叫"程式" compile : 編譯 ~ 你們叫啥? > the same,也是编译,不过是简体版的汉字而已, |
15楼2013-11-26 23:47:22
16楼2013-11-26 23:48:24
17楼2013-11-27 00:35:31
18楼2013-11-27 09:53:02
19楼2013-11-27 14:53:08
26楼2014-03-05 16:39:58
40楼2014-07-31 10:27:22
43楼2014-08-28 17:27:19
45楼2014-09-21 18:18:07
47楼2014-09-24 08:16:04
48楼2014-09-24 13:35:23
49楼2014-09-24 14:40:08
|
???????? ??????????????Y??????S??????????? ?????????????????w? ????? nanotube? ????? fullerene? http://www.nanotube.msu.edu/fullerene/fullerene.php?C=96 ?@??? D3d symmetry ?? C96 ? unit cell ?????? ??????N PDOS ~ ??~ ??l?F??N? |
50楼2014-09-24 15:26:55
简单回复
dx06203楼
2013-11-25 19:43
回复
五星好评 顶一下,感谢分享!
sars51811楼
2013-11-26 18:20
回复
五星好评 感谢分享
chuanghua30420楼
2013-11-29 14:47
回复
五星好评 谢谢分享!
guichenxia21楼
2013-11-30 10:53
回复
五星好评 顶一下,感谢分享!
victemww22楼
2013-12-10 11:59
回复
五星好评 顶一下,感谢分享!
木野狐23楼
2014-01-02 10:52
回复
五星好评 顶一下,感谢分享!
wuli824楼
2014-02-09 18:30
回复
五星好评 



木野狐25楼
2014-02-25 11:02
回复
顶一下,感谢分享!
木野狐27楼
2014-03-06 10:51
回复
顶一下,感谢分享!
2008089028楼
2014-04-09 18:00
回复
五星好评 顶一下,感谢分享!
漫天飘雪29楼
2014-04-10 11:18
回复
五星好评 顶一下,感谢分享!
113468457130楼
2014-04-11 11:57
回复
五星好评 顶一下,感谢分享!
29701457931楼
2014-04-16 20:38
回复
五星好评 顶一下,感谢分享!
shyzhhx1332楼
2014-05-15 11:19
回复
五星好评 顶一下,感谢分享!
liuzhun16833楼
2014-05-16 17:06
回复
五星好评 顶一下,感谢分享!
haizhiwuyu34楼
2014-05-28 15:42
回复
五星好评 顶一下,感谢分享!
高宁1992010635楼
2014-06-19 19:30
回复
五星好评 顶一下,感谢分享!
前田庆次36楼
2014-06-20 12:22
回复
五星好评 顶一下,感谢分享!
beibeilover37楼
2014-06-30 15:34
回复
五星好评 顶一下,感谢分享!
liancsh38楼
2014-07-04 17:15
回复
五星好评 顶一下,感谢分享!
102424790039楼
2014-07-24 14:43
回复
五星好评 顶一下,感谢分享!
yh316641楼
2014-08-01 10:43
回复
五星好评 顶一下,感谢分享!
哈哈呵呵哈哈42楼
2014-08-09 14:33
回复
五星好评 顶一下,感谢分享!
泽润东方44楼
2014-09-20 11:31
回复
五星好评 顶一下,感谢分享!
无所谓10946楼
2014-09-23 09:40
回复
五星好评 顶一下,感谢分享!








,oc(:,:,:,
') ; read(5,*) gaussian > ?o??? Gaussian function ?? width
回复此楼
afan0012
果然离着台湾比较近,了解的更多啊~