15real(8),
allocatable :: rhomt_(:,:),rhoir_(:),magmt_(:,:,:),magir_(:,:)
16complex(8),
allocatable :: apwalm(:,:,:,:,:),evecfv(:,:,:),evecsv(:,:)
24 allocate(magmt_(1,1,1),magir_(1,1))
45 sfacgk(:,:,ispn,ik),apwalm(:,:,:,:,ispn))
48 call rhomagk(
ngk(:,ik),
igkig(:,:,ik),
wkpt(ik),
occsv(:,ik),apwalm,evecfv, &
49 evecsv,rhomt_,rhoir_,magmt_,magir_)
52deallocate(apwalm,evecfv,evecsv)
58 call mpi_allreduce(mpi_in_place,rhomt_,n,mpi_double_precision,mpi_sum,
mpicom,&
60 call mpi_allreduce(mpi_in_place,rhoir_,
ngtc,mpi_double_precision,mpi_sum, &
64 call mpi_allreduce(mpi_in_place,magmt_,n,mpi_double_precision,mpi_sum, &
67 call mpi_allreduce(mpi_in_place,magir_,n,mpi_double_precision,mpi_sum, &
86deallocate(rhomt_,rhoir_,magmt_,magir_)
95call symrf(
nrcmt,
nrcmti,
npcmt,
ngdgc,
ngtc,
ngvc,
nfgrzc,
igfc,
igrzfc,
npmtmax,
rhomt,&
104 call symrvf(.true.,
ncmag,
nrcmt,
nrcmti,
npcmt,
ngdgc,
ngtc,
ngvc,
nfgrzc,
igfc, &
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
real(8), dimension(:), allocatable wkpt
real(8), dimension(:,:,:), allocatable gkc
real(8), dimension(:,:,:), pointer, contiguous magmt
integer, dimension(3) ngdgc
real(8), dimension(:), pointer, contiguous rhoir
integer, dimension(:,:), allocatable ngk
integer, dimension(:,:,:), allocatable igkig
integer, dimension(maxspecies) nrcmt
integer, dimension(:), allocatable igfc
integer, dimension(maxatoms *maxspecies) idxis
real(8), dimension(:,:,:,:), allocatable vgkl
integer, dimension(maxspecies) npcmt
real(8), dimension(:,:), pointer, contiguous magir
real(8), dimension(:,:), allocatable vkl
integer, dimension(:), allocatable igrzfc
real(8), dimension(:,:), pointer, contiguous rhomt
complex(8), dimension(:,:,:,:), allocatable sfacgk
integer, dimension(maxspecies) nrcmti
real(8), dimension(:,:), allocatable occsv
subroutine holdthd(nloop, nthd)
subroutine rfirctof(rfirc, rfir)
subroutine rfmtctof(rfmt)
subroutine rhomagk(ngp, igpig, wppt, occsvp, apwalm, evecfv, evecsv, rhomt_, rhoir_, magmt_, magir_)
subroutine symrf(nrmt_, nrmti_, npmt_, ngridg_, ngtot_, ngvec_, nfgrz_, igfft_, igrzf_, ld, rfmt, rfir)
subroutine symrvf(tspin, tnc, nrmt_, nrmti_, npmt_, ngridg_, ngtot_, ngvec_, nfgrz_, igfft_, igrzf_, ld1, rvfmt, ld2, rvfir)