46 USE spmd_comm_world_mod,
ONLY : spmd_comm_world
47#include "implicit_f.inc"
61 INTEGER NRBDIM,ICSIZE, IAD_RBY(*),FR_RBY6(*)
68 INTEGER MSGTYP,LOC_PROC,A_AR,L,I,J,K,IAD,IRB,
69 . MSGOFF,SIZ,IDEB, LEN,INDEX,NBINDEX,
70 . INDEXI(NSPMD),REQ_R(NSPMD),REQ_S(NSPMD)
71 INTEGER STATUS(MPI_STATUS_SIZE),IERROR
74 . rbuf(icsize*6*nrbdim), sbuf(icsize*6*nrbdim)
84 len = iad_rby(i+1)-iad_rby(i)
91 s rbuf(ideb),siz,mpi_double_precision,it_spmd(i),msgtyp,
92 g spmd_comm_world,req_r(l),ierror)
101 len = iad_rby(i+1)-iad_rby(i)
103#include "vectorize.inc"
107 sbuf(ideb) = rbf6(k,1,irb)
108 sbuf(ideb+1) = rbf6(k,2,irb)
109 sbuf(ideb+2) = rbf6(k,3,irb)
110 sbuf(ideb+3) = rbf6(k,4,irb)
111 sbuf(ideb+4) = rbf6(k,5,irb)
112 sbuf(ideb+5) = rbf6(k,6,irb)
121 len = iad_rby(i+1)-iad_rby(i)
125 s sbuf(ideb),siz,mpi_double_precision,it_spmd(i),msgtyp,
126 g spmd_comm_world,req_s(l),ierror)
131 CALL mpi_waitany(nbindex,req_r,index,status,ierror)
133 ideb = 1+(iad_rby(i)-1)*a_ar
134 len = iad_rby(i+1)-iad_rby(i)
136#include "vectorize.inc"
140 rbf6(k,1,irb)= rbf6(k,1,irb) + rbuf(ideb)
141 rbf6(k,2,irb)= rbf6(k,2,irb) + rbuf(ideb+1)
142 rbf6(k,3,irb)= rbf6(k,3,irb) + rbuf(ideb+2)
143 rbf6(k,4,irb)= rbf6(k,4,irb) + rbuf(ideb+3)
144 rbf6(k,5,irb)= rbf6(k,5,irb) + rbuf(ideb+4)
145 rbf6(k,6,irb)= rbf6(k,6,irb) + rbuf(ideb+5)
152 CALL mpi_waitany(nbindex,req_s,index,status,ierror)
169 . RBY6_C,SIZE_RBY6_C)
179 USE spmd_comm_world_mod,
ONLY : spmd_comm_world
180#include "implicit_f.inc"
188#include "com01_c.inc"
189#include "com04_c.inc"
194 INTEGER NRBDIM,ICSIZE, IAD_RBY(*),FR_RBY6(*),SIZE_RBY6_C
196 . rby6(8,6,nrbykin),rby6_c(2,6,size_rby6_c)
201 INTEGER MSGTYP,LOC_PROC,A_AR,L,I,J,K,IAD,IRB,
202 . msgoff,siz,ideb, len,index,nbindex,
203 . indexi(nspmd),req_r(nspmd),req_s(nspmd)
204 INTEGER STATUS(MPI_STATUS_SIZE),IERROR
207 . rbuf(icsize*6*nrbdim), sbuf(icsize*6*nrbdim)
217 len = iad_rby(i+1)-iad_rby(i)
224 s rbuf(ideb),siz,mpi_double_precision,it_spmd(i),msgtyp,
225 g spmd_comm_world,req_r(l),ierror)
234 len = iad_rby(i+1)-iad_rby(i)
236#include "vectorize.inc"
240 sbuf(ideb) = rby6(k,1,irb)
241 sbuf(ideb+1) = rby6(k,2,irb)
242 sbuf(ideb+2) = rby6(k,3,irb)
243 sbuf(ideb+3) = rby6(k,4,irb)
244 sbuf(ideb+4) = rby6(k,5,irb)
245 sbuf(ideb+5) = rby6(k,6,irb)
249 sbuf(ideb) = rby6_c(k,1,irb)
250 sbuf(ideb+1) = rby6_c(k,2,irb)
251 sbuf(ideb+2) = rby6_c(k,3,irb)
252 sbuf(ideb+3) = rby6_c(k,4,irb)
253 sbuf(ideb+4) = rby6_c(k,5,irb)
254 sbuf(ideb+5) = rby6_c(k,6,irb)
263 len = iad_rby(i+1)-iad_rby(i)
267 s sbuf(ideb),siz,mpi_double_precision,it_spmd(i),msgtyp,
268 g spmd_comm_world,req_s(l),ierror)
273 CALL mpi_waitany(nbindex,req_r,index,status,ierror)
275 ideb = 1+(iad_rby(i)-1)*a_ar
276 len = iad_rby(i+1)-iad_rby(i)
278#include "vectorize.inc"
282 rby6(k,1,irb)= rby6(k,1,irb) + rbuf(ideb)
283 rby6(k,2,irb)= rby6(k,2,irb) + rbuf(ideb+1)
284 rby6(k,3,irb)= rby6(k,3,irb) + rbuf(ideb+2)
285 rby6(k,4,irb)= rby6(k,4,irb) + rbuf(ideb+3)
286 rby6(k,5,irb)= rby6(k,5,irb) + rbuf(ideb+4)
287 rby6(k,6,irb)= rby6(k,6,irb) + rbuf(ideb+5)
291 rby6_c(k,1,irb)= rby6_c(k,1,irb) + rbuf(ideb)
292 rby6_c(k,2,irb)= rby6_c(k,2,irb) + rbuf(ideb+1)
293 rby6_c(k,3,irb)= rby6_c(k,3,irb) + rbuf(ideb+2)
294 rby6_c(k,4,irb)= rby6_c(k,4,irb) + rbuf(ideb+3)
295 rby6_c(k,5,irb)= rby6_c(k,5,irb) + rbuf(ideb+4)
296 rby6_c(k,6,irb)= rby6_c(k,6,irb) + rbuf(ideb+5)
303 CALL mpi_waitany(nbindex,req_s,index,status,ierror)