13 real(8),
intent(in) :: vmt(npmtmax,natmtot),vir(ngtot)
14 complex(8),
intent(out) :: vmat(nstsv,nstsv,nkpt)
16 integer ik,ispn,is,ias
17 integer nrc,nrci,n,lp,nthd
19 real(8) vmtc(npcmtmax,natmtot),virc(ngtc)
21 complex(8),
allocatable :: apwalm(:,:,:,:,:),evecfv(:,:),evecsv(:,:)
22 complex(4),
allocatable :: wfmt(:,:,:,:),wfgk(:,:,:)
33 call rfmtftoc(nrc,nrci,vmt(:,ias),vmtc(:,ias))
35 call rbshtip(nrc,nrci,vmtc(:,ias))
59 sfacgk(:,:,ispn,ik),apwalm(:,:,:,:,ispn))
66 igkig(:,:,ik),apwalm,evecfv,evecsv,wfmt,
ngkmax,wfgk)
67 call genvmatk(vmtc,virc,
ngk(:,ik),
igkig(:,:,ik),wfmt,
ngkmax,wfgk,vmat(:,:,ik))
70 deallocate(apwalm,evecfv,evecsv,wfmt,wfgk)
78 call mpi_bcast(vmat(:,:,ik),n,mpi_double_complex,lp,
mpicom,
ierror)
subroutine rbshtip(nr, nri, rfmt)
subroutine getevecsv(fext, ikp, vpl, evecsv)
integer, dimension(3) ngridg
subroutine getevecfv(fext, ikp, vpl, vgpl, evecfv)
subroutine match(ngp, vgpc, gpc, sfacgp, apwalm)
subroutine genvmat(vmt, vir, vmat)
pure subroutine rfcmtwr(nr, nri, wr, rfmt)
complex(8), dimension(:,:,:,:), allocatable sfacgk
integer, dimension(:,:), allocatable ngk
subroutine genvmatk(vmt, vir, ngp, igpig, wfmt, ld, wfgp, vmat)
integer, dimension(:), allocatable igfft
subroutine genwfsv_sp(tsh, tgp, nst, idx, ngridg_, igfft_, ngp, igpig, apwalm, evecfv, evecsv, wfmt, ld, wfir)
real(8), dimension(:,:,:,:), allocatable vgkl
real(8), dimension(:,:,:,:), allocatable vgkc
real(8), dimension(:,:), allocatable vkl
real(8), dimension(:,:), allocatable wr2cmt
integer, dimension(maxatoms *maxspecies) idxis
real(8), dimension(:,:,:), allocatable gkc
subroutine holdthd(nloop, nthd)
integer, dimension(maxspecies) nrcmt
integer, dimension(maxspecies) nrcmti
pure subroutine rfmtftoc(nrc, nrci, rfmt, rfcmt)
integer, dimension(:,:,:), allocatable igkig
subroutine rfirftoc(rfir, rfirc)