47!||--- uses -----------------------------------------------------
55 USE spmd_comm_world_mod,
ONLY : spmd_comm_world
56#include "implicit_f.inc"
70 DOUBLE PRECISION FS6(LEN)
75 INTEGER MSGOFF,MSGTYP,INFO,,PMAIN, LOC_PROC, J, L,
76 . IDEB, NBINDEX, INDEX, REQ(NSPMD-1)
78 INTEGER STATUS(MPI_STATUS_SIZE),IERROR
79 DOUBLE PRECISION FTMP(LEN*(NSPMD-1))
85 IF(loc_proc==pmain)
THEN
89 IF(loc_proc/=p.AND.fr(p)/=0)
THEN
93 CALL mpi_irecv(ftmp(ideb) ,len ,mpi_double_precision,it_spmd(p),
94 . msgtyp,spmd_comm_world,req(l),ierror )
105 fs6(j) = fs6(j) + ftmp(ideb+j)
110 IF(loc_proc/=p.AND.fr(p)/=0)
THEN
112 CALL mpi_send(fs6 ,len ,mpi_double_precision,it_spmd(p),
113 . msgtyp,spmd_comm_world,ierror)
118 IF(fr(loc_proc)/=0)
THEN
120 CALL mpi_send(fs6 ,len ,mpi_double_precision,it_spmd(pmain),
121 . msgtyp,spmd_comm_world,ierror)
122 CALL mpi_recv(fs6 ,len ,mpi_double_precision,it_spmd(pmain),
123 . msgtyp,spmd_comm_world,status,ierror )
subroutine mpi_recv(buf, cnt, datatype, source, tag, comm, status, ierr)
subroutine mpi_send(buf, cnt, datatype, dest, tag, comm, ierr)
subroutine mpi_waitany(cnt, array_of_requests, index, status, ierr)
subroutine mpi_irecv(buf, cnt, datatype, source, tag, comm, ireq, ierr)
subroutine rgwal0_imp(x, d, v, rwbuf, lprw, nprw, ms, fsav, fr_wall, fopt, rwsav, weight, fsavd, nt_rw, iddl, ikc, icomv, ndof, frwl6, weight_md, dimfb, fbsav6, stabsen, tabsensor, wfext, wfext_md)
subroutine rgwal0(x, a, v, rwbuf, lprw, nprw, ms, fsav, fr_wall, fopt, rwsav, weight, frwl6, nodnx_sms, weight_md, dimfb, fbsav6, stabsen, tabsensor, wfext, wfext_md)
subroutine spmd_exch_fr6(fr, fs6, len)