24小时热门版块排行榜    

查看: 2282  |  回复: 1

adailbj

新虫 (初入文坛)

[求助] 侯博士说明里计算能带结构,gk.x产生gk.f后,输出文件KPOINTS内容空白 已有1人参与

新手学习,侯博士说明里计算能带结构,gk.x产生gk.f后,输出文件KPOINTS内容空白,不知道怎么回事、怎样调试?

附gk.x脚本
c    +---------------------------------------------------------
c    |  For generating k-points along the high-symmetry lines in
c    |  Brillouin zone and for calculate band-structures !
c    |
c    |  OK for "VASP" package
c    |                                Modified by   Hou Zhufeng
c    +----------------------------------------------------------
C    ---------'syml'---------
c    6                     : nhighk
c    20  20  20  10  20    : ndiv(i)
c    X 0.5    0.0    0.5   : labhk(1),phighk(1,1),........
c    G 0.0    0.0    0.0
c    L 0.5    0.5    0.5
c    W 0.5    0.25   0.75
c    K 0.375  0.375  0.75
c    G 0.0    0.0    0.0
cc   0.000  2.449  2.449  -0.204158033  0.204158033  0.204158033
cc   2.449  0.000  2.449   0.204158033 -0.204158033  0.204158033
cc   2.449  2.449  0.000   0.204158033  0.204158033 -0.204158033   
c    -20.0  20.0           :emin, emax
c    0.0                   :efermi
c    direct & reciprocal lattice vectors over 'emin, emax' line
C    -----------------------
c     max k-points = 200
      program  gk
      implicit real*8 (a-h,o-z)
      character*2 labhk
      dimension tkpt(200,3),pk(200,3),phighk(10,3)
      dimension disk(200),dish(10),labhk(10)
      dimension ndiv(10)
c
      open(5,file='syml',status='old')
      open(7,file='inp.kpt')
      open(8,file='KPOINTS')
c
      read(5,*) nhighk
      read(5,*) (ndiv(i),i=1,nhighk-1)

      do i=1,nhighk-1
            ntkp=ntkp+ndiv(i)
      enddo
      ntotkpt=ntkp+1  

      if(nhighk>10)then
        write(*,*)'Number of high-symmetry k points must < 10!'
        STOP
      endif
      if(ntotkpt>200)then
        write(*,*)'Total number of k points must <= 200!'
        STOP
      endif

      do i=1, nhighk
         read(5,*)  labhk(i),(phighk(i,j),j=1,3)
      enddo
      write(*,*) (labhk(i),i=1,nhighk)
c
c----- generating k-points along high symmetric lines --------
c
c
      pk(1,1)=phighk(1,1)
      pk(1,2)=phighk(1,2)
      pk(1,3)=phighk(1,3)
      ii=1
       do i = 2, nhighk
         delx = (phighk(i,1) - phighk(i-1,1))/float(ndiv(i-1))
         dely = (phighk(i,2) - phighk(i-1,2))/float(ndiv(i-1))
         delz = (phighk(i,3) - phighk(i-1,3))/float(ndiv(i-1))
           do j=1, ndiv(i-1)
              ii = ii + 1
              pk(ii,1) = pk(ii-1,1) + delx
              pk(ii,2) = pk(ii-1,2) + dely
              pk(ii,3) = pk(ii-1,3) + delz
           enddo
       enddo
c
      write(8,10)'k-points along high symmetry lines'
  10  format(A34)
      write(8,*)ntotkpt
      write(8,'(A10)')'Reciprocal'
         weight=1.d0
         do i=1,ntotkpt
         write(7,200) pk(i,1),pk(i,2),pk(i,3),weight
         write(8,200) pk(i,1),pk(i,2),pk(i,3),weight
         enddo
200  format(3F10.6,F6.2)
      stop
      end

终端显示的内容:
[root@localhost Al band]# chmod +x gk.x
[root@localhost Al band]# ./gk.x
Total number of k points must <= 200!
[root@localhost Al band]# ./gk.x syml
Total number of k points must <= 200!
[root@localhost Al band]#
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wobure

新虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
adailbj: 金币+6, ★★★★★最佳答案, 大神,真的可以,谢谢你 2016-07-28 16:55:53
在    do i=1,nhighk-1
            ntkp=ntkp+ndiv(i)
      enddo
      ntotkpt=ntkp+1  
前面加一句ntkp=0,试试
2楼2016-07-28 16:01:11
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 adailbj 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[博后之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 hKe7U1kad5Sg 2026-10-31 6/300 2026-11-02 06:39 by xzcv0Tehd8lQ
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 hKe7U1kad5Sg 2026-10-31 6/300 2026-11-02 06:20 by xzcv0Tehd8lQ
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 xvJS1BYDxvBS 2026-10-31 8/400 2026-11-02 06:13 by xzcv0Tehd8lQ
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 xvJS1BYDxvBS 2026-10-31 8/400 2026-11-02 06:07 by xzcv0Tehd8lQ
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 xvJS1BYDxvBS 2026-10-31 11/550 2026-11-02 06:00 by xzcv0Tehd8lQ
[基金申请] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-30 17/850 2026-11-02 05:50 by xzcv0Tehd8lQ
[找工作] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 1uaZt2kAZj2S 2026-10-31 9/450 2026-11-02 03:05 by xzcv0Tehd8lQ
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 1uaZt2kAZj2S 2026-10-30 16/800 2026-11-02 02:47 by xzcv0Tehd8lQ
[基金申请] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +7 X5bHxOULxFqb 2026-10-30 24/1200 2026-11-02 02:39 by xzcv0Tehd8lQ
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +3 hKe7U1kad5Sg 2026-10-31 6/300 2026-11-01 22:27 by xzcv0Tehd8lQ
[找工作] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 hKe7U1kad5Sg 2026-10-31 5/250 2026-11-01 22:27 by xzcv0Tehd8lQ
[找工作] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +4 1uaZt2kAZj2S 2026-10-30 11/550 2026-11-01 21:35 by xzcv0Tehd8lQ
[硕博家园] 越来越担心硕士毕业后没有竞争力了 +9 zuesli 2026-10-27 15/750 2026-11-01 12:59 by Equinoxhua
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 xvJS1BYDxvBS 2026-10-31 3/150 2026-11-01 12:53 by BCdvBAEpt3zm
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 xvJS1BYDxvBS 2026-10-31 5/250 2026-11-01 12:51 by BCdvBAEpt3zm
[公派出国] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-31 7/350 2026-11-01 12:40 by BCdvBAEpt3zm
[考博] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 1uaZt2kAZj2S 2026-10-30 10/500 2026-11-01 12:27 by BCdvBAEpt3zm
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 1uaZt2kAZj2S 2026-10-30 17/850 2026-11-01 12:24 by BCdvBAEpt3zm
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-30 11/550 2026-11-01 12:24 by BCdvBAEpt3zm
[考博] 2027博士申请-临床检验诊断学、病原生物学、微生物方向 50+3 yyh@ 2026-10-28 4/200 2026-10-31 12:47 by 可淡不可忘
信息提示
请填处理意见