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