98 . IPARI_L , INTERCEP, NODLOCAL,
99 . ITAB , ITABI2M , NBDDI2M , NUMNOD_L ,
100 . LEN_CEP,CEP , CEL , IGRBRIC , T8, MULTI_FVM,
101 . TAG_NM ,NINDX_NM ,INDX_NM ,TAG_SCRATCH,NINDX_SCRT,
102 . INDX_SCRT ,FLAG_24_25,I24MAXNSNE,INTBUF_FRIC_TAB)
116#include "implicit_f.inc"
121#include "com01_c.inc"
122#include "com04_c.inc"
123#include "param_c.inc"
140 INTEGER,
INTENT(in) :: LEN_CEP
142 . PROC,IPARI(NPARI,*),IPARI_L(NPARI,NINTER),
143 . NODLOCAL(*),ITAB(*),ITABI2M(*),
144 . NBDDI2M,NUMNOD_L,CEP(LEN_CEP), CEL(*),I24MAXNSNE
145 LOGICAL,
INTENT(IN) :: FLAG_24_25
146 INTEGER,
INTENT(INOUT) :: NINDX_NM,NINDX_SCRT
147 INTEGER,
DIMENSION(*),
INTENT(INOUT) :: INDX_NM,INDX_SCRT
148 INTEGER,
DIMENSION(*) :: TAG_NM,TAG_SCRATCH
151 TYPE(intbuf_struct_) INTBUF_TAB(*),INTBUF_TAB_L(*)
153 TYPE(int8_struct_) :: T8(NSPMD,*)
154 TYPE(MULTI_FVM_STRUCT),
INTENT(IN) :: MULTI_FVM
156 TYPE (GROUP_) ,
DIMENSION(NGRBRIC) :: IGRBRIC
158 TYPE(intbuf_fric_struct_) :: INTBUF_FRIC_TAB(*)
167 LOGICAL :: FLAG_INIT_24_25
168 INTEGER,
DIMENSION(:),
ALLOCATABLE ::
169 . TAG_NODE_2RY,TAG_SEGM,TAG_SEGS,
170 . TAG_NODE_MSR,TAG_SEGM2,TAG_II,TAGE_II,
171 . TAG_NODE_MSR2,TAG,TAG_IRTL,
172 . tag_nlins, tag_nlinm,tag_nlins2, tag_nlinm2,
173 . tag_nlg,tag_nlg2,ibuf8_l,tag_nsne,tag_nmne,
174 . tag_nsve,tag_msre, tag_ieles, tag_ielem,tag_node_2ry2,
175 . tag_lmsr,tag_lmsr2,tag_nseg,tag_nseg2,
176 . nodlocal24,tag_seg2s,tag_nsne_l,tag_sm,tag_2ry_inv,
177 . knor2msr,nor2msr,msr_l_i21,mndd_i21,tag_segss
180 . I,NI,ITYP,NRTS,NSN,NMN,IGAP,II_STOK,II_STOK_E,
181 . NRTM,INACTI,NOINT,IFQ,INTTH,
182 . NISUB,IFORM,NLINS,NLINM,NLINSA,NLINMA,
183 . NSNE,NMNE,NREMNODE_L,FLAGREMNODE,ILEV,IEDGE,L24ADD,
184 . nuvar,nln,nir,k,n,
nl,nmt,nst,ilagm,nme,nmng,
185 . mx_vm, mx_vn,intkg,intply,nrtse,nrtse_l,nmt_l,
186 . nrts_l,nsn_l,nrtm_l,nmn_l,ii_stok_l,ii_stok_e_l,ii_stok_s,ii_stok_s_l,
187 . multimp,ncont,nconte,siz,mfrot,nisubs_l,nisubm_l,
188 . nln_l,nlins_l,nlinm_l,nsne_l,nmne_l,nme_l,nmng_l,
189 . nsn0,nsn0_l,ke,nbt8,p2,nbs_interf,nbm_interf,nadmsr,
190 . nadmsr_l,ibid,iedge4,
191 . nrtm_ige,nrtm_ige_l,nrts_ige,nrts_ige_l,
192 . nrtm_fe, nrtm_fe_l, nrts_fe, nrts_fe_l,nmn_fe_l,
193 . nmn_ige_l,nsn_fe_l,nsn_ige_l,nmn_fe,
194 . nmn_ige,nsn_fe,nsn_ige,l,intfric,nremnor,ivis2,
195 . nedge,nedge_l,intnitsche,ii,nisube_l,ithk,flagloadp,
196 . istif_msdt, idel25_solid
197 INTEGER :: NINDX_NDLOCAL24
202 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TABI_ZERO
203 my_real,
DIMENSION(:),
ALLOCATABLE :: tabr_zero
204 INTEGER,
DIMENSION(:),
ALLOCATABLE :: I710XSAV
205 INTEGER,
DIMENSION(:),
ALLOCATABLE ::
206 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TAG_EDGE,
207 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TAG_II_E2E
208 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TAG_II_E2S
209 INTEGER,
DIMENSION(:),
ALLOCATABLE :: TAG_JJ_E2E,TAG_JJ_E2S
210LOGICAL :: TYPE18_LAW151
219 flag_init_24_25 = .true.
221 ALLOCATE( nodlocal24(numnod+i24maxnsne) )
222 ALLOCATE( indx_ndlocal24(numnod+i24maxnsne) )
255 type18_law151 = .false.
267 nrts_ige = ipari(75,ni)
268 nrts_fe = ipari(76,ni)
270 nrtm_ige = ipari(73,ni)
271 nrtm_fe = ipari(74,ni)
275 nmn_fe = ipari(80,ni)
276 nmn_ige = ipari(79,ni)
277 nsn_fe = ipari(78,ni)
278 nsn_ige = ipari(77,ni)
287 inacti = abs(ipari(22,ni)) ! cas inacti
"passant a 0"
293 ELSEIF(ityp == 20)
THEN
301 nlinsa = ipari(53,ni)
302 nlinma = ipari(54,ni)
306 l24add = ipari(59,ni)
307 flagremnode = ipari(63,ni)
309 intply = ipari(66,ni)
310 nadmsr = ipari(67,ni)
312 intfric = ipari(72,ni)
313 intnitsche = ipari(86,ni)
315 flagloadp = ipari(95,ni)
316 istif_msdt = ipari(97,ni)
317 idel25_solid = ipari(100,ni)
319 IF (ityp == 24) nrtse = ipari(52,ni)
320 IF (ityp == 24) iedge4 = ipari(59,ni)
322 IF(ityp==7.OR.ityp==8.OR.ityp==10.OR.ityp==11.OR.ityp==20.
323 . or.ityp==21.OR.ityp==22.OR.ityp==23.OR.ityp==24.
325 ii_stok = intbuf_tab(ni)%I_STOK(1)
328 ii_stok_e = intbuf_tab(ni)%I_STOK_E(1)
336 IF(intbuf_tab(ni)%S_I_STOK_E > 1)
THEN
337 ii_stok_e = intbuf_tab(ni)%I_STOK_E(1)
338 ii_stok_s = intbuf_tab(ni)%I_STOK_E(2)
344 nrts_l = ipari_l(3,ni)
345 nrts_ige_l = ipari_l(75,ni)
346 nrts_fe_l = ipari_l(76,ni)
347 nrtm_l = ipari_l(4,ni)
348 nrtm_ige_l = ipari_l(73,ni)
349 nrtm_fe_l = ipari_l(74,ni)
350 nme_l = ipari_l(4,ni)
351 nsn_l = ipari_l(5,ni)
352 nmn_l = ipari_l(6,ni)
353 nmn_fe_l = ipari_l(80,ni)
354 nmn_ige_l = ipari_l(79,ni)
355 nsn_fe_l = ipari_l(78,ni)
356 nsn_ige_l = ipari_l(77,ni)
357 nmt_l = ipari_l(9,ni)
358 nmng_l = ipari_l(8,ni)
359 ncont = ipari_l(18,ni)
360 multimp = ipari_l(23,ni)
361 nisubs_l = ipari_l(37,ni)
362 nisubm_l = ipari_l(38,ni)
363 nln_l = ipari_l(35,ni)
364 nlins_l = ipari_l(51,ni)
365 nlinm _l = ipari_l(52,ni)
366 nsne_l = ipari_l(55,ni)
368 nmne_l = ipari_l(56,ni)
369 nremnode_l = ipari_l(62,ni)
370 nremnor = ipari_l(81,ni)
371 IF (ityp == 24) nrtse_l = ipari_l(52,ni)
372 nadmsr_l = ipari_l(67,ni)
373 nedge_l = ipari_l(68,ni)
374 nisube_l = ipari_l(90,ni)
382 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
383 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm,4)
386 CALL copy_ival(intbuf_tab(ni)%IRTLM,nsn,1) !kd(14)
387 CALL copy_ival(intbuf_tab(ni)%ILOCS,nsn,1)
388 CALL copy_ival(intbuf_tab(ni)%NSEGM,1+nmn,1)
393 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
394 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn,2)
398 ELSEIF(ityp == 2)
THEN
400 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),
401 . tag_segm2(nrtm),tag(nrtm),tag_irtl(nmn_l))
403 tag_node_2ry(1:nsn_l) = 0
404 tag_segm(1:nrtm_l) = 0
405 tag_segm2(1:nrtm) = 0
407 tag_irtl(1:nmn_l) = 0
417 . nrtm, tag_node_2ry , tag_segm , tag_segm2,
418 . tag_irtl, tag , itabi2m , nodlocal ,
419 . nbddi2m , nir ,numnod_l)
422 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
427 . tag_node_2ry,nodlocal)
432 . tag_segm2,tag_node_2ry)
434 IF (ilev==10 .OR. ilev==11 .OR. ilev==12 .OR.
435 * ilev==20 .OR. ilev==21 .OR. ilev==22)
THEN
441 ELSEIF ((ilev == 27).OR.(ilev == 28))
THEN
443 CALL split_seg_ival2(intbuf_tab(ni)%MSEGTYP2,nrtm_l,tag_segm,tag_segm2)
449 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
461 IF (ilev==10 .OR. ilev==11 .OR. ilev==12 .OR.ilev==20 .OR.
462 . ilev==21 .OR. ilev==22.OR.intth >0 )
THEN
468 IF (ilev==10 .OR. ilev==11 .OR. ilev==12)
THEN
485 . tag_node_2ry) !jd(35)
487 ELSEIF (ilev==20 .OR. ilev==21 .OR. ilev==22)
THEN
507 ELSEIF (ilev == 25)
THEN
524 ELSEIF (ilev == 26)
THEN
541 ELSEIF (ilev == 27)
THEN
551 . tag_node_2ry) !jd(33)
559 ELSEIF (ilev == 28)
THEN
577 ELSEIF(ipari(17,ni)/=0)
THEN
590 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,tag,tag_irtl)
593 ELSEIF(ityp == 3)
THEN
598 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
599 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm,4)
602 CALL copy_ival(intbuf_tab(ni)%IRTLM,nsn,1)
603 CALL copy_ival(intbuf_tab(ni)%ILOCS,nsn,1)
604 CALL copy_ival(intbuf_tab(ni)%NSEGM,1+nmn,1)
605 CALL copy_ival(intbuf_tab(ni)%IRTLS,nmn,1)
606 CALL copy_ival(intbuf_tab(ni)%ILOCM,nmn,1)
607 CALL copy_ival(intbuf_tab(ni)%IRTLOM,nsn,1)
608 CALL copy_ival(intbuf_tab(ni)%IRTLOS,nmn,1)
609 CALL copy_ival(intbuf_tab(ni)%NSEGS,1+nsn,1)
610 CALL copy_ival(intbuf_tab(ni)%LNSV,nst,1)
611 CALL copy_ival(intbuf_tab(ni)%LMSR,nmt,1)
615 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
616 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn,2)
617 CALL copy_rval(intbuf_tab(ni)%STFNS,nsn,1)
619 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
622 CALL copy_rval(intbuf_tab(ni)%S_XFILTR,1,1)
623 CALL copy_rval(intbuf_tab(ni)%S_FTSAV,nsn,3)
625 CALL copy_rval(intbuf_tab(ni)%STFM,nrtm,1)
626 CALL copy_rval(intbuf_tab(ni)%STFS,nrts,1)
627 CALL copy_rval(intbuf_tab(ni)%AREAS,nsn,1)
628 CALL copy_rval(intbuf_tab(ni)%AREAM,nmn,1)
629 CALL copy_rval(intbuf_tab(ni)%CSTM,nmn,2)
630 CALL copy_rval(intbuf_tab(ni)%STFNM,nmn,1)
631 CALL copy_rval(intbuf_tab(ni)%FRICOS,nsn,3)
632 CALL copy_rval(intbuf_tab(ni)%FRICOM,nmn,3)
636 ELSEIF(ityp == 4)
THEN
640 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
641 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm,4)
644 CALL copy_ival(intbuf_tab(ni)%IRTLM,nsn,1)
645 CALL copy_ival(intbuf_tab(ni)%IELES,nrts,1)
646 CALL copy_ival(intbuf_tab(ni)%IRTLS,nmn,1)
647 CALL copy_ival(intbuf_tab(ni)%ILOCS,nsn,1)
648 CALL copy_ival(intbuf_tab(ni)%ILOCM,nmn,1)
649 CALL copy_ival(intbuf_tab(ni)%IRTLOM,nsn,1)
650 CALL copy_ival(intbuf_tab(ni)%IRTLOS,nmn,1)
651 CALL copy_ival(intbuf_tab(ni)%NSEGS,1+nsn,1)
652 CALL copy_ival(intbuf_tab(ni)%NSEGM,1+nmn,1)
653 CALL copy_ival(intbuf_tab(ni)%LNSV,nst,1)
654 CALL copy_ival(intbuf_tab(ni)%LMSR,nmt,1)
655 CALL copy_ival(intbuf_tab(ni)%IELEM,nrtm,1)
658 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn,2)
659 CALL copy_rval(intbuf_tab(ni)%STFNS,nsn,1)
660 CALL copy_rval(intbuf_tab(ni)%CSTM,nmn,2)
661 CALL copy_rval(intbuf_tab(ni)%STFNM,nmn,1)
662 CALL copy_rval(intbuf_tab(ni)%STFS,nrts,1)
663 CALL copy_rval(intbuf_tab(ni)%STFM,nrtm,1)
664 CALL copy_rval(intbuf_tab(ni)%FRICOS,nsn,3)
665 CALL copy_rval(intbuf_tab(ni)%FRICOM,nmn,3)
667 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
670 CALL copy_rval(intbuf_tab(ni)%S_XFILTR,1,1)
671 CALL copy_rval(intbuf_tab(ni)%S_FTSAV,nsn,3)
676 ELSEIF(ityp == 5)
THEN
681 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
682 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm,4)
685 CALL copy_ival(intbuf_tab(ni)%IRTLM,nsn,1)
686 CALL copy_ival(intbuf_tab(ni)%ILOCS,nsn,1)
687 CALL copy_ival(intbuf_tab(ni)%NSEGM,1+nmn,1)
688 CALL copy_ival(intbuf_tab(ni)%IRTLS,nmn,1)
689 CALL copy_ival(intbuf_tab(ni)%ILOCM,nmn,1)
690 CALL copy_ival(intbuf_tab(ni)%IRTLOM,nsn,1)
691 CALL copy_ival(intbuf_tab(ni)%IRTLOS,nmn,1)
692 CALL copy_ival(intbuf_tab(ni)%NSEGS,1+nsn,1)
693 CALL copy_ival(intbuf_tab(ni)%LNSV,nst,1)
694 CALL copy_ival(intbuf_tab(ni)%LMSR,nmt,1)
698 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
699 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn,2)
700 CALL copy_rval(intbuf_tab(ni)%STFNS,nsn,1)
702 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
705 CALL copy_rval(intbuf_tab(ni)%S_XFILTR,1,1)
706 CALL copy_rval(intbuf_tab(ni)%S_FTSAV,nsn,3)
708 CALL copy_rval(intbuf_tab(ni)%STFM,nrtm,1)
709 CALL copy_rval(intbuf_tab(ni)%STFS,nrts,1)
710 CALL copy_rval(intbuf_tab(ni)%AREAS,nsn,1)
711 CALL copy_rval(intbuf_tab(ni)%CSTM,nmn,2)
712 CALL copy_rval(intbuf_tab(ni)%STFNM,nmn,1)
713 CALL copy_rval(intbuf_tab(ni)%FRICOS,nsn,3)
714 CALL copy_rval(intbuf_tab(ni)%FRICOM,nmn,3)
718 ELSEIF(ityp == 6)
THEN
723 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
724 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm,4)
727 CALL copy_ival(intbuf_tab(ni)%IRTLM,nsn,1)
728 CALL copy_ival(intbuf_tab(ni)%ILOCS,nsn,1)
729 CALL copy_ival(intbuf_tab(ni)%NSEGM,1+nmn,1)
730 CALL copy_ival(intbuf_tab(ni)%IRTLS,nmn,1)
731 CALL copy_ival(intbuf_tab(ni)%ILOCM,nmn,1)
732 CALL copy_ival(intbuf_tab(ni)%IRTLOM,nsn,1)
733 CALL copy_ival(intbuf_tab(ni)%IRTLOS,nmn,1)
734 CALL copy_ival(intbuf_tab(ni)%NSEGS,1+nsn,1)
735 CALL copy_ival(intbuf_tab(ni)%LNSV,nst,1)
736 CALL copy_ival(intbuf_tab(ni)%LMSR,nmt,1)
740 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
741 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn,2)
742 CALL copy_rval(intbuf_tab(ni)%STFNS,nsn,1)
743 CALL copy_rval(intbuf_tab(ni)%STFM,nrtm,1)
744 CALL copy_rval(intbuf_tab(ni)%STFS,nrts,1)
745 CALL copy_rval(intbuf_tab(ni)%CSTM,nmn,2)
746 CALL copy_rval(intbuf_tab(ni)%STFNM,nmn,1)
747 CALL copy_rval(intbuf_tab(ni)%FRICOS,nsn,3)
748 CALL copy_rval(intbuf_tab(ni)%FRICOM,nmn,3)
753 CALL copy_rval(intbuf_tab(ni)%S_ANSMX0,2,1)
757 ELSEIF(ityp == 7)
THEN
759 ALLOCATE(tag_node_2ry(nsn_fe_l),tag_segm(nrtm_fe_l),
760 . tag_node_msr(nmn_fe_l),tag_segm2(nrtm_fe),tag_ii(ii_stok))
762 ALLOCATE(i710xsav(nmn))
765 tag_node_2ry(1:nsn_fe_l) = 0
766 tag_segm(1:nrtm_fe_l) = 0
767 tag_segm2(1:nrtm_fe) = 0
768 tag_node_msr(1:nmn_fe_l) = 0
769 tag_ii(1:ii_stok) = 0
770 IF (multi_fvm%IS_USED .AND. inacti==7)
THEN
771 type18_law151 = .true.
775 . intercep(1,ni),tag_node_2ry,tag_segm ,
776 . tag_segm2 ,tag_nm ,tag_node_msr,
777 . tag_scratch ,ni, cep, multi_fvm,i710xsav,
778 . nindx_nm ,indx_nm,nindx_scrt,indx_scrt,nodlocal,
787 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm_ige,4)
796 . tag_node_msr,nodlocal)
808 CALL copy_ival(intbuf_tab(ni)%LISUB,nisub,1)
809 CALL copy_ival(intbuf_tab(ni)%TYPSUB,nisub,1)
810 CALL split_nisub_i7(intbuf_tab(ni), nsn_fe_l, tag_node_2ry, nrtm_fe_l,
811 . tag_segm , nisubs_l, nisubm_l)
816 CALL split_cand_i7(proc , intbuf_tab(ni), nsn_fe , nsn_fe_l ,
817 . tag_segm2, ii_stok , multimp , ncont ,
818 . noint , inacti , tag_scratch ,
819 . ii_stok_l, ityp ,nindx_scrt,indx_scrt,nodlocal,
820 . numnod_l,numnod,numels,len_cep,cep,type18_law151)
826 . ii_stok_l,tag_ii,multimp,ncont)
829 IF(flagremnode == 2)
THEN
831 . tag_segm2,nremnode_l , nodlocal, itab,numnod_l)
834 siz = intbuf_tab_l(ni)%S_NIGE
835 CALL copy_ival(intbuf_tab(ni)%NIGE,siz,1)
839 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
849 siz = intbuf_tab_l(ni)%S_XSAV
850 intbuf_tab(ni)%XSAV(1:siz) = 0
851 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
853 siz = intbuf_tab_l(ni)%S_CRIT
854 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
857 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
861 CALL copy_rval(intbuf_tab(ni)%XFILTR,1,1)
874 IF(inacti==5.OR.inacti==6.OR.inacti==7)
THEN
876 . ii_stok_l,tag_ii,multimp,ncont)
881 . ii_stok_l,tag_ii,multimp,ncont)
883 . ii_stok_l,tag_ii,multimp,ncont)
885 . ii_stok_l,tag_ii,multimp,ncont)
888 siz = intbuf_tab_l(ni)%S_RIGE
889 CALL copy_rval(intbuf_tab(ni)%RIGE,siz,1)
890 siz = intbuf_tab_l(ni)%S_XIGE
891 CALL copy_rval(intbuf_tab(ni)%XIGE,siz,1)
892 siz = intbuf_tab_l(ni)%S_VIGE
893 CALL copy_rval(intbuf_tab(ni)%VIGE,siz,1)
894 siz = intbuf_tab_l(ni)%S_MASSIGE
895 CALL copy_rval(intbuf_tab(ni)%MASSIGE,siz,1)
897 siz = intbuf_tab_l(ni)%S_CAND_F
898 CALL copy_rval(intbuf_tab(ni)%CAND_F,siz,1)
902 . intercep(1,ni),tag_node_2ry,tag_segm ,
903 . tag_segm2 ,tag_nm ,tag_node_msr,
904 . tag_scratch ,ni, cep, multi_fvm,i710xsav,
905 . nindx_nm ,indx_nm,nindx_scrt,indx_scrt,nodlocal,
917 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm_ige,4)
920 . tag_node_2ry,nodlocal)
925 . tag_node_msr,nodlocal)
937 CALL copy_ival(intbuf_tab(ni)%LISUB,nisub,1)
938 CALL copy_ival(intbuf_tab(ni)%TYPSUB,nisub,1)
939 CALL split_nisub_i7(intbuf_tab(ni), nsn_fe_l, tag_node_2ry, nrtm_fe_l,
940 . tag_segm , nisubs_l, nisubm_l)
945 CALL split_cand_i7(proc , intbuf_tab(ni), nsn_fe , nsn_fe_l ,
946 . tag_segm2, ii_stok , multimp , ncont ,
947 . noint , inacti , tag_scratch ,
949 . numnod_l,numnod,numels,len_cep,cep,type18_law151)
955 . ii_stok_l,tag_ii,multimp,ncont)
963 IF(intbuf_fric_tab(intfric)%IORTHFRIC > 0)
THEN
970 IF(flagremnode == 2)
THEN
972 . tag_segm2,nremnode_l , nodlocal, itab,numnod_l)
975 siz = intbuf_tab_l(ni)%S_NIGE
976 CALL copy_ival(intbuf_tab(ni)%NIGE,siz,1)
980 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
990 siz = intbuf_tab_l(ni)%S_XSAV
991 intbuf_tab(ni)%XSAV(1:siz) = 0
992 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
994 siz = intbuf_tab_l(ni)%S_CRIT
995 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
998 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
1002 CALL copy_rval(intbuf_tab(ni)%XFILTR,1,1)
1015 IF(inacti==5.OR.inacti==6.OR.inacti==7)
THEN
1017 . ii_stok_l,tag_ii,multimp,ncont)
1022 . ii_stok_l,tag_ii,multimp,ncont)
1024 . ii_stok_l,tag_ii,multimp,ncont)
1026 . ii_stok_l,tag_ii,multimp,ncont)
1029 siz = intbuf_tab_l(ni)%S_RIGE
1030 CALL copy_rval(intbuf_tab(ni)%RIGE,siz,1)
1031 siz = intbuf_tab_l(ni)%S_XIGE
1032 CALL copy_rval(intbuf_tab(ni)%XIGE,siz,1)
1033 siz = intbuf_tab_l(ni
1035 siz = intbuf_tab_l(ni)%S_MASSIGE
1036 CALL copy_rval(intbuf_tab(ni)%MASSIGE,siz,1)
1038 siz = intbuf_tab_l(ni)%S_CAND_F
1039 CALL copy_rval(intbuf_tab(ni)%CAND_F,siz,1)
1042 IF(intbuf_fric_tab(intfric)%IORTHFRIC > 0)
THEN
1049 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,
1050 . tag_node_msr,tag_ii)
1051 DEALLOCATE(i710xsav)
1053 ELSEIF(ityp == 8)
THEN
1056 ALLOCATE(tag_node_2ry(nsn),tag_segm(nrtm_l),tag_node_msr2(nmn),
1057 . tag_node_msr(nmn_l),tag_segm2(nrtm),tag_ii(ii_stok),
1058 . tag_lmsr(nmt_l), tag_nseg(nmn_l+1),
1059 . tag_lmsr2(nmt), tag_nseg2(nmn+1))
1061 tag_node_2ry(1:nsn) = 0
1062 tag_segm(1:nrtm_l) = 0
1063 tag_segm2(1:nrtm) = 0
1064 tag_node_msr(1:nmn_l) = 0
1065 tag_node_msr2(1:nmn) = 0
1066 tag_lmsr(1:nmt_l) = 0
1067 tag_lmsr2(1:nmt) = 0
1068 tag_ii(1:ii_stok) = 0
1069 tag_nseg2(1:nmn+1) = 0
1070 tag_nseg(1:nmn_l+1) = 0
1074 . intercep(1,ni),tag_node_2ry,tag_segm ,
1075 . tag_segm2 ,tag_nm ,tag_node_msr,
1076 . tag_node_msr2 ,tag_lmsr ,tag_lmsr2,
1077 . tag_nseg ,tag_nseg2,
1078 . ni, t8(proc+1,nbt8),itab,nindx_nm,indx_nm)
1086!
CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm,4)
1088 . tag_segm,tag_node_msr2)
1093 . tag_node_msr,nodlocal)
1103!
CALL copy_ival(intbuf_tab(ni)%ILOCS,nsn,1)
1116 CALL copy_ival(intbuf_tab(ni)%IRTLOM,nsn,1)
1123 . tag_lmsr,tag_segm2)
1126 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1128 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1129 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn,2)
1135 CALL copy_rval(intbuf_tab(ni)%FTSAVX,nsn,1)
1136 CALL copy_rval(intbuf_tab(ni)%FTSAVX,nsn,1)
1137 CALL copy_rval(intbuf_tab(ni)%FTSAVX,nsn,1)
1146 IF(nspmd > 1)
CALL w_type8(proc,t8(proc+1,nbt8))
1149 DEALLOCATE(tag_node_2ry,tag_segm,tag_node_msr2,
1150 . tag_node_msr,tag_segm2,tag_ii,
1151 . tag_nseg2,tag_nseg, tag_lmsr2,tag_lmsr)
1154 ELSEIF(ityp == 9)
THEN
1156 ALLOCATE(tag_node_2ry(nsn_l), tag_node_msr(nmn_l),
1157 . tag_ieles(nrts_l) , tag_ielem(nrtm_l) )
1159 tag_node_2ry(1:nsn_l) = 0
1160 tag_node_msr(1:nmn_l) = 0
1161 tag_ieles(1:nrts_l) = 0
1162 tag_ielem(1:nrtm_l) = 0
1166 . tag_node_2ry ,tag_node_msr ,tag_scratch ,
1167 . tag_ieles ,tag_ielem ,
1168 . cep ,cel ,nindx_scrt ,indx_scrt)
1170 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
1171 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm,4)
1177 CALL copy_ival(intbuf_tab(ni)%IRTLM,nsn,1)
1183 CALL copy_ival(intbuf_tab(ni)%ILOCS,nsn,1)
1184 CALL copy_ival(intbuf_tab(ni)%NSEGM,1+nmn,1)
1185 CALL copy_ival(intbuf_tab(ni)%IRTLS,nmn,1)
1186 CALL copy_ival(intbuf_tab(ni)%ILOCM,nmn,1)
1187 CALL copy_ival(intbuf_tab(ni)%IRTLOM,nsn,1)
1188 CALL copy_ival(intbuf_tab(ni)%IRTLOS,nmn,1)
1189 CALL copy_ival(intbuf_tab(ni)%NSEGS,1+nsn,1)
1190 CALL copy_ival(intbuf_tab(ni)%LNSV,nst,1)
1191 CALL copy_ival(intbuf_tab(ni)%LMSR,nmt,1)
1195 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1196 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1197 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn,2)
1199 CALL copy_rval(intbuf_tab(ni)%STFNS,nsn,1)
1200 CALL copy_rval(intbuf_tab(ni)%STFM,nrtm,2)
1201 CALL copy_rval(intbuf_tab(ni)%STFS,nrts,1)
1203 CALL copy_rval(intbuf_tab(ni)%CSTM,nmn,2)
1204 CALL copy_rval(intbuf_tab(ni)%STFNM,nmn,1)
1205 CALL copy_rval(intbuf_tab(ni)%FRICOS,nsn,3)
1206 CALL copy_rval(intbuf_tab(ni)%FRICOM,nmn,3)
1208 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
1211 CALL copy_rval(intbuf_tab(ni)%S_XFILTR,1,1)
1212 CALL copy_rval(intbuf_tab(ni)%S_FTSAV,nsn,3)
1215 DEALLOCATE(tag_node_2ry, tag_node_msr, tag_ieles, tag_ielem)
1218 ELSEIF(ityp == 10)
THEN
1221 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),
1222 . tag_node_msr(nmn_l),tag_segm2(nrtm),tag_ii(ii_stok))
1224 ALLOCATE(i710xsav(nmn))
1226 tag_node_2ry(1:nsn_l) = 0
1227 tag_segm(1:nrtm_l) = 0
1228 tag_segm2(1:nrtm) = 0
1229 tag_node_msr(1:nmn_l) = 0
1230 tag_ii(1:ii_stok) = 0
1234 . intercep(1,ni),tag_node_2ry,tag_segm ,
1235 . tag_segm2 ,tag_nm ,tag_node_msr,
1236 . tag_scratch ,ni, cep, multi_fvm,i710xsav,
1237 . nindx_nm ,indx_nm,nindx_scrt,indx_scrt,nodlocal,
1248 . tag_segm,nodlocal)
1250 . tag_node_2ry,nodlocal)
1252 . tag_node_msr,nodlocal)
1256 CALL copy_ival(intbuf_tab(ni)%LISUB,nisub,1)
1257 CALL split_nisub_i7(intbuf_tab(ni), nsn_l , tag_node_2ry, nrtm_l,
1258 . tag_segm , nisubs_l, nisubm_l)
1264 . tag_segm2, ii_stok , multimp , ncont ,
1265 . noint , inacti , tag_scratch ,
1266 . ii_stok_l, ityp ,nindx_scrt,indx_scrt,nodlocal,
1267 . numnod_l,numnod,numels,len_cep,cep,type18_law151)
1273 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1274 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1283 siz = intbuf_tab_l(ni)%S_GAP_M
1284 CALL copy_rval(intbuf_tab(ni)%GAP_M,siz,1)
1286 siz = intbuf_tab_l(ni)%S_GAP_S
1287 CALL copy_rval(intbuf_tab(ni)%GAP_S,siz,1)
1290 siz = intbuf_tab_l(ni)%S_XSAV
1291 intbuf_tab(ni)%XSAV(1:siz) = 0
1292 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
1294 siz = intbuf_tab_l(ni)%S_CRIT
1295 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
1297 IF(inacti==5.OR.inacti==6.OR.inacti==7)
THEN
1299 . ii_stok_l,tag_ii,multimp,ncont)
1302 CALL copy_rval(intbuf_tab(ni)%CAND_F,siz,1)
1305 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,
1306 . tag_node_msr,tag_ii)
1307 DEALLOCATE(i710xsav)
1310 ELSEIF(ityp == 11)
THEN
1312 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),
1313 . tag_segm2(nrtm),tag_segs(nrts_l),
1314 . tag_ii(ii_stok),tag_node_msr(nmn_l),tag_seg2s(nrts))
1316 tag_node_2ry(1:nsn_l) = 0
1317 tag_segm(1:nrtm_l) = 0
1318 tag_segm2(1:nrtm) = 0
1319 tag_segs(1:nrts_l) = 0
1320 tag_seg2s(1:nrts) = 0
1321 tag_ii(1:ii_stok) = 0
1322 tag_node_msr(1:nmn_l) = 0
1326 . tag_node_2ry, tag_segm , tag_segm2 ,
1327 . tag_nm , tag_segs , tag_node_msr,
1328 . tag_scratch , intercep , ni,nindx_nm,indx_nm,
1329 . nindx_scrt ,indx_scrt ,tag_seg2s)
1338 . tag_segs,nodlocal)
1340 . tag_segm,nodlocal)
1342 . tag_node_2ry,nodlocal)
1344 . tag_node_msr,nodlocal)
1355 CALL copy_ival(intbuf_tab(ni)%LISUB,nisub,1)
1356 CALL copy_ival(intbuf_tab(ni)%TYPSUB,nisub,1)
1359 . tag_segm , nisubs_l, nisubm_l
1365 . tag_segm2 , tag_segs , ii_stok, multimp,
1366 . ncont , noint , inacti ,
1367 . tag_scratch, intercep , ni , ipari_l,
1368 . ii_stok_l ,nindx_scrt ,indx_scrt)
1384 IF(flagremnode == 2)
THEN
1386 . tag_segm2, nodlocal, itab,numnod_l,tag_seg2s,
1391 siz = intbuf_tab_l(ni)%S_ADCCM
1392 CALL copy_ival(intbuf_tab(ni)%ADCCM,siz,1)
1395 siz = intbuf_tab_l(ni)%S_CHAIN
1396 CALL copy_ival(intbuf_tab(ni)%CHAIN,siz,1)
1399 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1400 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1411 siz = intbuf_tab_l(ni)%S_XSAV
1412 intbuf_tab(ni)%XSAV(1:siz) = 0
1413 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
1415 siz = intbuf_tab_l(ni)%S_CRIT
1416 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
1431 intbuf_tab(ni)%FTSAVX(1:multimp*ncont) = 0
1432 intbuf_tab(ni)%FTSAVY(1:multimp*ncont) = 0
1433 intbuf_tab(ni)%FTSAVZ(1:multimp*ncont) = 0
1436 . ii_stok_l,tag_ii,multimp,ncont)
1438 . ii_stok_l,tag_ii,multimp,ncont)
1440 . ii_stok_l,tag_ii,multimp,ncont)
1443 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,tag_segs,
1444 . tag_node_msr,tag_ii,tag_seg2s)
1447 ELSEIF(ityp == 12)
THEN
1452 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
1453 CALL copy_ival(intbuf_tab(ni)%IRECTM,nrtm,4)
1456 CALL copy_ival(intbuf_tab(ni)%IRTLM,nsn,1)
1457 CALL copy_ival(intbuf_tab(ni)%IELES,nrts,1)
1458 CALL copy_ival(intbuf_tab(ni)%ILOCS,nsn,1)
1459 CALL copy_ival(intbuf_tab(ni)%NSEGM,1+nmn,1)
1460 CALL copy_ival(intbuf_tab(ni)%IRTLS,nmn,1)
1461 CALL copy_ival(intbuf_tab(ni)%ILOCM,nmn,1)
1462 CALL copy_ival(intbuf_tab(ni)%NSEGS,1+nsn,1)
1463 CALL copy_ival(intbuf_tab(ni)%LNSV,nst,1)
1464 CALL copy_ival(intbuf_tab(ni)%LMSR,nmt,1)
1465 CALL copy_ival(intbuf_tab(ni)%IELEM,nrtm,1)
1466 CALL copy_ival(intbuf_tab(ni)%FCOUNT,nsn,1)
1469 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1470 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1471 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn,2)
1472 CALL copy_rval(intbuf_tab(ni)%NMAS,nmn,1)
1473 IF(ilev>0)
CALL copy_rval(intbuf_tab(ni)%STFNS,nsn,1)
1474 CALL copy_rval(intbuf_tab(ni)%CSTM,nmn,2)
1475 IF(ilev>0)
CALL copy_rval(intbuf_tab(ni)%STFNM,nmn,1)
1479 ELSEIF(ityp == 14)
THEN
1485 CALL copy_ival(intbuf_tab(ni)%KSURF,1,1)
1486 CALL copy_ival(intbuf_tab(ni)%IMPACT,nsn,1)
1489 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1490 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1491 CALL copy_rval(intbuf_tab(ni)%CIMP,nsn,3)
1492 CALL copy_rval(intbuf_tab(ni)%NIMP,nsn,3)
1496 ELSEIF(ityp == 15)
THEN
1503 CALL copy_ival(intbuf_tab(ni)%KSURF,1,1)
1504 CALL copy_ival(intbuf_tab(ni)%IMPACT,nrts,4)
1507 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1508 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1510 CALL copy_rval(intbuf_tab(ni)%IOLD,nrts,3*4)
1511 CALL copy_rval(intbuf_tab(ni)%HOLD,nrts,3*4)
1512 CALL copy_rval(intbuf_tab(ni)%NOLD,nrts,3*4)
1513 CALL copy_rval(intbuf_tab(ni)%DOLD,nrts,3*4)
1517 ELSEIF(ityp == 16)
THEN
1524 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
1525 CALL copy_ival(intbuf_tab(ni)%CAND_E,multimp*ncont,1) !kd(14)
1526 CALL copy_ival(intbuf_tab(ni)%CAND_N,multimp*ncont,1)
1529 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1530 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1532 siz = intbuf_tab_l(ni)%S_XSAV
1533 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
1537 ELSEIF(ityp == 17)
THEN
1539 ALLOCATE(tag_node_2ry(nsn_l), tag_node_msr(nme_l))
1542 tag_node_2ry(1:nsn_l) = 0
1543 tag_node_msr(1:nme_l) = 0
1547 . tag_node_2ry ,tag_node_msr ,
1548 . cep ,cel ,igrbric,
1553 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts,4)
1554 CALL copy_ival(intbuf_tab(ni)%CAND_E,multimp*ncont,1)
1555 CALL copy_ival(intbuf_tab(ni)%CAND_N,multimp*ncont,1)
1558 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1559 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1561 siz = intbuf_tab_l(ni)%S_XSAV
1562 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
1569 DEALLOCATE(tag_node_2ry, tag_node_msr)
1572 ELSEIF(ityp == 18)
THEN
1578 ELSEIF(ityp == 20)
THEN
1581 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),tag_node_msr(nmn_l),
1582 . tag_segm2(nrtm),tag_ii(ii_stok), tage_ii(ii_stok_e),
1583 . tag_nlins(nlins_l),tag_nlinm(nlinm_l),
1584 . tag_nlins2(nlins),tag_nlinm2(nlinm),
1585 . tag_nlg(nln_l),tag_nlg2(numnod), tag_nsne(nsne_l),
1586 . tag_nmne(nmne_l),tag_nsve(nsne_l),tag_msre(nmne_l) )
1588 tag_node_2ry(1:nsn_l) = 0
1589 tag_segm(1:nrtm_l) = 0
1590 tag_segm2(1:nrtm) = 0
1591 tag_ii(1:ii_stok) = 0
1592 tage_ii(1:ii_stok_e) = 0
1593 tag_node_msr(1:nmn_l) = 0
1594 tag_nlins(1:nlins_l) = 0
1595 tag_nlinm(1:nlinm_l) = 0
1596 tag_nlins2(1:nlins) = 0
1597 tag_nlinm2(1:nlinm) = 0
1598 tag_nlg(1:nln_l) = 0
1599 tag_nlg2(1:numnod) = 0
1600 tag_nsne(1:nsne_l) = 0
1601 tag_nmne(1:nmne_l) = 0
1602 tag_nsve(1:nsne_l) = 0
1603 tag_msre(1:nmne_l) = 0
1607 . proc , intbuf_tab(ni),ipari(1,ni) ,
1608 . tag_node_2ry, tag_segm , tag_node_msr ,
1609 . tag_segm2 , tag_nm , tag_nlins, tag_nlinm,
1610 . tag_nlins2 , tag_nlinm2, tag_nlg ,tag_nlg2,
1611 . tag_scratch , intercep , ipari_l , ni, tag_nsne,
1612 . tag_nmne , tag_nsve , tag_msre ,nindx_nm,indx_nm,
1613 . nindx_scrt ,indx_scrt)
1618 . nrtm_l,4,tag_segm,tag_nlg2)
1621 . nsn_l,1,tag_node_2ry,tag_nlg2)
1624 . nmn_l,1,tag_node_msr,tag_nlg2)
1634 CALL copy_ival(intbuf_tab(ni)%LISUB,nisub,1)
1635 CALL split_nisub_i7(intbuf_tab(ni), nsn_l , tag_node_2ry, nrtm_l,
1636 . tag_segm , nisubs_l, nisubm_l)
1647 . tag_segm2, ii_stok , multimp , ncont ,
1648 . noint , inacti , tag_scratch ,
1649 . ii_stok_l,ipari_l,ni ,nindx_scrt,indx_scrt)
1656 . tag_nlins2, ii_stok_e , multimp , nconte ,
1657 . noint , inacti , tag_scratch ,
1658 . ii_stok_e_l,ipari_l,ni ,nindx_scrt,indx_scrt)
1662 siz = intbuf_tab(ni)%S_IFPEN
1663 intbuf_tab(ni)%IFPEN(1:siz) = 0
1664 CALL copy_ival(intbuf_tab(ni)%IFPEN,multimp*ncont,1)
1671 siz = intbuf_tab_l(ni)%S_DAANC6
1672 ALLOCATE(ibuf8_l(siz))
1675 n = intbuf_tab(ni)%NLG(k)
1680 . intbuf_tab(ni)%DAANC6(36*(k-1)+1) ,18 )
1690 . nlins_l,2,tag_nlins,tag_nlg2)
1693 . nlinm_l,2,tag_nlins,tag_nlg2)
1702 siz = intbuf_tab_l(ni)%S_ADCCM20
1703 CALL copy_ival(intbuf_tab(ni)%ADCCM20,siz,1)
1706 siz = intbuf_tab_l(ni)%S_CHAIN20
1707 CALL copy_ival(intbuf_tab(ni)%CHAIN20,siz,1)
1712 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1713 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1725 siz = intbuf_tab_l(ni)%S_XSAV
1726 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
1728 siz = intbuf_tab(ni)%S_CRIT
1729 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
1732 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
1736 CALL copy_rval(intbuf_tab(ni)%XFILTR,1,1)
1743 IF(inacti==5.OR.inacti==6.OR.inacti==7)
THEN
1745 . ii_stok_l,tag_ii,multimp,ncont)
1750 . ii_stok_l,tag_ii,multimp,ncont)
1752 . ii_stok_l,tag_ii,multimp,ncont)
1754 . ii_stok_l,tag_ii,multimp,ncont)
1764 siz = intbuf_tab_l(ni)%S_AVX_ANCR
1765 CALL copy_rval(intbuf_tab(ni)%AVX_ANCR,siz,1)
1768 IF(intbuf_tab(ni)%S_CRITX > 0)
THEN
1770 siz = 3*(nsne_l+nmne_l)
1771 CALL write_db(intbuf_tab(ni)%CRITX,siz)
1781 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,
1782 . tag_node_msr,tag_ii,tage_ii,tag_nlins,tag_nlinm,
1783 . tag_nlins2,tag_nlinm2,tag_nlg,tag_nlg2,tag_nsne,tag_nmne,
1784 . tag_nsve,tag_msre )
1787 ELSEIF(ityp == 21)
THEN
1790 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),
1791 . tag_node_2ry2(nsn),tag_segs(nrts_l),
1792 . tag_node_msr(nmn_l),tag_ii(ii_stok) ,
1793 . msr_l_i21(nmng),mndd_i21(nmng))
1795 tag_node_2ry(1:nsn_l) = 0
1796 tag_segm(1:nrtm_l) = 0
1797 tag_segs(1:nrts_l) = 0
1798 tag_node_2ry2(1:nsn) = 0
1799 tag_node_msr(1:nmn_l) = 0
1804 . tag_node_2ry, tag_segm , tag_node_2ry2,
1805 . tag_segs , tag_node_msr,
1806 . tag_scratch , intercep , ni, intth ,
1807 . nodlocal , msr_l_i21,mndd_i21,nindx_scrt ,indx_scrt)
1818 . tag_segs,nodlocal)
1825 . tag_node_2ry,nodlocal)
1830 IF(inacti==5.OR.inacti==6)
THEN
1832 . ii_stok_l,tag_ii,nsn_l,2)
1834 ALLOCATE(tabi_zero(2*nsn_l))
1835 tabi_zero(1:2*nsn_l)=0
1837 DEALLOCATE(tabi_zero)
1840 CALL copy_ival(intbuf_tab(ni)%IELES,nrts_l,1)
1843 IF(inacti==5.OR.inacti==6)
THEN
1845 . ii_stok_l,tag_ii,multimp*ncont,1)
1848 . ii_stok_l,tag_ii,tag_node_2ry2,multimp*ncont)
1850 ALLOCATE(tabi_zero(multimp*ncont))
1851 tabi_zero(1:multimp*ncont)=0
1852 CALL copy_ival(tabi_zero,multimp*ncont,1)
1853 CALL copy_ival(tabi_zero,multimp*ncont,1)
1854 DEALLOCATE(tabi_zero)
1859 IF(inacti==5.OR.inacti==6)
THEN
1863 ALLOCATE(tabi_zero(nsn_l))
1864 tabi_zero(1:nsn_l)=0
1866 DEALLOCATE(tabi_zero)
1880 CALL copy_ival(intbuf_tab(ni)%MSR,nmng_l,1)
1884 IF (intth == 2.OR.flagloadp > 0)
THEN
1890 IF (intth == 2.OR.flagloadp > 0)
THEN
1896 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
1897 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
1898 CALL copy_rval(intbuf_tab(ni)%CSTS,nsn_l,2)
1899 CALL copy_rval(intbuf_tab(ni)%XM0,nmng_l,3)
1903 IF(inacti==5.OR.inacti==6)
THEN
1907 ALLOCATE(tabr_zero(nsn_l))
1908 tabr_zero(1:nsn_l)=0
1910 DEALLOCATE(tabr_zero)
1915 CALL split_node_rval(intbuf_tab(ni)%GAP_S(1+nsn),nsn_l,1,tag_node_2ry)
1918 siz = intbuf_tab_l(ni)%S_XSAV
1919 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
1921 CALL copy_rval(intbuf_tab(ni)%CRIT,12,1)
1925 IF(inacti==5.OR.inacti==6)
THEN
1933 ALLOCATE(tabr_zero(nsn_l))
1934 tabr_zero(1:nsn_l)=0
1938 DEALLOCATE(tabr_zero)
1941 CALL copy_rval(intbuf_tab(ni)%STF,nrtm_l,1)
1943 CALL copy_rval(intbuf_tab(ni)%RCURV,nrtm_l,1)
1945 CALL copy_rval(intbuf_tab(ni)%ANGLM,nrtm_l,1)
1948 CALL copy_rval(intbuf_tab(ni)%FROT_P,10,1)
1951 CALL copy_rval(intbuf_tab(ni)%ALPHA0,1,1)
1962 siz = intbuf_tab_l(ni)%S_NOD_NORMAL
1963 CALL copy_rval(intbuf_tab(ni)%NOD_NORMAL,siz,1)
1965 DEALLOCATE(tag_node_2ry,tag_segm,tag_node_2ry2,tag_segs,
1966 . tag_node_msr,tag_ii,msr_l_i21,mndd_i21)
1969 ELSEIF(ityp == 22)
THEN
1971 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),
1972 . tag_node_msr(nmn_l),tag_segm2(nrtm),tag_ii(ii_stok))
1974 ALLOCATE(i710xsav(nmn))
1976 tag_node_2ry(1:nsn_l) = 0
1977 tag_segm(1:nrtm_l) = 0
1978 tag_segm2(1:nrtm) = 0
1979 tag_node_msr(1:nmn_l) = 0
1980 tag_ii(1:ii_stok) = 0
1984 . intercep(1,ni),tag_node_2ry,tag_segm ,
1985 . tag_segm2 ,tag_nm ,tag_node_msr,
1986 . tag_scratch ,ni, cep, multi_fvm,i710xsav,
1987 . nindx_nm ,indx_nm,nindx_scrt,indx_scrt,nodlocal,
1998 . tag_segm,nodlocal)
2000 . tag_node_2ry,nodlocal)
2002 . tag_node_msr,nodlocal
2012 CALL copy_ival(intbuf_tab(ni)%LISUB,nisub,1)
2013 CALL split_nisub_i7(intbuf_tab(ni), nsn_l , tag_node_2ry, nrtm_l,
2014 . tag_segm , nisubs_l, nisubm_l)
2020 . tag_segm2, ii_stok , multimp , ncont ,
2021 . noint , inacti , tag_scratch ,
2022 . ii_stok_l, ityp ,nindx_scrt,indx_scrt,nodlocal,
2023 . numnod_l,numnod,numels,len_cep,cep,type18_law151)
2029 . ii_stok_l,tag_ii,multimp,ncont)
2032 IF(flagremnode == 2)
THEN
2034 . tag_segm2,nremnode_l , nodlocal, itab,numnod_l)
2038 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
2039 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
2049 siz = intbuf_tab_l(ni)%S_XSAV
2050 intbuf_tab(ni)%XSAV(1:siz) = 0
2051 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
2053 siz = intbuf_tab_l(ni)%S_CRIT
2054 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
2057 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
2061 CALL copy_rval(intbuf_tab(ni)%XFILTR,1,1)
2074 IF(inacti==5.OR.inacti==6.OR.inacti==7)
THEN
2076 . ii_stok_l,tag_ii,multimp,ncont)
2081 . ii_stok_l,tag_ii,multimp,ncont)
2083 . ii_stok_l,tag_ii,multimp,ncont)
2085 . ii_stok_l,tag_ii,multimp,ncont)
2088 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,
2089 . tag_node_msr,tag_ii)
2090 DEALLOCATE(i710xsav)
2092 ELSEIF(ityp == 23)
THEN
2094 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),
2095 . tag_node_msr(nmn_l),tag_segm2(nrtm),tag_ii(ii_stok))
2096 ALLOCATE(i710xsav(nmn))
2098 tag_node_2ry(1:nsn_l) = 0
2099 tag_segm(1:nrtm_l) = 0
2100 tag_segm2(1:nrtm) = 0
2101 tag_node_msr(1:nmn_l) = 0
2102 tag_ii(1:ii_stok) = 0
2106 . intercep(1,ni),tag_node_2ry,tag_segm ,
2107 . tag_segm2 ,tag_nm ,tag_node_msr,
2108 . tag_scratch ,ni, cep, multi_fvm,i710xsav,
2109 . nindx_nm ,indx_nm,nindx_scrt,indx_scrt,nodlocal,
2119 CALL copy_ival(intbuf_tab(ni)%IRECTS,nrts_l,4)
2121 . tag_segm,nodlocal)
2125 . tag_node_2ry,nodlocal)
2127 . tag_node_msr,nodlocal)
2132 . tag_segm2, ii_stok , multimp , ncont ,
2133 . noint , inacti , tag_scratch ,
2134 . ii_stok_l, ityp ,nindx_scrt,indx_scrt ,nodlocal
2135 . numnod_l,numnod,numels,len_cep,cep,type18_law151)
2143 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
2144 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
2154 siz = intbuf_tab_l(ni)%S_XSAV
2155 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
2157 siz = intbuf_tab_l(ni)%S_CRIT
2158 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
2160 IF(mfrot/=0)
CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
2162 CALL copy_rval(intbuf_tab(ni)%XFILTR,1,1)
2165 . ii_stok_l,tag_ii,multimp,ncont)
2168 . ii_stok_l,tag_ii,multimp,ncont)
2170 . ii_stok_l,tag_ii,multimp,ncont)
2172 . ii_stok_l,tag_ii,multimp,ncont)
2174 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,
2175 . tag_node_msr,tag_ii )
2176 DEALLOCATE(i710xsav)
2179 ELSEIF(ityp == 24)
THEN
2181 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),
2182 . tag_node_msr(nmn_l),tag_segm2(nrtm),tag_ii(ii_stok))
2183 ALLOCATE(tag_segs(nrtse_l),tag_seg2s(nrtse),tag_nsne_l(nsne_l))
2184 ALLOCATE(tag_node_2ry2(nsn),tag_ielem(nrts_l),tag_segss(nrts_l))
2188 ALLOCATE(tag_2ry_inv(nsn))
2190 ALLOCATE(tag_2ry_inv(1))
2193 tag_node_2ry(1:nsn_l) = 0
2194 tag_segm(1:nrtm_l) = 0
2195 tag_segm2(1:nrtm) = 0
2196 tag_node_msr(1:nmn_l) = 0
2197 tag_ii(1:ii_stok) = 0
2198 tag_segs(1:nrtse_l) = 0
2199 tag_seg2s(1:nrtse) = 0
2200 tag_nsne_l(1:nsne_l)=0
2201 tag_node_2ry2(1:nsn) = 0
2204 IF(iedge4 > 0) tag_2ry_inv(1:nsn)=0
2205 IF(flag_init_24_25)
THEN
2206 nodlocal24(1:numnod) = nodlocal(1:numnod)
2207 nodlocal24(numnod+1:numnod+i24maxnsne) = 0
2208 flag_init_24_25 = .false.
2212 . intercep(1,ni),tag_node_2ry,tag_segm ,
2213 . tag_segm2 ,tag_nm ,tag_node_msr,
2214 . tag_scratch ,nodlocal24,nodlocal ,
2215 . intercep(2,ni),numnod_l,tag_nsne_l,
2216 . tag_segs,tag_seg2s,ni,tag_2ry_inv,iedge4,
2217 . tag_node_2ry2,tag_ielem,cep,cel,tag_segss,
2218 . nindx_nm,indx_nm,nindx_scrt ,indx_scrt,
2219 . nindx_ndlocal24,indx_ndlocal24,intercep(3,ni))
2227 IF(intnitsche > 0)
THEN
2229 . tag_segss,tag_node_2ry2)
2233 . tag_segm,nodlocal)
2235 . tag_node_2ry,nodlocal24)
2237 . tag_node_msr,nodlocal)
2250 CALL copy_ival(intbuf_tab(ni)%LISUB,nisub,1)
2251 CALL copy_ival(intbuf_tab(ni)%TYPSUB,nisub,1)
2252 CALL split_nisub_i7(intbuf_tab(ni), nsn_l , tag_node_2ry, nrtm_l,
2253 . tag_segm , nisubs_l, nisubm_l)
2259 nsn0_l = nsn_l - nsne_l
2261 . tag_segm2, ii_stok , multimp , ncont ,
2262 . noint , inacti ,tag_scratch ,ii_stok_l ,
2263 . intercep(2,ni),nindx_scrt,indx_scrt ,nodlocal ,
2272 IF(intbuf_fric_tab(intfric)%IORTHFRIC > 0)
THEN
2278 IF(flagremnode == 2)
THEN
2280 . tag_segm2,nremnode_l , nodlocal, itab ,
2281 . intbuf_tab(ni)%IS2ID,intercep(2,ni),nsne_l ,
2298 . ii_stok_l,tag_ii,multimp,ncont)
2305 . mx_vn,tag_segm,nodlocal)
2311 . tag_segm, tag_segm2 )
2315 CALL copy_ival(intbuf_tab(ni)%ISEDGE,l24add,1)
2332 . tag_segs,nodlocal,ni)
2334 CALL split_seg_edge(nsne_l,intbuf_tab(ni)%IS2SE,tag_nsne_l,tag_seg2s,ni)
2342 . tag_node_2ry,ni,tag_2ry_inv ,proc)
2349 IF(intnitsche > 0)
THEN
2357 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
2358 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
2362 IF(istif_msdt > 0)
THEN
2372 siz = intbuf_tab_l(ni)%S_XSAV
2373 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
2375 siz = intbuf_tab_l(ni)%S_CRIT
2376 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
2379 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
2383 CALL copy_rval(intbuf_tab(ni)%XFILTR,1,1)
2393 CALL copy_rval(intbuf_tab(ni)%SECND_FR,nsn_l,6)
2402 CALL copy_rval(intbuf_tab(ni)%TIME_S,nsn_l,1)
2420 CALL copy_rval(intbuf_tab(ni)%DGAP_NM,nrtm_l,4)
2421 CALL copy_rval(intbuf_tab(ni)%DGAP_M,nrtm_l,1)
2422 CALL copy_rval(intbuf_tab(ni)%DELTA_PMAX_DGAP,1,1)
2437 IF(intbuf_fric_tab(intfric)%IORTHFRIC > 0)
THEN
2444 IF(nindx_ndlocal24>0)
THEN
2445 DO ii=1,nindx_ndlocal24
2446 i = indx_ndlocal24(ii)
2450 nodlocal24(i) = nodlocal(i)
2456 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,
2457 . tag_node_msr,tag_ii,tag_segs)
2458 DEALLOCATE(tag_seg2s)
2459 DEALLOCATE(tag_nsne_l)
2460 DEALLOCATE(tag_2ry_inv)
2461 DEALLOCATE(tag_node_2ry2,tag_ielem,tag_segss)
2464 ELSEIF(ityp == 25)
THEN
2466 ALLOCATE(tag_node_2ry(nsn_l),tag_segm(nrtm_l),
2467 . tag_node_msr(nmn_l),tag_segm2(nrtm),tag_ii(ii_stok),
2468 . tag_sm(nadmsr),knor2msr(nadmsr_l+1),nor2msr(4*nrtm_l),
2469 . tag_node_2ry2(nsn))
2472 tag_node_2ry(1:nsn_l) = 0
2473 tag_segm(1:nrtm_l) = 0
2474 tag_segm2(1:nrtm) = 0
2475 tag_node_msr(1:nmn_l) = 0
2476 tag_ii(1:ii_stok) = 0
2477 tag_node_2ry2(1:nsn) = 0
2479 tag_sm(1:nadmsr) = 0
2481 IF(flag_init_24_25)
THEN
2482 nodlocal24(1:numnod) = nodlocal(1:numnod)
2483 flag_init_24_25 = .false.
2488 knor2msr(1:nadmsr_l+1)=0
2489 nor2msr(1:4*nrtm_l) =0
2491 . intercep(1,ni),tag_node_2ry,tag_segm ,
2492 . tag_segm2 ,tag_nm ,tag_node_msr,
2493 . tag_scratch ,tag_sm ,knor2msr ,
2494 . nor2msr ,tag_node_2ry2,nindx_nm,indx_nm,
2495 . nindx_scrt ,indx_scrt ,nrtm_l)
2502 ALLOCATE(tag_edge(nedge_l))
2503 ALLOCATE(tag_edge2(nedge))
2507 ALLOCATE(tag_ii_e2e(ii_stok_e))
2508 ALLOCATE(tag_ii_e2s(ii_stok_s))
2509 ALLOCATE(tag_jj_e2e(ii_stok_e))
2510 ALLOCATE(tag_jj_e2s(ii_stok_s))
2512 . tag_edge, nedge_l, tag_edge2, nedge,
2513 . ii_stok_e, ii_stok_e_l, tag_ii_e2e,
2514 . ii_stok_s, ii_stok_s_l, tag_ii_e2s,
2515 . proc , ipari(63,ni),ipari(83,ni),
2516 . nrtm , tag_jj_e2e ,tag_jj_e2s )
2522 . tag_segm,nodlocal)
2524 . tag_node_2ry,nodlocal24)
2526 . tag_node_msr,nodlocal)
2537 CALL copy_ival(intbuf_tab(ni)%LISUB,nisub,1)
2538 CALL copy_ival(intbuf_tab(ni)%TYPSUB,nisub,1)
2540 1 tag_segm , nisubs_l, nisubm_l,
2558 . tag_segm2, ii_stok , multimp , ncont ,
2559 . noint , inacti ,tag_scratch ,ii_stok_l ,
2560 . nindx_scrt,indx_scrt)
2576 assert(tag_edge(i) > 0)
2588 IF(intbuf_fric_tab(intfric)%IORTHFRIC > 0)
THEN
2595 IF(flagremnode == 2)
THEN
2597 . tag_segm2,nremnode_l , nodlocal ,nremnor,
2598 . nsn , nsn_l , tag_node_2ry2,itab,
2602 . tag_edge ,tag_edge2 , tag_segm2 , itab ,numnod_l ,
2605 . tag_edge ,tag_edge2 , tag_segm2 , itab ,numnod_l ,
2630 . tag_segm,tag_segm2)
2636 . tag_segm, tag_segm2 )
2657 . intbuf_tab(ni)%IRECTM,
2659 . intbuf_tab(ni)%LEDGE,
2660 . intbuf_tab(ni)%MSEGLO,
2661 . intbuf_tab(ni)%ADMSR,
2673 CALL copy_ival(intbuf_tab(ni)%ACTNOR,nrtm_l,1)
2678 . intbuf_tab(ni)%ADSKYN,intbuf_tab(ni)%IADNOR,nadmsr,
2679 . intbuf_tab(ni)%ADMSR,nadmsr_l
2680 . nrtm_l,tag_segm,tag_sm,intercep(1,ni))
2700 . tag_edge, nedge_l, tag_edge2, nedge,
2701 . ii_stok_e, ii_stok_e_l, tag_ii_e2e,
2702 . ii_stok_s, ii_stok_s_l, tag_ii_e2s,
2703 . tag_jj_e2e,tag_jj_e2s )
2709 nconte = ipari_l(88,ni)
2710 multimpe = ipari_l(87,ni)
2713 . ii_stok_e_l,tag_ii_e2e,multimpe,nconte)
2722 CALL split_seg_ielem(intbuf_tab(ni)%IELEM_M,intbuf_tab(ni)%PROC_MVOISIN, intbuf_tab(ni)%MVOISIN,nrtm,
2723 . nrtm_l ,tag_segm ,cep,cel ,
2724 . idel25_solid,intercep(1,ni),proc,numels,
2725 . numelq ,numelc ,numelt ,numelp ,
2730 CALL copy_rval(intbuf_tab(ni)%STFAC,1,1)
2731 CALL copy_rval(intbuf_tab(ni)%VARIABLES,nparir,1)
2735 IF(istif_msdt > 0)
THEN
2745 siz = intbuf_tab_l(ni)%S_XSAV
2746 CALL copy_rval(intbuf_tab(ni)%XSAV,siz,1)
2748 siz = intbuf_tab_l(ni)%S_CRIT
2749 CALL copy_rval(intbuf_tab(ni)%CRIT,siz,1)
2752 CALL copy_rval(intbuf_tab(ni)%FRIC_P,10,1)
2756 CALL copy_rval(intbuf_tab(ni)%XFILTR,1,1)
2759 IF(intth>0.OR.ivis2==-1)
THEN
2770 nconte = ipari_l(88,ni)
2771 multimpe = ipari_l(87,ni)
2773 . ii_stok_e_l,tag_ii_e2e,multimpe,nconte)
2785 IF(istif_msdt > 0)
CALL split_node_rval(intbuf_tab(ni)%STIFMSDT_EDG,nedge_l,1,tag_edge)
2792 CALL copy_rval(intbuf_tab(ni)%SECND_FR,nsn_l,6)!jd(27)
2801 CALL copy_rval(intbuf_tab(ni)%TIME_S,nsn_l,2)
2805 IF(intbuf_fric_tab(intfric)%IORTHFRIC > 0)
THEN
2816 nconte = ipari_l(88,ni)
2817 multimpe = ipari_l(87,ni)
2849 DEALLOCATE(tag_node_2ry,tag_segm,tag_segm2,
2850 . tag_node_msr,tag_ii,tag_sm,
2851 . knor2msr,nor2msr,tag_node_2ry2)
2852 DEALLOCATE(tag_edge)
2853 DEALLOCATE(tag_edge2)
2854 IF(iedge /=0)
DEALLOCATE(tag_ii_e2s,tag_jj_e2s)
2855 IF(iedge /=0)
DEALLOCATE(tag_ii_e2e,tag_jj_e2e)
2860 IF(nindx_nm>0) tag_nm(indx_nm(1:nindx_nm)) = 0
2862 IF(nindx_scrt>0) tag_scratch(indx_scrt(1:nindx_scrt)) = 0
2864 IF(flag_24_25.AND.(nindx_ndlocal24>0)) nodlocal24( indx_ndlocal24(1:nindx_ndlocal24) ) = 0
2871 DEALLOCATE( nodlocal24 )
2872 DEALLOCATE( indx_ndlocal24 )