47#include "implicit_f.inc"
59 INTEGER,
INTENT(in) :: NIN
60 INTEGER,
DIMENSION(NPARI,NINTER),
INTENT(in) :: IPARI
61 INTEGER,
DIMENSION(NINTER+1,NSPMD+1),
INTENT(in) :: ISENDTO,IRCVFROM
71 INTEGER :: NSN,NMN,IGAP,INTTH,INTFRIC,ITYP,ITIED
77 sort_comm(nin)%RSIZ = 0
78 sort_comm(nin)%ISIZ = 0
82 intfric = ipari(72,nin)
87 inacti = ipari(22,nin)
90 IF(inacti==5.OR.inacti==6.OR.inacti==7.OR.ifq>0.OR.itied/=0)
THEN
91 IF(.NOT.
ALLOCATED(inter_struct(nin)%NSNFIOLD) )
THEN
92 ALLOCATE(inter_struct(nin)%NSNFIOLD(nspmd))
93 inter_struct(nin)%NSNFIOLD(1:nspmd) = 0
96 inter_struct(nin)%NSNFIOLD(p) =
nsnfi(nin)%P(p)
99 sort_comm(nin)%NBSEND_NB = 0
100 sort_comm(nin)%NBRECV_NB = 0
102 IF(ircvfrom(nin,loc_proc)/=0.OR.isendto(nin,loc_proc)/=0)
THEN
104 IF(.NOT.
ALLOCATED(sort_comm(nin)%REQUEST_NB_R))
THEN
105 ALLOCATE(sort_comm(nin)%REQUEST_NB_R(nspmd) )
107 IF(.NOT.
ALLOCATED(sort_comm(nin)%REQUEST_NB_S))
THEN
108 ALLOCATE(sort_comm(nin)%REQUEST_NB_S(nspmd) )
110 IF(.NOT.
ALLOCATED(sort_comm(nin)%NB))
THEN
111 ALLOCATE(sort_comm(nin)%NB(nspmd) )
112 sort_comm(nin)%NB(1:nspmd) = 0
114 IF(.NOT.
ALLOCATED(sort_comm(nin)%INDEX_RCV))
THEN
115 ALLOCATE( sort_comm(nin)%INDEX_RCV(sort_comm(nin)%PROC_NUMBER) )
123 IF(igap==1 .OR. igap==2)
THEN
136 IF(intfric > 0 )
THEN
144 ELSEIF(idtmins_int/=0)
THEN
148 sort_comm(nin)%RSIZ = rsiz
149 sort_comm(nin)%ISIZ = isiz
151 IF(isendto(nin,loc_proc)>0)
THEN
152 IF(.NOT.
ALLOCATED(sort_comm(nin)%SEND_NB))
ALLOCATE(sort_comm(nin)%SEND_NB(nspmd))
154 IF(ircvfrom(nin,loc_proc)>0)
THEN
155 IF(.NOT.
ALLOCATED(sort_comm(nin)%RECV_NB))
ALLOCATE(sort_comm(nin)%RECV_NB(nspmd))