13integer ik,ist,l,lp,nthd
18real(8),
allocatable :: jtk(:,:)
19complex(8),
allocatable :: evecsv(:,:),evecsvt(:,:)
20complex(8),
allocatable :: pmat(:,:,:),a(:,:),b(:,:)
22complex(8),
external :: zdotc
46 call zgemm(
'N',
'C',
nstsv,
nstsv,
nstsv,
zone,pmat(:,:,l),
nstsv,evecsv,
nstsv, &
48 call zgemm(
'N',
'N',
nstsv,
nstsv,
nstsv,
zone,evecsv,
nstsv,a,
nstsv,
zzero,b, &
50 call zgemm(
'N',
'N',
nstsv,
nstsv,
nstsv,
zone,b,
nstsv,evecsvt,
nstsv,
zzero,a, &
57 z1=zdotc(
nstsv,evecsvt(:,ist),1,a(:,ist),1)
58 jtk(l,ik)=jtk(l,ik)+t2*(z1%re+t1)
64deallocate(evecsv,evecsvt,pmat,a,b)
71 call mpi_bcast(jtk(:,ik),3,mpi_double_precision,lp,
mpicom,
ierror)
77 write(fext,
'("_TS",I8.8,".OUT")')
itimes
78 open(50,file=
'JTOTK'//trim(fext),form=
'FORMATTED',action=
'WRITE')
80 write(50,
'(I6,6G18.10)') ik,
vkl(:,ik),jtk(:,ik)
complex(8), parameter zzero
complex(8), parameter zone
real(8), dimension(:,:), allocatable vkl
real(8), dimension(:,:), allocatable occsv