C---*----1----*----2----*----3----*----4----*----5----*----6----*----7 SUBROUTINE CHGAVR(KOPR,NOPR,KIMG) IMPLICIT REAL(A-H,O-Y) IMPLICIT COMPLEX(Z) INCLUDE 'PACVPP' DIMENSION NPPP(KNG,KO) DIMENSION TAA(3,KO) !XOCL SUBPROCESSOR PT(IPARA)=PQ(1:IPARA) !XOCL INDEX PARTITION IQ=(PT,INDEX=1:KO,PART=BAND) !XOCL LOCAL NPPP(:,/IQ),TAA(:,/IQ) EQUIVALENCE (NGPT,NPPP),(TAU,TAA) FI = 1.D0/DFLOAT(NOPR) ZI = CMPLX(0.0D0,1.0D0) C--*-- CASE FOR REAL CHARGE DO 200 NG = 1,KG ZXXX(NG) = CMPLX(0.D0,0.0D0) 200 CONTINUE !XOCL SPREAD DO /IQ DO 210 NO = 1,NOPR TX = TAA(1,NO) TY = TAA(2,NO) TZ = TAA(3,NO) DO 220 NG = 1,KG NGP= NPPP(NG,NO) FX = GX(NGP) FY = GY(NGP) FZ = GZ(NGP) FP = FX*TX + FY*TY + FZ*TZ FC = EXP(ZI*FP) ZCR= ZCHG(NGP) ZXXX(NG) = ZXXX(NG) + FC*ZCR 220 CONTINUE 210 CONTINUE !XOCL END SPREAD SUM(ZXXX) DO 230 NG = 1,KG ZCHG(NG) = ZXXX(NG) *FI 230 CONTINUE RETURN END