10integer,
intent(in) :: ik,l
11complex(8),
intent(in) :: expqmt(npcmtmax,natmtot)
12real(8),
intent(inout) :: pl
18integer idx(nstsv),ngp(nspnfv),igpig(ngkmax,nspnfv)
20complex(8),
allocatable :: wfmt(:,:,:,:),wfir(:,:,:)
21complex(8),
allocatable :: wfmtq(:,:,:,:),wfgkq(:,:,:)
22complex(8),
allocatable :: oq(:,:)
24complex(8),
external :: zmdet
29vkql(l)=vkql(l)+1.d0/dble(
ngridk(l))
39call genwfsvp(.false.,.false.,nst,idx,
ngdgc,
igfc,
vkl(:,ik),ngp,igpig,wfmt,
ngtc,&
42allocate(wfmtq(npcmtmax,natmtot,
nspinor,nst),wfgkq(ngkmax,
nspinor,nst))
43call genwfsvp(.false.,.true.,nst,idx,
ngdgc,
igfc,vkql,ngp,igpig,wfmtq,ngkmax, &
47call genolpq(nst,expqmt,ngp,igpig,wfmt,wfir,wfmtq,wfgkq,oq)
51pl=pl+atan2(z1%im,z1%re)
52deallocate(wfmt,wfir,wfmtq,wfgkq,oq)
subroutine genolpq(nst, expqmt, ngpq, igpqig, wfmt, wfir, wfmtq, wfgpq, oq)
subroutine genwfsvp(tsh, tgp, nst, idx, ngridg_, igfft_, vpl, ngp, igpig, wfmt, ld, wfir)
integer, dimension(3) ngdgc
integer, dimension(:,:), allocatable ivk
integer, dimension(:), allocatable igfc
integer, dimension(3) ngridk
real(8), dimension(:,:), allocatable vkl
integer, dimension(:,:,:), allocatable ivkik
real(8), dimension(:,:), allocatable evalsv