34 + NBDDI2M ,I2NSN_L,PROBINT,IMAXIMP_L,NBI18_L ,
35 + NSKYI18_L,NSNT_L ,NMNT_L ,NSNT2_L ,NMNT2_L ,
36 + CEP ,IGRBRIC,IPARI_L ,
37 + NODLOCAL ,I2NSN25_L,INTERCEP, INTBUF_TAB,NUMNOR_L,
38 + I24MAXNSNE, MULTI_FVM,TAG,INDEX0,NINDEX0)
49#include "implicit_f.inc"
60 INTEGER PROC, NUMNOD_L,
61 . NBDDI2M, I2NSN_L, IMAXIMP_L, NBI18_L, NSKYI18_L,
62 . IPARI(NPARI,*), CEP(*),
63 . NSNT_L,NMNT_L,NSNT2_L,NMNT2_L,
64 . IPARI_L(NPARI,NINTER),NODLOCAL(*),I2NSN25_L,
67 INTEGER NBRIC_L, ISU1, NBRIC
68 INTEGER,
INTENT(INOUT) :: NINDEX0
69 INTEGER,
DIMENSION(*),
INTENT(INOUT) :: INDEX0,TAG
74 TYPE (GROUP_) ,
DIMENSION(NGRBRIC) :: IGRBRIC
78 TYPE(INTBUF_STRUCT_) INTBUF_TAB(*)
79 TYPE(multi_fvm_struct),
INTENT(IN) :: MULTI_FVM
88 INTEGER NI, NP, ITY, NRTS, NRTM, NSN, NMN,NMT,NMT_L,
89 . nlins, nlinm,nlinsa,nlinma,nsne, nmne, nln, nln_l,
90 . i_stok_l, nsn_l, nmn_l, nrtm_l, nrts_l, nlins_l,
91 . nlinm_l, nsne_l, nmne_l, n1l, n2l, n3l, n4l,
nl,
92 . nir, n, l, k, jj, m, n1, n2, n3, n4, kk, p, e, i, j,
93 . inacti,l24add,l24add_l,
94 . multimp, igap, ifq, iform, iok, iedge, nconte, multimpe, multimps,
95 . i_stok, ncont, nisub, nisubs_l, nisubm_l,nisubs, nisubm, nisube_l,
96 . ie, ign, ige, nad, ead,nuvar,ilev,intth,ncont1,ncont2,
97 . mtyp,nsnr,icurv,nrtm0,nrtm_sh,nrtm_sh_l,
98 . ii_stok,ii_stok_l,nremnode_l,flagremnode,
99 . kd_l(50),jd_l(50),kfi_l,jfi_l,nlinsa_l,nlinma_l,i22len1,
100 . nrtse,nrtse_l,nsn0,nadmsr,nadmsr_l,se1,nn,
101 . nrtm_fe,nrts_fe, nsn_fe ,nmn_fe ,nremnor_l,
102 . nedge, nedge_l, ii_stok_e, ii_stok_el, k1, k2,
103 . intnitsche, my_node,nremnode_e2s_l,
104 . nsn_ige,siz,nremnode_edg_l,em1,em2,es1,es2,ik,km1,km2,ks1,ks2
105 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TAGE, TAGE2
106 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TAGI2,TAGG
107 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TAG_SM
112 INTEGER SECND_SURFACE_ON_DOMAIN
113 EXTERNAL secnd_surface_on_domain
124 ALLOCATE(tagi2(numnod))
125 ALLOCATE(tagg(numnod))
129 ipari_l(1:npari,1:ninter)=ipari(1:npari,1:ninter)
152 IF(ity/=2.AND.ity/=7.AND.ity/=8.AND.ity/=9.AND.
153 . ity/=10.AND.ity/=11.AND.
154 . (ity/=17.OR.ipari(33,ni)/=0).AND.ity/=20.AND.
155 . ity/=21.AND.ity/=22.AND.ity/=23.AND.ity/=24.AND.
162 imaximp_l = imaximp_l + 2*nint((nmn+nsn)/probint)
163 ELSEIF(ity==5.OR.ity==6)
THEN
165 imaximp_l = imaximp_l + 2*nint
188 my_node = intbuf_tab(ni)%NSV(k)
189 IF( nodlocal(my_node)/=0.AND.nodlocal(my_node)<=numnod_l )
THEN
191 l = intbuf_tab(ni)%IRTLM(k)
194 IF(nlocal(intbuf_tab(ni)%NSV(k),p)==1)
GO TO 102
196 i2nsn_l = i2nsn_l + 1
200 ipari_l(5,ni) = nsn_l
203 IF (ilev == 25 .or. ilev == 26 .or. ilev == 27 .or. ilev == 28)
THEN
205 my_node = intbuf_tab(ni)%NSV(k)
206 IF( nodlocal(my_node)/=0.AND.nodlocal(my_node
THEN
207 i2nsn25_l = i2nsn25_l + 1
213 my_node = intbuf_tab(ni)%MSR(k)
214 IF( nodlocal(my_node)/=0.AND.nodlocal(my_node)<=numnod_l )
THEN
216 IF(tagi2(intbuf_tab(ni)%MSR(k))==0)
THEN
219 IF(nlocal(intbuf_tab(ni)%MSR(k),p)==1)
THEN
220 nbddi2m = nbddi2m + 1
224 nbddi2m = nbddi2m - 1
226 tagi2(intbuf_tab(ni)%MSR(k)) = 1
230 ipari_l(6,ni) = nmn_l
234 IF(tage(i)==1) nrtm_l = nrtm_l + 1
236 ipari_l(4,ni) = nrtm_l
240 nsnt2_l = nsnt2_l + nsn_l
241 nmnt2_l = nmnt2_l + nmn_l
244 IF (ilev==10 .OR. ilev==11 .OR. ilev==12)
THEN
246 ELSEIF (ilev==20 .OR. ilev==21 .OR. ilev==22)
THEN
252 ipari_l(4,ni) = nrtm_l
253 ipari_l(5,ni) = nsn_l
254 ipari_l(6,ni) = nmn_l
256 ELSEIF(ity==7.OR.ity==8.OR.ity==10.OR.
257 . ity==22.OR.ity==23.OR.ity==24.OR.
263 nrtm_fe = ipari(74,ni)
265 nsn_fe = ipari(78,ni)
266 nsn_ige= ipari(77,ni)
268 nmn_fe = ipari(80,ni)
271 inacti = ipari(22,ni)
272 multimp= ipari(23,ni)
279 l24add = ipari(59,ni)
282 nadmsr = ipari(67,ni)
284 intnitsche = ipari(86,ni)
285 multimpe = ipari(87,ni)
286 multimps = ipari(89,ni)
289 ELSEIF (ity == 7)
THEN
295 flagremnode = ipari(63,ni)
322 IF(intercep(1,ni)%P(k)==proc+1)
THEN
323 n1 = intbuf_tab(ni)%IRECTM(4*(k-1)+1)
324 n2 = intbuf_tab(ni)%IRECTM(4*(k-1)+2)
325 n3 = intbuf_tab(ni)%IRECTM(4*(k-1)+3)
330 n1 = intbuf_tab(ni)%MSR(n1)
331 n2 = intbuf_tab(ni)%MSR(n2)
332 n3 = intbuf_tab(ni)%MSR(n3)
333 n4 = intbuf_tab(ni)%MSR(n4)
357 IF (flagremnode == 2) nremnode_l = nremnode_l +
358 . intbuf_tab(ni)%KREMNODE(k+1)-intbuf_tab(ni)%KREMNODE(k)
363 IF(intercep(1,ni)%P(k)==proc+1)
THEN
364 n1 = intbuf_tab(ni)%IRECTM(4*(k-1)+1)
365 n2 = intbuf_tab(ni)%IRECTM(4*(k-1)+2)
366 n3 = intbuf_tab(ni)%IRECTM(4*(k-1)+3)
367 n4 = intbuf_tab(ni)%IRECTM(4*(k-1)+4)
369 n1 = intbuf_tab(ni)%MSR(n1)
370 n2 = intbuf_tab(ni)%MSR(n2)
371 n3 = intbuf_tab(ni)%MSR(n3)
372 n4 = intbuf_tab(ni)%MSR(n4)
382 IF (multi_fvm%IS_USED .AND. inacti == 7)
THEN
385 n = intbuf_tab(ni)%NSV(k)
386 IF (cep(n) == proc .AND. tag(n) == 0)
THEN
391 IF (flagremnode == 2.AND.ity==25)
THEN
392 l = intbuf_tab(ni)%KREMNOR(k+1)-intbuf_tab(ni)%KREMNOR(k)
393 nremnor_l = nremnor_l + l
401 IF(nodlocal(n)/=0.AND.nodlocal(n)<=numnod_l)
THEN
406 IF (flagremnode == 2.AND.ity==25)
THEN
407 l = intbuf_tab(ni)%KREMNOR(k+1)-intbuf_tab(ni)%KREMNOR(k)
408 nremnor_l = nremnor_l + l
413 DO k=nsn0+1,nsn0 + nsn_ige
414 n = intbuf_tab(ni)%NSV(k)
424#include "vectorize.inc"
431 ii_stok = intbuf_tab(ni)%I_STOK(1)
434 * inacti==5.OR.inacti==6.OR.inacti==7.OR.ifq/=0.OR.
435 * (ity==24.AND.inacti==-1).OR.
436 * (ity==25.AND.(inacti==-1.OR.inacti==5)))
THEN
440 n = intbuf_tab(ni)%CAND_N(k)
441 IF(intbuf_tab(ni)%STFNS(n)/=zero)iok=1
444 intbuf_tab(ni)%I_STOK(1)=0
449 e = intbuf_tab(ni)%CAND_E(k)
452 ii_stok_l = ii_stok_l + 1
461 IF (multi_fvm%IS_USED .AND. inacti == 7)
THEN
464 e = intbuf_tab(ni)%CAND_E(k)
466 n = intbuf_tab(ni)%CAND_N(k)
471 IF(intbuf_tab(ni)%NSV(n)<=numels)
THEN
472 IF(cep(intbuf_tab(ni)%NSV(n)) /= proc)
THEN
476 nn = intbuf_tab(ni)%NSV(n)-numels
477 se1 = intbuf_tab(ni)%IS2SE(2*(nn-1)+1)
478 IF(intercep(2,ni)%P(se1)/=(proc+1))
THEN
487 e = intbuf_tab(ni)%CAND_E(k)
489 n = intbuf_tab(ni)%CAND_N(k)
494 IF(intbuf_tab(ni)%NSV(n)<=numnod)
THEN
496 IF( nodlocal(my_node)==0.OR.nodlocal(my_node)>numnod_l )
THEN
500 nn = intbuf_tab(ni)%NSV(n)-numnod
501 se1 = intbuf_tab(ni)%IS2SE(2*(nn-1)+1)
502 IF(intercep(2,ni)%P(se1)/=(proc+1))
THEN
510#include "vectorize.inc"
520 IF (multi_fvm%IS_USED .AND. inacti == 7)
THEN
523 n = intbuf_tab(ni)%NSV(k)
525 IF(cep(n) == proc)
THEN
526 nisubs_l = nisubs_l + intbuf_tab(ni)%ADDSUBS(1+k) -
527 . intbuf_tab(ni)%ADDSUBS(k)
532 n = intbuf_tab(ni)%NSV(k)
534 IF( nodlocal(n)/=0.AND.nodlocal(n)<=numnod_l )
THEN
535 nisubs_l = nisubs_l + intbuf_tab(ni)%ADDSUBS(1+k) -
536 . intbuf_tab(ni)%ADDSUBS(k)
540 se1 = intbuf_tab(ni)%IS2SE(2*(nn-1)+1)
541 IF(intercep(2,ni)%P(se1)==(proc+1))
THEN
542 nisubs_l = nisubs_l + intbuf_tab(ni)%ADDSUBS(1+k) -
543 . intbuf_tab(ni)%ADDSUBS(k)
552 nisubm_l = nisubm_l + intbuf_tab(ni)%ADDSUBM(1+k) -
553 . intbuf_tab(ni)%ADDSUBM(k)
562 ncont = nint(nsn0*rcont)
563 IF(nmn_l>0.AND.nsn>0) ncont =
max(ncont,1)
565 IF(ncont > 0 .AND.ii_stok_l > multimp*ncont)
THEN
566 DO WHILE(ii_stok_l>multimp*ncont)
575 nsnt_l = nsnt_l + nsn_l
576 nmnt_l = nmnt_l + nmn_l
577 IF(ity==7.OR.ity==22.OR.ity==23)
THEN
580 nskyi18_l = nskyi18_l+nrtm_l
594 IF(intercep(1,ni)%P(k)==proc+1)
THEN
595 mtyp = intbuf_tab(ni)%MSEGTYP24(k)
596 IF(mtyp<0) nrtm_sh_l=nrtm_sh_l+1
599 ipari_l(42,ni)= nrtm_sh_l
605 ipari_l(59,ni)= l24add_l
609 IF (intercep(2,ni)%P(i)==proc+1)
THEN
616 se1 = intbuf_tab(ni)%IS2SE(2*(i-1)+1)
617 IF (intercep(2,ni)%P(se1)==proc+1)
THEN
621 ipari_l(52,ni) = nrtse_l
622 ipari_l(55,ni) = nsne_l
626 IF(intnitsche > 0)
THEN
629 IF(intercep(3,ni)%P(k)==proc+1)
THEN
633 ipari_l(3,ni) = nrts_l
643 IF(intercep(1,ni)%P(k)==proc+1)
THEN
644 mtyp = intbuf_tab(ni)%MSEGTYP24(k)
645 IF(mtyp<0) nrtm_sh_l=nrtm_sh_l+1
648 ipari_l(42,ni)= nrtm_sh_l
650 ALLOCATE(tag_sm(nadmsr))
653 IF(intercep(1,ni)%P(k)==proc+1)
THEN
654 n1 = intbuf_tab(ni)%ADMSR(4*(k-1)+1)
655 n2 = intbuf_tab(ni)%ADMSR(4*(k-1)+2)
656 n3 = intbuf_tab(ni)%ADMSR(4*(k-1)+3)
657 n4 = intbuf_tab(ni)%ADMSR(4*(k-1)+4)
658 IF(tag_sm(n1)==0)
THEN
662 IF(tag_sm(n2)==0)
THEN
666 IF(tag_sm(n3)==0)
THEN
670 IF(tag_sm(n4)==0)
THEN
680 k1=intbuf_tab(ni)%LEDGE(nledge*(n-1)+1)
681 k2=intbuf_tab(ni)%LEDGE(nledge*(n-1)+3)
683 IF(intercep(1,ni)%P(k1)==proc+1)
THEN
688 IF(intercep(1,ni)%P(k2)==proc+1)
THEN
706 nconte = nint(nedge*rcont)
708 ii_stok_e = intbuf_tab(ni)%I_STOK_E(1)
710 IF(nedge_l>0.AND.nedge>0) nconte =
max(nconte,1)
712 n = intbuf_tab(ni)%CANDM_E2E(k)
713 e = intbuf_tab(ni)%LEDGE(nledge*(n-1)+1)
715 ii_stok_el = ii_stok_el + 1
718 IF(nconte > 0 .AND.ii_stok_el > multimpe*nconte)
THEN
719 DO WHILE(ii_stok_el > multimpe*nconte)
724 ii_stok_e = intbuf_tab(ni)%I_STOK_E(2)
727 e = intbuf_tab(ni)%CANDM_E2S(k)
729 ii_stok_el = ii_stok_el + 1
732 IF(nconte > 0 .AND.ii_stok_el > multimps*nconte)
THEN
733 DO WHILE(ii_stok_el > multimps*nconte)
740 e = intbuf_tab(ni)%LEDGE(nledge*(k-1)+1)
742 nisube_l = nisube_l + intbuf_tab(ni)%ADDSUBE(1+k) -
743 . intbuf_tab(ni)%ADDSUBE(k)
751 IF (flagremnode == 2)
THEN
754 em1 = intbuf_tab(ni)%LEDGE(nledge*(k-1)+1)
756 IF(em1/=0) km1=tage(em1)
757 em2 = intbuf_tab(ni)%LEDGE(nledge*(k-1)+3)
759 IF(em2/=0) km2=tage(em2)
760 IF (km1/=0.OR.km2/=0)
THEN
761 siz = intbuf_tab(ni)%KREMNODE_EDG(k+1)-intbuf_tab(ni)%KREMNODE_EDG(k)
762 ik = intbuf_tab(ni)%KREMNODE_EDG(k)
764 n = intbuf_tab(ni)%REMNODE_EDG(ik+m-1)
765 es1 = intbuf_tab(ni)%LEDGE(nledge*(n-1)+1)
767 IF(es1/=0) ks1=tage(es1)
768 es2 = intbuf_tab(ni)%LEDGE(nledge*(n-1)+3)
770 IF(es2/=0) ks2=tage(es2)
771 IF(km1/=0.AND.km2/=0.AND.ks1/=0.AND.ks2
THEN
773 nremnode_edg_l = nremnode_edg_l + 1
776 nremnode_edg_l = nremnode_edg_l + 2
784 siz = intbuf_tab(ni)%KREMNODE_E2S(k+1)-intbuf_tab(ni)%KREMNODE_E2S(k)
785 ik = intbuf_tab(ni)%KREMNODE_E2S(k)
787 n = intbuf_tab(ni)%REMNODE_E2S(ik+m-1)
788 e = intbuf_tab(ni)%LEDGE(nledge*(n-1)+1)
791 nremnode_e2s_l = nremnode_e2s_l + 1
794 nremnode_e2s_l = nremnode_e2s_l + 2
803 ipari_l(88,ni)= nconte
804 ipari_l(87,ni)= multimpe
805 ipari_l(89,ni)= multimps
806 ipari_l(90,ni)= nisube_l
807 ipari_l(94,ni)= nremnode_edg_l
808 ipari_l(96,ni)= nremnode_e2s_l
815 nsn_l = nsn_l + nsne_l
820 jj = intbuf_tab(ni)%LMSR(k)
821 IF(intercep(1,ni)%P(jj) == proc+1)
THEN
827 imaximp_l = imaximp_l + multimp*ncont + multimpe*nconte + multimps
834 IF(intnitsche == 0) ipari_l(3,ni) = 0
835 ipari_l(4,ni) = nrtm_l
837 IF(ity==25.AND.ipari(100,ni) > 0)
THEN
838 ipari_l(74,ni) = nrtm
841 ipari_l(74,ni) = nrtm_l
843 ipari_l(5,ni) = nsn_l
844 ipari_l(78,ni) = nsn_l
845 ipari_l(6,ni) = nmn_l
846 ipari_l(80,ni) = nmn_l
847 ipari_l(9,ni) = nmt_l
848 ipari_l(18,ni)= ncont
849 ipari_l(23,ni)= multimp
853 IF(inacti==5.OR.inacti==6.OR.inacti==7.OR.ity==23)
854 . ipari_l(24,ni)= nsnr
856 IF(inacti==-1.AND.ity==24) ipari_l(24,ni)= nsnr
857 IF((inacti==-1.OR.inacti==5).AND.ity==25) ipari_l(24,ni)= nsnr
862 ipari_l(37,ni)= nisubs_l
863 ipari_l(38,ni)= nisubm_l
867 ipari_l(40,ni)=nodlocal(ipari(40,ni))
869 ipari_l(40,ni)=nodlocal(ipari(40,ni))
870 ipari_l(41,ni)=nodlocal(ipari(41,ni))
872 ipari_l(62,ni)=nremnode_l
873 ipari_l(81,ni)=nremnor_l
875 ipari_l(67,ni)=nadmsr_l
876 numnor_l = numnor_l + nadmsr_l
878 ipari_l(68,ni)=nedge_l
881 isu1 = ipari_l(45,ni)
882 nbric = igrbric(isu1)%NENTITY
885 ie = igrbric(isu1)%ENTITY(k)
886 IF(cep(ie)==proc) nbric_l = nbric_l + 1
891 i22len1 =
max(100 ,nint(82*nbric_l**half))
892 i22len1 =
min(i22len1 ,nbric_l )
893 i22len1 = nint(jmult22*i22len1)
894 i22len_l =
max(i22len_l,i22len1)
899 ELSEIF (ity==11)
THEN
908 inacti = ipari(22,ni)
909 multimp= ipari(23,ni)
912 flagremnode = ipari(63,ni)
921 IF(intercep(2,ni)%P(k)==proc+1)
THEN
931 IF(intercep(1,ni)%P(k)==proc+1)
THEN
932 n1 = intbuf_tab(ni)%IRECTM(1+2*(k-1))
933 n2 = intbuf_tab(ni)%IRECTM(2+2*(k-1))
948 IF(intercep(1,ni)%P(k)==proc+1)
THEN
949 n1 = intbuf_tab(ni)%IRECTM(1+2*(k-1))
950 n2 = intbuf_tab(ni)%IRECTM(2+2*(k-1))
957 IF (flagremnode == 2)
THEN
959 IF(intercep(1,ni)%P(k)==proc+1)
THEN
960 siz = intbuf_tab(ni)%KREMNODE(k+1)-intbuf_tab(ni)%KREMNODE(k)
961 e = intbuf_tab(ni)%KREMNODE(k)
963 n = intbuf_tab(ni)%REMNODE(e+m-1)
964 IF(intercep(2,ni)%P(n)==proc+1)
THEN
966 nremnode_l = nremnode_l + 1
969 nremnode_l = nremnode_l + 2
978 n = intbuf_tab(ni)%NSV(k)
980 IF(nodlocal(n)/=0.AND.nodlocal(n)<=numnod_l)
THEN
989#include "vectorize.inc"
996 i_stok = intbuf_tab(ni)%I_STOK(1)
997 IF (inacti==5.OR.inacti==6.OR.inacti==7)
THEN
999 e = intbuf_tab(ni)%CAND_E(k)
1000 IF (tage(e)/=0)
THEN
1001 n = intbuf_tab(ni)%CAND_N(k)
1002 i_stok_l = i_stok_l + 1
1010 IF (tage(k)/=0)
THEN
1011 nisubs_l = nisubs_l + intbuf_tab(ni)%ADDSUBS(1+k) -
1012 . intbuf_tab(ni)%ADDSUBS(k)
1018 IF (tage(k)/=0)
THEN
1019 nisubm_l = nisubm_l + intbuf_tab(ni)%ADDSUBM(1+k) -
1020 . intbuf_tab(ni)%ADDSUBM(k)
1030 ncont = nint(nsn*rcont)
1031 IF(nmn_l>0.AND.nsn>0) ncont =
max(ncont,1)
1033 IF(ncont > 0 .AND.i_stok_l > multimp*ncont)
THEN
1034 DO WHILE(i_stok_l>multimp*ncont)
1043 nsnt_l = nsnt_l + nsn_l
1044 nmnt_l = nmnt_l + nmn_l
1046 imaximp_l = imaximp_l + multimp*ncont
1050 ipari_l(3,ni) = nrts_l
1051 ipari_l(4,ni) = nrtm_l
1052 ipari_l(5,ni) = nsn_l
1053 ipari_l(6,ni) = nmn_l
1054 ipari_l(18,ni)= ncont
1055 ipari_l(23,ni)= multimp
1057 ipari_l(30,ni)= iform
1058 ipari_l(62,ni)= nremnode_l
1062 ELSEIF (ity==9)
THEN
1063! *********************************
1066 imaximp_l = imaximp_l + 2*nint(nmn/probint)
1068 ELSEIF (ity==17)
THEN
1073 multimp = ipari(23,ni)
1079 ie = igrbric(ige)%ENTITY(k)
1081 IF(cep(ie)==proc) nmn_l = nmn_l + 1
1086 ie = igrbric(ign)%ENTITY(k)
1088 IF(cep(ie)==proc) nsn_l = nsn_l + 1
1093 ncont = nint(nsn*rcont)
1094 IF(nmn_l>0.AND.nsn>0) ncont =
max(ncont,1)
1099 imaximp_l = imaximp_l + (multimp*ncont*16)/5 + 1
1103 ipari_l(18,ni) = ncont
1107 ELSEIF(ity==20)
THEN
1114 inacti = ipari(22,ni)
1115 multimp= ipari(23,ni)
1116 iform = ipari(30,ni)
1119 nisub = ipari(36,ni)
1120 nisubs = ipari(37,ni)
1121 nisubm = ipari(38,ni)
1122 icurv = ipari(39,ni)
1124 intth = ipari(47,ni)
1126 nlins = ipari(51,ni)
1127 nlinm = ipari(52,ni)
1128 nlinsa = ipari(53,ni)
1129 nlinma = ipari(54,ni)
1143 ALLOCATE(tage(nrtm))
1147 IF(intercep(1,ni)%P(k)==proc+1)
THEN
1148 n1l = intbuf_tab(ni)%IRECTM(4*(k-1)+1)
1149 n2l = intbuf_tab(ni)%IRECTM(4*(k-1)+2)
1150 n3l = intbuf_tab(ni)%IRECTM(4*(k-1)+3)
1151 n4l = intbuf_tab(ni)%IRECTM(4*(k-1)+4)
1152 n1 = intbuf_tab(ni)%NLG(n1l)
1153 n2 = intbuf_tab(ni)%NLG(n2l)
1154 n3 = intbuf_tab(ni)%NLG(n3l)
1155 n4 = intbuf_tab(ni)%NLG(n4l)
1158 IF (tagg(n1)==0)
THEN
1163 IF (tagg(n2)==0)
THEN
1168 IF (tagg(n3)==0)
THEN
1173 IF (tagg(n4)==0)
THEN
1184 nl = intbuf_tab(ni)%NSV(k)
1185 n = intbuf_tab(ni)%NLG(
nl)
1187 IF( nodlocal(n)/=0.AND.nodlocal(n)<=numnod_l )
THEN
1190 nindex0= nindex0 + 1
1202 i_stok = intbuf_tab(ni)%I_STOK(1)
1203 IF(inacti==5.OR.inacti==6.OR.inacti==7)
THEN
1205 e = intbuf_tab(ni)%CAND_E(k)
1206 IF (tage(e)/=0)
THEN
1207 n = intbuf_tab(ni)%CAND_N(k)
1208 i_stok_l = i_stok_l + 1
1216 nl = intbuf_tab(ni)%NSV(k)
1217 n = intbuf_tab(ni)%NLG(
nl)
1218 IF(nodlocal(n)/=0.AND.nodlocal(n)<=numnod_l)
THEN
1219 nisubs_l = nisubs_l + intbuf_tab(ni)%ADDSUBS(k+1) -intbuf_tab(ni)%ADDSUBS(k)
1225 IF (tage(k)/=0)
THEN
1226 nisubs_l = nisubs_l + intbuf_tab(ni)%ADDSUBM(k+1) -intbuf_tab(ni)%ADDSUBM(k)
1250#include "vectorize.inc"
1258 n1l = intbuf_tab(ni)%IXLINS(2*(k-1)+1)
1259 n2l = intbuf_tab(ni)%IXLINS(2*(k-1)+2)
1260 n1 = intbuf_tab(ni)%NLG(n1l)
1261 n2 = intbuf_tab(ni)%NLG(n2l)
1262 IF(intercep(3,ni)%P(k)==proc+1)
THEN
1263 nlins_l = nlins_l + 1
1265 IF(k<=nlinsa)nlinsa_l = nlinsa_l + 1
1266 IF (tag(n1)==0)
THEN
1274 IF (tag(n2)==0)
THEN
1286 IF(intercep(3,ni)%P(k)==proc+1)
THEN
1287 n1l = intbuf_tab(ni)%IXLINS(2*(k-1)+1)
1288 n2l = intbuf_tab(ni)%IXLINS(2*(k-1)+2)
1289 n1 = intbuf_tab(ni)%NLG(n1l)
1290 n2 = intbuf_tab(ni)%NLG(n2l)
1296 ALLOCATE(tage2(nlinm))
1303 n1l = intbuf_tab(ni)%IXLINM(2*(k-1)+1)
1304 n2l = intbuf_tab(ni)%IXLINM(2*(k-1)+2)
1305 n1 = intbuf_tab(ni)%NLG(n1l)
1306 n2 = intbuf_tab(ni)%NLG(n2l)
1307 IF(intercep(2,ni)%P(k)==proc+1)
THEN
1308 nlinm_l = nlinm_l + 1
1310 IF(k<=nlinma)nlinma_l = nlinma_l + 1
1312 IF (tag(n1)==0)
THEN
1315 nindex0= nindex0 + 1
1316 index0(nindex0) = n1
1322 IF (tag(n2)==0)
THEN
1325 nindex0= nindex0 + 1
1326 index0(nindex0) = n2
1334#include "vectorize.inc"
1370 ncont = nint(nsn*rcont)
1371 IF(nmn_l>0.AND.nsn>0) ncont1 =
max(ncont
1373 IF(ncont1 > 0 .AND.i_stok_l > multimp*ncont1)
THEN
1374 DO WHILE(i_stok_l>multimp*ncont1)
1385 ncont = nint(nsne*rcont)
1386 IF(nmne_l>0.AND.nsne>0) ncont2 =
max(ncont,1)
1388 IF(ncont2 > 0 .AND.i_stok_l > multimp*ncont2)
THEN
1389 DO WHILE(i_stok_l>multimp*ncont2)
1394 ncont =
max(ncont1,ncont2)
1398 nsnt_l = nsnt_l + nsn_l + nsne_l
1399 nmnt_l = nmnt_l + nmn_l + nmne_l
1400 imaximp_l = imaximp_l + multimp*ncont
1408 ipari_l(4,ni) = nrtm_l
1409 ipari_l(5,ni) = nsn_l
1410 ipari_l(6,ni) = nmn_l
1411 ipari_l(18,ni) = ncont
1412 ipari_l(23,ni)= multimp
1417 ipari_l(35,ni) = nln_l
1418 ipari_l(51,ni) = nlins_l
1419 ipari_l(52,ni) = nlinm_l
1422 ipari_l(55,ni) = nsne_l
1423 ipari_l(56,ni) = nmne_l
1427 ipari_l(37,ni)= nisubs_l
1428 ipari_l(38,ni)= nisubm_l
1432 ipari_l(40,ni)=nodlocal(ipari(40,ni))
1433 ELSEIF(icurv==2)
THEN
1434 ipari_l(40,ni)=nodlocal(ipari(40,ni))
1437 ipari_l(53,ni) = nlinsa_l
1438 ipari_l(54,ni) = nlinma_l
1443 ELSEIF(ity==21)
THEN
1453 inacti = ipari(22,ni)
1454 multimp= ipari(23,ni)
1455 iform = ipari(30,ni)
1458 intth = ipari(47,ni)
1470 IF(nodlocal(n)/=0.AND.nodlocal(n)<=numnod_l)
THEN
1473 nindex0= nindex0 + 1
1479#include "vectorize.inc"
1487 n = intbuf_tab(ni)%NSV(k)
1489 IF(nodlocal(n)/=0.AND.nodlocal(n)<=numnod_l)
THEN
1490 nindex0 = nindex0 + 1
1497#include "vectorize.inc"
1504 i_stok = intbuf_tab(ni)%I_STOK(1)
1507 m = intbuf_tab(ni)%CAND_N(k)
1508 n = intbuf_tab(ni)%NSV(k)
1509 IF(nodlocal(n)/=0.AND.nodlocal(n)<=numnod_l)
THEN
1510 i_stok_l = i_stok_l + 1
1515 IF(intercep(1,ni)%P(k)==proc+1)
THEN
1522 IF(ncont > 0 .AND.i_stok_l > multimp*ncont)
THEN
1523 DO WHILE(i_stok_l>multimp*ncont)
1528 ipari_l(3,ni) = nrts_l
1529 ipari_l(4,ni) = nrtm_l
1530 ipari_l(5,ni) = nsn_l
1531 ipari_l(6,ni) = nmn_l
1533 ipari_l(18,ni)= ncont
1534 ipari_l(23,ni)= multimp
1539 nsnt_l = nsnt_l + nsn_l
1540 nmnt_l = nmnt_l + nmn_l
1543 imaximp_l = imaximp_l + ncont