34 2 TAG_LNK_SMS,NODNX_SMS,INDX1_SMS)
40 USE spmd_comm_world_mod,
ONLY : spmd_comm_world
41#include "implicit_f.inc"
56 INTEGER ICSIZE, NOD2ADD(*),LJOINT(*),FR_CJ(*),
57 . iadcj(nspmd+1,*), tag_lnk_sms(*), nodnx_sms(*),
63 INTEGER MSGTYP,MSGOFF,IERROR,LOC_PROC,NOD,L,I,J,N,
65 . indexi(nspmd),req_s(nspmd),status(mpi_status_size),
66 . len(nspmd),ibuf(icsize)
80 . len(i) = len(i)+iadcj(i+1,n)-iadcj(i,n)
86 IF(tag_lnk_sms(n)==0)cycle
87 DO j = iadcj(i,n), iadcj(i+1,n)-1
89 ibuf(ideb ) = nod2add(nod)
104 s ibuf(ideb),siz,mpi_integer,it_spmd(i),msgtyp,
105 g spmd_comm_world,req_s(l),ierror)
112 ELSEIF(icsize>0)
THEN
118 s ibuf,siz,mpi_integer,it_spmd(1),msgtyp,
119 g spmd_comm_world,status,ierror)
121 IF(tag_lnk_sms(n)==0)cycle
122 DO j = iadcj(1,n),iadcj(nspmd+1,n)-1
124 IF(nodnx_sms(nod)==0.AND.nod2add(nod)==0.AND.
126 nindx1_sms=nindx1_sms+1
127 indx1_sms(nindx1_sms)=nod
128 nodnx_sms(nod)=nindx1_sms
subroutine sms_build_diag(itask, nodft, nodlt, ms, nodii_sms, jad_sms, jdi_sms, lt_sms, diag_sms, indx1_sms, indx2_sms, iad_elem, fr_elem, npby, lpby, lad_sms, kad_sms, jrb_sms, mskyi_sms, iskyi_sms, jadi_sms, jdii_sms, lti_sms, nodxi_sms, fr_sms, fr_rms, list_sms, list_rms, mskyi_fi_sms, ilink, rlink, nnlink, lnlink, tag_lnk_sms, ljoint, iadcj, fr_cj, itab, weight, imv, mv, mv6, w6, nprw, lprw, fr_wall, nrwl_sms, tagmsr_rby_sms, rby, awork, x, a, ar, in, v, vr, tagslv_rby_sms, irbe2, lrbe2, irbe3, lrbe3, iad_rbe3m, fr_rbe3m)