include 'COMMON.TIME1'
include 'COMMON.MD'
double precision z(dimen3),d_a_tmp(dimen3),temp(maxres6),time00
- &time01
+ &,time01,zcopy(dimen3)
#ifdef MPI
if (nfgtasks.gt.1) then
if (fg_rank.eq.0) then
time00=MPI_Wtime()
call MPI_Scatterv(z,ng_counts(0),ng_start(0),
& MPI_DOUBLE_PRECISION,
- & z,3*my_ng_count,MPI_DOUBLE_PRECISION,king,FG_COMM,IERR)
+ & zcopy,3*my_ng_count,MPI_DOUBLE_PRECISION,king,FG_COMM,IERR)
c write (2,*) "My chunk of z"
-c do i=1,3*my_ng_count
+ do i=1,3*my_ng_count
+ z(i)=zcopy(i)
c write (2,*) i,z(i)
-c enddo
+ enddo
c write (2,*) "After SCATTERV"
c call flush(2)
c write (2,*) "MPI_Wtime",MPI_Wtime()
include 'COMMON.LANGEVIN.lang0'
#endif
double precision z(dimen3),d_a_tmp(dimen3),temp(maxres6),time00
- &time01
+ &,time01,zcopy(dimen3)
#ifdef MPI
if (nfgtasks.gt.1) then
if (fg_rank.eq.0) then
time00=MPI_Wtime()
call MPI_Scatterv(z,ng_counts(0),ng_start(0),
& MPI_DOUBLE_PRECISION,
- & z,3*my_ng_count,MPI_DOUBLE_PRECISION,king,FG_COMM,IERR)
+ & zcopy,3*my_ng_count,MPI_DOUBLE_PRECISION,king,FG_COMM,IERR)
c write (2,*) "My chunk of z"
-c do i=1,3*my_ng_count
+ do i=1,3*my_ng_count
+ z(i)=zcopy(i)
c write (2,*) i,z(i)
-c enddo
+ enddo
time_scatter=time_scatter+MPI_Wtime()-time00
#ifdef TIMING
time_scatter_fmatmult=time_scatter_fmatmult+MPI_Wtime()-time00