LCOV - code coverage report
Current view: top level - wannier - wann_get_qpts.f (source / functions) Hit Total Coverage
Test: combined.info Lines: 0 37 0.0 %
Date: 2019-09-08 04:53:50 Functions: 0 1 0.0 %

          Line data    Source code
       1             :       module m_wann_get_qpts
       2             :       USE m_juDFT
       3             :       contains
       4           0 :       subroutine wann_get_qpts(
       5             :      >               l_bzsym,film,l_onedimens,l_readqpts,
       6           0 :      <               nqpts,qpoints,param_file)
       7             : c********************************************************
       8             : c     Read in the q-points from qpts file.
       9             : c 
      10             : c   
      11             : c********************************************************
      12             :       implicit none
      13             :       logical,intent(in)  :: l_bzsym,film
      14             :       logical,intent(in)  :: l_onedimens,l_readqpts
      15             :       integer,intent(out) :: nqpts
      16             :       real,intent(inout)  :: qpoints(:,:)
      17             :       character(len=20),intent(in) :: param_file
      18             : 
      19             :       real             :: scale
      20             :       !integer          :: at,j
      21             :       integer          :: iter!,len,num_wann,num_bands,nn,i
      22             :       logical          :: l_file
      23             : 
      24           0 :       if(l_bzsym)then
      25           0 :          inquire(file='w90qpts',exist=l_file)
      26           0 :          IF(.NOT.l_file) CALL juDFT_error("where is w90qpts?",calledby
      27           0 :      +        ="wann_get_qpts")
      28           0 :          open(987,file='w90qpts',status='old',form='formatted')
      29           0 :          read(987,*)nqpts, scale
      30           0 :          write(6,*)"wann_get_qpts: nqpts=",nqpts
      31           0 :          if(l_readqpts)then
      32           0 :             IF(SIZE(qpoints,1)/=3) CALL juDFT_error("wann_get_qpts: 1"
      33           0 :      +           ,calledby ="wann_get_qpts")
      34           0 :             IF(SIZE(qpoints,2)/=nqpts) 
      35             :      +         CALL juDFT_error("wann_get_qpts: 2",
      36           0 :      +                          calledby ="wann_get_qpts")
      37           0 :             do iter=1,nqpts
      38           0 :                read(987,*)qpoints(:,iter)
      39             :             enddo
      40             :          endif   
      41             :       else
      42           0 :          inquire(file=param_file,exist=l_file)
      43           0 :          IF(.NOT.l_file) CALL juDFT_error(
      44             :      >         "where is "//trim(param_file)//"?",calledby
      45           0 :      +        ="wann_get_qpts")
      46           0 :          open(987,file=param_file,status='old',form='formatted')
      47           0 :          read(987,*)nqpts,scale
      48           0 :          write(6,*)"wann_get_qpts: nqpts=",nqpts
      49           0 :          if(l_readqpts)then
      50           0 :             IF(SIZE(qpoints,1)/=3) CALL juDFT_error("wann_get_qpts: 1"
      51           0 :      +           ,calledby ="wann_get_qpts")
      52           0 :             IF(SIZE(qpoints,2)/=nqpts) 
      53             :      +         CALL juDFT_error("wann_get_qpts: 2",
      54           0 :      +                          calledby ="wann_get_qpts")
      55           0 :             do iter=1,nqpts
      56           0 :                read(987,*)qpoints(:,iter)
      57             :             enddo
      58             :          endif   
      59             :       endif
      60             : 
      61           0 :       close(987)
      62             : 
      63           0 :       if(l_readqpts)then
      64           0 :          qpoints=qpoints/scale !* 2.0 !2xBZ
      65           0 :          if(film.and..not.l_onedimens)then 
      66           0 :             qpoints(3,:)=0.0
      67             :          endif   
      68           0 :          do iter=1,nqpts
      69           0 :             write(6,*)qpoints(:,iter)
      70             :          enddo
      71             :       endif
      72             : 
      73           0 :       end subroutine wann_get_qpts
      74             :       end module m_wann_get_qpts

Generated by: LCOV version 1.13