6 subroutine wfirsv_sp(tgp,nst,idx,ngridg_,igfft_,ngp,igpig,evecfv,evecsv,ld,wfir)
11 logical,
intent(in) :: tgp
12 integer,
intent(in) :: nst,idx(*),ngridg_(3),igfft_(*)
13 integer,
intent(in) :: ngp(nspnfv),igpig(ngkmax,nspnfv)
14 complex(8),
intent(in) :: evecfv(nmatmax,nstfv,nspnfv),evecsv(nstsv,nstsv)
15 integer,
intent(in) :: ld
16 complex(4),
intent(out) :: wfir(ld,nspinor,nst)
20 integer n,igp,j,k,nthd
24 complex(4) wfgp(ngkmax)
36 k=merge(j,idx(j),tasv)
48 z1=evecsv((ispn-1)*nstfv+ist,k)
49 if (abs(z1%re)+abs(z1%im) < 1.d-12) cycle
52 wfir(1:n,ispn,j)=wfir(1:n,ispn,j)+z1*evecfv(1:n,ist,jspn)
56 wfgp(1:n)=wfgp(1:n)+z1*evecfv(1:n,ist,jspn)
61 wfir(1:ld,ispn,j)=0.e0
63 wfir(igfft_(igpig(igp,jspn)),ispn,j)=wfgp(igp)
65 call cfftifc(3,ngridg_,1,wfir(:,ispn,j))
72 wfir(1:n,1,j)=evecfv(1:n,k,1)
76 wfir(igfft_(igpig(igp,1)),1,j)=t0*evecfv(igp,k,1)
78 call cfftifc(3,ngridg_,1,wfir(:,1,j))
subroutine cfftifc(nd, n, sgn, c)
subroutine holdthd(nloop, nthd)
subroutine wfirsv_sp(tgp, nst, idx, ngridg_, igfft_, ngp, igpig, evecfv, evecsv, ld, wfir)
integer, dimension(2) jspnfv