11 complex(4),
intent(in) :: wfmt(npcmtmax,natmtot,nspinor,nstsv)
12 complex(8),
intent(inout) :: vmat(nstsv,nstsv)
14 integer ist1,ist2,ist3
15 integer is,ia,ias,m,nthd
18 complex(4) wfcr(npcmtmax,2),cfmt(npcmtmax)
19 complex(8) v(nstsv,nstsv)
21 complex(4),
allocatable :: crhomt(:,:)
23 complex(8),
external :: zcfmtinp
24 allocate(crhomt(npcmtmax,nstsv))
43 do m=-
ksp(ist3,is),
ksp(ist3,is)-1
52 call crho2(npc,wfcr,wfcr(:,2),wfmt(:,ias,1,ist1), &
53 wfmt(:,ias,2,ist1),cfmt)
55 call crho1(npc,wfcr,wfmt(:,ias,1,ist1),cfmt)
57 call cfsht(nrc,nrci,cfmt,crhomt(:,ist1))
65 v(ist1,ist2)=v(ist1,ist2)-zcfmtinp(nrc,nrci,
wr2cmt(:,is), &
80 v(ist1,ist2)=conjg(v(ist2,ist1))
83 v(ist1,ist1)=dble(v(ist1,ist1))
88 vmat(1:nstsv,1:nstsv)=vmat(1:nstsv,1:nstsv)+v(1:nstsv,1:nstsv)
93 pure subroutine crho1(n,wf1,wf2,crho)
95 integer,
intent(in) :: n
96 complex(4),
intent(in) :: wf1(n),wf2(n)
97 complex(4),
intent(out) :: crho(n)
98 crho(1:n)=conjg(wf1(1:n))*wf2(1:n)
101 pure subroutine crho2(n,wf11,wf12,wf21,wf22,crho)
103 integer,
intent(in) :: n
104 complex(4),
intent(in) :: wf11(n),wf12(n),wf21(n),wf22(n)
105 complex(4),
intent(out) :: crho(n)
106 crho(1:n)=conjg(wf11(1:n))*wf21(1:n)+conjg(wf12(1:n))*wf22(1:n)
integer, dimension(maxstsp, maxspecies) ksp
integer, dimension(maxspecies) npcmt
integer, dimension(maxatoms, maxspecies) idxas
subroutine cfsht(nr, nri, cfmt1, cfmt2)
subroutine vclcore(wfmt, vmat)
logical, dimension(maxstsp, maxspecies) spcore
real(8), dimension(:,:,:), allocatable rlcmt
pure subroutine wavefcr(tsh, lrstp, is, ia, ist, m, ld, wfcr)
real(8), dimension(:,:,:), allocatable wprcmt
pure subroutine crho1(n, wf1, wf2, crho)
integer, dimension(maxspecies) natoms
real(8), dimension(:,:), allocatable wr2cmt
pure subroutine crho2(n, wf11, wf12, wf21, wf22, crho)
subroutine holdthd(nloop, nthd)
integer, dimension(maxspecies) nstsp
pure subroutine cpotclmt(nr, nri, ld, rl, wpr, crhomt, cvclmt)
integer, dimension(maxspecies) nrcmt
integer, dimension(maxspecies) nrcmti