12integer,
intent(in) :: ik
14integer ist,jst,iw,i,nthd
18complex(8) gs(nstsv),g(nstsv,nstsv),ge(4,nstsv,nstsv)
19complex(8) evecsv(nstsv,nstsv),d(nstsv,nstsv),a(nstsv,nstsv)
21complex(8),
allocatable :: se(:,:,:)
23complex(8),
external :: gwtails
25allocate(se(nstsv,nstsv,0:
nwfm))
28d(1:nstsv,1:nstsv)=0.d0
40 gs(ist)=1.d0/(
wfm(iw)-e)
45 g(ist,1:nstsv)=z1*se(ist,1:nstsv,iw)
46 g(ist,ist)=g(ist,ist)+1.d0
53 g(1:nstsv,jst)=g(1:nstsv,jst)*z1
56 d(1:nstsv,1:nstsv)=d(1:nstsv,1:nstsv)+g(1:nstsv,1:nstsv)
63 if (i /= 0) ge(i,1:nstsv,1:nstsv)=g(1:nstsv,1:nstsv)
70 d(ist,jst)=d(ist,jst)+
gwtails(ge(:,ist,jst))
75d(1:nstsv,1:nstsv)=t1*d(1:nstsv,1:nstsv)
80 z1=0.5d0*(d(ist,jst)+conjg(d(jst,ist)))
84 d(ist,ist)=dble(d(ist,ist))
93call zgemm(
'N',
'N',nstsv,nstsv,nstsv,
zone,evecsv,nstsv,d,nstsv,
zzero,a,nstsv)
complex(8), parameter zzero
complex(8), parameter zone
real(8), parameter kboltz
real(8), dimension(:,:), allocatable vkl
real(8), dimension(:,:), allocatable occsv
real(8), dimension(:,:), allocatable evalsv