147
148
149
150
151
152
153
155 USE my_alloc_mod
156 USE shrink_array_mod
158 USE intbufdef_mod
159 USE intbuf_fric_mod
164 USE multi_fvm_mod , ONLY : multi_fvm_struct
165 use i9bcs_check_mod , ONLY : i9bcs_check
166 use i1bcs_check_mod , only : i1bcs_check
168 use element_mod , only :nixs,nixc,nixtg,nixt,nixp,nixr
169
170
171
172#include "implicit_f.inc"
173
174
175
176#include "mvsiz_p.inc"
177
178
179
180#include "com04_c.inc"
181#include "param_c.inc"
182#include "scr03_c.inc"
183#include "scr12_c.inc"
184#include "units_c.inc"
185#include "vect07_c.inc"
186#include "scr17_c.inc"
187
188
189
190 TYPE(MULTI_FVM_STRUCT),INTENT(IN) :: MULTI_FVM
191 INTEGER,INTENT(IN) :: SITAB
192 INTEGER,INTENT(IN) :: SICODE
193 INTEGER,INTENT(IN) :: ICODE(SICODE)
194 INTEGER,INTENT(IN) :: SINSCR
195 INTEGER NIN, IWRN, NSNT, NMNT, NSN2T, NMN2T, NSNET ,NMNET ,RESORT
196 INTEGER, INTENT(in) :: N2D
197 INTEGER, DIMENSION(NPARI,NINTER), INTENT(inout) :: IPARI
198 INTEGER INSCR(SINSCR), IXS(NIXS,NUMELS), IXC(NIXC,NUMELC),
199 . IXT(NIXT,NUMELT) ,IXP(NIXP,NUMELP) ,IXR(NIXR,NUMELR),
200 . ITAB(SITAB), MWA(*), IXTG(NIXTG,NUMELTG), IKINE(*),
201 . NELEMINT, IDDLEVEL,IFIEND,
202 . IWCONT(*), IWCIN2(*),
203 . KNOD2ELS(*), KNOD2ELC(*), KNOD2ELTG(*),
204 . NOD2ELS(*), NOD2ELC(*), NOD2ELTG(*),
205 . SH4TREE(KSH4TREE,*), SH3TREE(KSH3TREE,*), IPART(*),
206 . IPARTC(*), IPARTTG(*),NOD2EL1D(*),KNOD2EL1D(*),
207 . IXS10(6,*), IXS16(8,*), IXS20(12,*), IPARTS(*),
208 . KXIG3D(NIXIG3D,*),IXIG3D(*),TAGPRT_FRIC(*),
209 . IPARTT(*) ,IPARTP(*) ,IPARTX(*) ,IPARTR(*),
210 . ISKEW(*)
211 INTEGER IKINE1(*), IELEM21(*),I_MEM,ID,IREMNODE,IREMNODE_EDG,
212 . NREMNODE,KXX(*),IXX(*),IGEO(*),IWORKSH(*),NSN_MULTI_CONNEC,T2_ADD_CONNEC(*),
213 . T2_NB_CONNEC(*),T2_CONNEC(*)
214 INTEGER NOM_OPT(LNOPT1,*)
215 INTEGER, INTENT(in) :: NSPMD
216 INTEGER, INTENT(in) :: INTER_TYPE2_NUMBER
218 . pm(*), geo(*), rwa(6,*),
219 . thk(*),thk_part(*), lelx(*), fillsol(*)
222 INTEGER, INTENT(in) :: S_APPEND_ARRAY
223 my_real,
DIMENSION(3*S_APPEND_ARRAY),
TARGET :: x_append
224 my_real,
DIMENSION(S_APPEND_ARRAY),
TARGET :: mass_append
225 INTEGER , INTENT(IN) :: IRESP
226 CHARACTER(LEN=NCHARTITLE)::TITR
227 TYPE(INTERSURFP) :: INTERCEP(3,NINTER)
228 TYPE(INTBUF_STRUCT_), DIMENSION(NINTER), INTENT(inout) :: INTBUF_TAB
229 TYPE(INTBUF_FRIC_STRUCT_) INTBUF_FRIC_TAB(*)
230
231 TYPE (GROUP_) , DIMENSION(NGRBRIC) :: IGRBRIC
232 TYPE (SURF_) , DIMENSION(NSURF) :: IGRSURF
233 TYPE(t_ale_connectivity), INTENT(INOUT) :: ALE_CONNECTIVITY
234 LOGICAL, INTENT(in) :: FLAG_REMOVED_NODE
235 TYPE(INTER_CAND_), iNTENT(inout) :: INTER_CAND
236 INTEGER, DIMENSION(NUMELS), INTENT(INOUT):: ELEM_LINKED_TO_SEGMENT
237 INTEGER, INTENT(IN) :: NIN25
238 INTEGER, INTENT(IN) :: FLAG_ELEM_INTER25(NINTER25,NUMELS)
239 type(stack_ply), intent(inout) :: stack
240
241
242
243 INTEGER NRTS, NRTM, NSN, NMN, NMN0, NTY, NST, NMT, IBUC, NOINT,
244 . NSNE, NMNE,NLINS,NLINM,NLN,L16,L17,L20,L21,L22,L23,J31P,J36P,
245 . I, I_STOK,IRS,IRM,ILEV,IDEL2,IPROJ,
246 . NSEG, NGROUS, NG, INACTI,IWPENE,ISTOK,
247 . JLT_NEW,IGAP,MULTIMP,INPENE,ISEARCH,ITIED,
248 . IGN,IGE,NME,NMES,NAD,EAD,ISU1,ISU2,L30,
249 . INTTH, IBIDON,NLINSA,NLINMA,ISS2,IFS2,ISYM,IGNORE,NCONT,ICURV,
250 . DIMFLAG,IPEN0,INTKG,INTPLY,NRTSE,NSN0,ITH, NADMSR, NEDGE, IERROR, IT19,INT_TYP,
251 . NRTM_FE, NRTM_IGE,NMN_IGE,NMN_FE,NRTS_FE, NRTS_IGE,NSN_IGE,NSN_FE,L,IEDG4,IS1,
252 . IVIS2, ISHARP, IEDGE, INACTBID, ITHK25, IGAP0,IGSTI
253 INTEGER :: NUMNOD_P
254 integer
255 . n1(mvsiz),n2(mvsiz),m1(4,mvsiz),m2(4,mvsiz),nrtm0,nrtm_sh,iwpene0,iad,nbric,grbric_id,ii,ibric,iad_ixint,
256 . nodeid, inod, mvoisn(mvsiz,4),ibound(4,mvsiz)
257 INTEGER ITASK, NEDGE_T, ESHIFT, NRTM_T, SSHIFT, MULNSNE, MULNSNS, MULTIMPE, MULTIMPS, NCONTE,
258 . CAND_E_OLD(2), I_MEME(2),
259 . I_START, I_MEM_REM, NEW_SIZE
260 INTEGER :: KIND_INTER
261 my_real marge,vmaxdt, bminma(6), gapm_mx, gaps_mx, gapm_l_mx,gaps_l_mx
262 my_real maxbox,minbox,gap0,bid,tzinf,gapinf,
bidon,fpenmax,drad,penmn,gapscale,bgapemx_l
263 my_real nx(mvsiz),ny(mvsiz),nz(mvsiz),gapv(mvsiz)
264 my_real rdum(1) ,pene_max,penmax,facf
265 my_real :: gap,gapmin,gapmax,dgapload
266 my_real,
DIMENSION(:),
ALLOCATABLE :: penmin,gap_maxneigh
267 INTEGER, DIMENSION(:),ALLOCATABLE :: IPARTNS,INOD2LIN,TAGSECND,NOD2LIN,PERM,PERMINV
268 my_real,
DIMENSION(:),
ALLOCATABLE,
TARGET :: xe
269 my_real,
DIMENSION(:),
POINTER :: ptr_x,ptr_ms
270 INTEGER, POINTER :: pIXINT
271 INTEGER, DIMENSION(:),ALLOCATABLE :: IPARTSM
272
273 INTEGER, DIMENSION(MVSIZ) ::PROV_N,PROV_E
274 INTEGER, DIMENSION(MVSIZ) :: IX1,IX2,IX3,IX4,NSVG
275 my_real,
DIMENSION(MVSIZ) :: x1,x2,x3,x4
276 my_real,
DIMENSION(MVSIZ) :: y1,y2,y3,y4
277 my_real,
DIMENSION(MVSIZ) :: z1,z2,z3,z4
278 my_real,
DIMENSION(MVSIZ) :: xi,yi,zi
279 my_real,
DIMENSION(MVSIZ) :: x0,y0,z0,stif
280 my_real,
DIMENSION(MVSIZ) :: n11,n21,n31
281 my_real,
DIMENSION(MVSIZ) :: xn1,yn1,zn1
282 my_real,
DIMENSION(MVSIZ) :: xn2,yn2,zn2
283 my_real,
DIMENSION(MVSIZ) :: xn3,yn3,zn3
284 my_real,
DIMENSION(MVSIZ) :: xn4,yn4,zn4
285 my_real,
DIMENSION(MVSIZ) :: p1,p2,p3,p4
286 my_real,
DIMENSION(MVSIZ) :: lb1,lb2,lb3,lb4
287 my_real,
DIMENSION(MVSIZ) :: lc1,lc2,lc3,lc4
288 my_real,
DIMENSION(MVSIZ) :: s,t
290 . nnx(mvsiz,5), nny(mvsiz,5), nnz(mvsiz,5), pene(4,mvsiz),
291 . gaps(mvsiz), gapm(mvsiz), gap_nm(4,mvsiz), gapmxl(mvsiz),
292 . xxs1(mvsiz), xxs2(mvsiz), xys1(mvsiz), xys2(mvsiz), xzs1(mvsiz), xzs2(mvsiz),
293 . xxm1(4,mvsiz), xxm2(4,mvsiz), xym1(4,mvsiz), xym2(4,mvsiz), xzm1(4,mvsiz), xzm2(4,mvsiz),
294 . gapve(mvsiz),
295 . ex(4,mvsiz), ey(4,mvsiz), ez(4,mvsiz), fx(mvsiz), fy(mvsiz), fz(mvsiz)
296 LOGICAL PRINT_WARNING,LAW151_TYPE18,TYPE18
297 CHARACTER FILNAM*100
298 INTEGER :: TOTAL_NUMBER_CANDIDATE
299 INTEGER :: SKIP_TYPE25_EDGE_2_EDGE
300 INTEGER :: FLAG_OUTPUT
301 INTEGER, DIMENSION(NINTER) :: NREMN
302 LOGICAL :: LOCAL_FLAG_REMOVED_NODE
303 INTEGER :: NN, NNI,ijk
304 LOGICAL :: IS_USED_WITH_LAW151
305
306 inpene = 0
307 iwpene = 0
308 istok = 0
309 nrts = ipari(3,nin)
310 nrtm = ipari(4,nin)
311 nsn = ipari(5,nin)
312 nmn = ipari(6,nin)
313 nmn0 = nmn
314 nty = ipari(7,nin)
315 nst = ipari(8,nin)
316 nmt = ipari(9,nin)
317 ibuc = ipari(12,nin)
318 isearch = ipari(12,nin)
319 noint = ipari(15,nin)
320 igap = ipari(21,nin)
321 inacti = ipari(22,nin)
322 multimp = ipari(23,nin)
323 irm = ipari(24,nin)
324 irs = ipari(25,nin)
325 idel2 = ipari(17,nin)
326 ilev = ipari(20,nin)
327 itied = 0
328 isu1 = ipari(45,nin)
329 isu2 = ipari(46,nin)
330 intth = ipari(47,nin)
331 nrtm_sh = ipari(42,nin)
332 ncont = ipari(18,nin)
333 icurv = ipari(39,nin)
334 intkg = ipari(65,nin)
335 intply = ipari(66,nin)
336 it19 = ipari(71,nin)
337 drad = zero
338 rdum(1) = 0
339 nrtm_ige = ipari(73,nin)
340 nrtm_fe = ipari(74,nin)
341 nrts_ige = ipari(75,nin)
342 nrts_fe = ipari(76,nin)
343 nsn_ige = ipari(77,nin)
344 nsn_fe = ipari(78,nin)
345 nmn_ige = ipari(79,nin)
346 nmn_fe = ipari(80,nin)
347 igap0 = ipari(53,nin)
348 iedge = ipari(58,nin)
349 nconte = ipari(88,nin)
350 is1 = ipari(13,nin) / 10
351
352 law151_type18=.false.
353 type18=.false.
354 IF(nty==7 .AND. inacti==7) type18=.true.
355 IF(type18.AND.ipari(14,nin)==151)law151_type18=.true.
356 IF (it19<=0) THEN
357 int_typ =
max(nty,abs(it19)*19)
358 IF (resort == 0)THEN
359 IF((nty==7.AND.inacti==7).AND.(nty/=22))THEN
360 WRITE(iout,2181)noint
361 ELSE
362 WRITE(iout,2001)noint,int_typ
363 END IF
364 END IF
365 ENDIF
366
367 IF(nty==1) THEN
368
369 l17=1
370 l20=l17+nmn
371 l22=l20+1+nsn
372
373
374
375 intbuf_tab(nin)%NRT(1:nmt) = 0
376
378 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%NSEGM ,intbuf_tab(nin)%NRT ,intbuf_tab(nin)%MSR,
379 2 intbuf_tab(nin)%NSV ,intbuf_tab(nin)%ILOCS ,nsn ,nmn
380 3 intbuf_tab(nin)%S_NRT )
382 1 x ,intbuf_tab(nin)%IRECTS ,ixs ,nrts ,ixc
383 2 nin
384 3 geo ,pm ,knod2els ,knod2elc ,knod2eltg ,
385 4 nod2els , nod2elc ,nod2eltg ,igrsurf(isu1) ,
386 5 thk ,nty ,ixs10 ,ixs16 ,ixs20 ,
387 6
id ,titr ,igeo ,stack%pm ,iworksh
389 1 x ,intbuf_tab(nin)%IRECTM ,ixs ,nrtm ,ixc ,
390 2 -nin ,nmn ,intbuf_tab(nin)%MSR ,noint ,ixtg,
391 3 geo ,pm ,knod2els ,knod2elc ,knod2eltg ,
392 4 nod2els , nod2elc ,nod2eltg ,igrsurf(isu2) ,
393 5 thk ,nty ,ixs10 ,ixs16 ,ixs20 ,
394 6
id ,titr , igeo ,stack%pm ,iworksh)
396 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%NRT ,intbuf_tab(nin)%MSR ,intbuf_tab(nin)%NSV,
397 2 intbuf_tab(nin)%ILOCS ,intbuf_tab(nin)%IRTLM ,intbuf_tab(nin)%NSEGM ,nsn ,nmn ,
398 3 itab ,
id ,titr ,nrtm)
399 WRITE(iout,2002)
400
402 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%CSTS ,intbuf_tab(nin)%MSR ,intbuf_tab(nin)%NSV,
403 2 intbuf_tab(nin)%ILOCS ,intbuf_tab(nin)%IRTLM ,nsn ,itab ,ikine ,
404 3 ikine1 ,
id ,titr ,ilev ,nty ,
405 4 intbuf_tab(nin)%CSTS_BIS)
406 CALL i1bcs_check(icode, sicode, nsn, intbuf_tab(nin)%NSV, sitab, itab, noint, titr, nty)
407
408 ELSEIF(nty == 2 .AND. isearch == 1) THEN
409
410 l16 = 1
411 l17 = l16+nsn
412 l20 = l17+nmn
413 l21 = l20+1+nsn
414 l22 = l21+1+nmn
415 l23 = l22+nst
417 1 x ,intbuf_tab(nin)%IRECTM ,inscr(l21) ,inscr(l23) ,intbuf_tab(nin)%MSR,
418 2 intbuf_tab(nin)%NSV ,inscr(l16) ,nsn ,nmn ,nrtm ,intbuf_tab(nin)%S_IRECTM,
419 3 sinscr-l23+1 )
420
421 IF (ipari(13,nin)>0) THEN
423 1 x
424 2 -nin ,nmn ,intbuf_tab(nin)%MSR ,noint
425 3 geo ,pm ,knod2els ,knod2elc ,knod2eltg ,
426 4 nod2els ,nod2elc ,nod2eltg ,igrsurf(isu2) ,
427 5 thk ,nty ,ixs10 ,ixs16 ,ixs20 ,
428 6
id ,titr ,igeo ,stack%pm
429 END IF
431 1 x
432 2 inscr(l16) ,intbuf_tab(nin)%IRTLM ,inscr(l21) ,nsn
433 3 itab ,
id ,titr ,nrtm)
434 WRITE(iout,2002)
436 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%CSTS ,intbuf_tab
437 2 inscr(l16) ,intbuf_tab(nin)%IRTLM ,nsn ,itab ,ikine
438 3 ikine1 ,
id ,titr ,ilev ,nty ,
439 4 intbuf_tab(nin)%CSTS_BIS)
440
441
442 CALL i2main(intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,intbuf_tab(nin)%IRECTM,ipari(1,nin),
443 . mwa,mwa
444
445 nmn = ipari(6,nin)
446 intth = ipari(47,nin)
447 IF ((ilev==20 .OR. ilev==21 .OR. ilev==22) .OR. intth > 0 ) THEN
448 j31p =1+2*(nmn0-nmn)
449 j36p =1+2*(nmn0-nmn)
450 DO i = 1,nsn
451 intbuf_tab(nin)%AREAS2(i) = intbuf_tab(nin)%AREAS2(j31p+i-1)
452 ENDDO
454 . x ,intbuf_tab(nin)%NSV ,intbuf_tab(nin)%AREAS2,nsn ,itab ,
455 . ixc ,ixtg ,ixs ,knod2els ,nod2els ,
456 . knod2elc ,nod2elc ,knod2eltg ,nod2eltg ,ilev ,
458 ENDIF
459 IF ((ilev >=10 .AND. ilev < 23) ) THEN
460 IF (ilev==20 .OR. ilev==21 .OR. ilev==22) THEN
461 j31p =1+2*(nmn0-nmn)
462 j36p =1+2*(nmn0-nmn)
463 intbuf_tab(nin)%RUPT(1) = intbuf_tab
464 intbuf_tab(nin)%RUPT(2) = intbuf_tab(nin)%IRECTM
465 intbuf_tab(nin)%RUPT(3) = intbuf_tab(nin)%IRECTM(j36p+2)
466 intbuf_tab(nin)%RUPT(4) = intbuf_tab(nin)%IRECTM(j36p+3)
467 intbuf_tab(nin)%RUPT(5) = intbuf_tab(nin)%IRECTM(j36p
468 intbuf_tab(nin)%RUPT(6) = intbuf_tab(nin)%IRECTM(j36p+5)
469 ENDIF
470
471 ENDIF
472
473
474
475 IF (iddlevel==0)THEN
476 IF ( ((nelemint+nsn)) > inter_cand%S_IXINT_2)
CALL upgrade_ixint(inter_cand
478 1 n2d,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,intbuf_tab(nin)%IRTLM,inter_cand
479 ENDIF
480
481 IF((iddlevel==0).AND.
482 + (dectyp>=3.AND.dectyp<=6))THEN
483
484 CALL i2wcontdd(intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,nsn,nmn,iwcin2,
485 2 nsn2t ,nmn2t )
486 END IF
487
488
489 ELSEIF(nty==2.AND.isearch==2) THEN
490
491 tzinf=intbuf_tab(nin)%VARIABLES(4)
492
493
494 IF (ipari(13,nin)>0) THEN
496 1 x ,intbuf_tab(nin)%IRECTM ,ixs ,nrtm ,ixc ,
497 2 -nin ,nsn ,intbuf_tab(nin)%MSR ,noint ,
498 3 ixtg ,intbuf_tab(nin)%IRTLM ,intbuf_tab(nin)%CSTS ,intbuf_tab(nin)%DPARA ,geo ,
499 4 pm ,knod2els ,knod2elc ,knod2eltg ,nod2els ,
500 5 nod2elc ,nod2eltg ,igrsurf(isu2) ,thk ,
501 6 nty ,ixs10 ,ixs16 ,ixs20 ,igeo ,
502 7 stack%pm ,iworksh )
503 END IF
504
505
506
507 ignore = ipari(34,nin)
508 iproj = ipari(57,nin)
510 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%NSV ,nseg ,intbuf_tab(nin)%IRTLM,
511 2 nmn ,nrtm ,mwa ,nsn ,rwa ,
512 3 noint ,intbuf_tab(nin)%MSR ,intbuf_tab(nin)%CSTS ,intbuf_tab(nin)%DPARA ,tzinf ,
513 4 ignore ,thk ,knod2els ,knod2elc ,knod2eltg ,
514 5 nod2els ,nod2elc ,nod2eltg ,
515 6 -nin ,ixc ,ixtg ,thk_part ,ipartc ,
516 7 geo ,ixs ,ixs10 ,pm ,ixs16 ,
517 8 ixs20 ,iparttg ,
id,titr ,igeo ,stack ,
518 9 iworksh ,
519 1 ix1 ,ix2 ,ix3,ix4 ,nsvg ,
520 2 prov_n ,prov_e ,n11,n21 ,n31 ,
521 3 x1 ,x2 ,x3 ,x4 ,stif ,
522 4 y1 ,y2 ,y3 ,y4 ,z1 ,
523 5 z2 ,z3 ,z4 ,xi ,yi ,
524 6 zi ,x0 ,y0 ,z0 ,xn1 ,
525 7 yn1 ,zn1 ,xn2,yn2 ,zn2 ,
526 8 xn3 ,yn3 ,zn3,xn4 ,yn4 ,
527 9 zn4 ,p1 ,p2 ,p3 ,p4 ,
528 1 lb1 ,lb2 ,lb3,lb4 ,lc1 ,
529 2 lc2 ,lc3 ,lc4,s ,t ,
530 3 ilev)
531
532
534 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%CSTS ,intbuf_tab(nin)%MSR ,intbuf_tab(nin)%NSV ,
535 2 intbuf_tab(nin)%IRTLM ,itab ,ikine ,ikine1 ,intbuf_tab(nin)%DPARA,
536 3 ipari(1,nin) ,tzinf ,iddlevel ,
537 4
id ,titr ,intbuf_tab(nin) ,intbuf_tab(nin)%VARIABLES(4) , iproj,
538 5 ixs ,ixc ,ixs10 ,ixs16 ,ixs20,intbuf_tab(nin)%CSTS_BIS,
539 6 nsn_multi_connec ,t2_add_connec ,t2_nb_connec ,t2_connec ,ixtg
540
541 nsn = ipari(5,nin)
542 nmn = ipari(6,nin)
543 intth = ipari(47,nin)
544
545 IF ((ilev >=10 .AND. ilev < 23) .OR. intth > 0) THEN
547 . x ,intbuf_tab(nin)%NSV ,intbuf_tab(nin)%AREAS2 ,nsn ,itab,
548 . ixc ,ixtg ,ixs ,knod2els ,nod2els ,
549 . knod2elc ,nod2elc ,knod2eltg ,nod2eltg ,ilev ,
551 ENDIF
552
553
554
555 IF (iddlevel==0.AND.nspmd>1)THEN
556 IF ( ((nelemint+nsn)) > inter_cand%S_IXINT_2)
CALL upgrade_ixint(inter_cand,nelemint,nsn)
558 1 n2d,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,intbuf_tab(nin)%IRTLM,inter_cand
559 ENDIF
560
561
562 IF(iddlevel == 0 .AND. (dectyp >= 3 .AND. dectyp <= 6))THEN
563
564 CALL i2wcontdd(intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,nsn,nmn,iwcin2,
565 + nsn2t ,nmn2t )
566 END IF
567
568
569 ELSEIF(nty==3) THEN
570
571
572
573 intbuf_tab(nin)%LNSV(1:nst) = 0
574 intbuf_tab(nin)%LMSR(1:nmt) = 0
575 intbuf_tab(nin)%STFNS(1:nsn) = 0
576 intbuf_tab(nin)%STFNM(1:nmn) = 0
577
579 1 x,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%NSEGS,intbuf_tab(nin)%LNSV,intbuf_tab
580 2 intbuf_tab(nin)%MSR,intbuf_tab(nin)%ILOCM,nmn ,nsn ,nrts ,intbuf_tab(nin)%S_IRECTS
582 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSEGM,intbuf_tab(nin)%LMSR,intbuf_tab(nin)%MSR,
583 2 intbuf_tab(nin)%NSV,intbuf_tab(nin)%ILOCS,nsn,nmn ,nrtm ,intbuf_tab(nin)%S_IRECTM ,intbuf_tab(nin)%S_LMSR )
585 1 x ,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%STFS,ixs,pm ,
586 2 geo ,nrts ,ixc ,intbuf_tab(nin)%STFNS,intbuf_tab(nin)%NSEGS,
587 3 intbuf_tab(nin)%LNSV,nin ,nsn ,intbuf_tab(nin)%NSV,intbuf_tab(nin)%STFAC,
588 4 nty ,intbuf_tab(nin)%VARIABLES(2),noint ,ixtg ,irs ,
589 5 knod2els ,knod2elc ,knod2eltg ,nod2els ,nod2elc ,
590 6 nod2eltg ,igrsurf(isu1),thk ,ixs10 ,
592 8
bidon ,
bidon ,igeo ,fillsol ,stack%pm, iworksh )
593
595 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%STFM,ixs ,pm ,
596 2 geo ,nrtm ,ixc ,intbuf_tab(nin)%STFNM,intbuf_tab(nin)%NSEGM,
597 3 intbuf_tab(nin)%LMSR,-nin ,nmn ,intbuf_tab(nin)%MSR,intbuf_tab(nin)%STFAC,
598 4 nty ,intbuf_tab(nin)%VARIABLES(2),noint ,ixtg ,irm
599 5 knod2els ,knod2elc ,knod2eltg ,nod2els ,nod2elc ,
600 6 nod2eltg ,igrsurf(isu2),thk ,ixs10 ,
602 8
bidon ,
bidon ,igeo ,fillsol ,stack%pm, iworksh )
603
605 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%LMSR,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,
606 2 intbuf_tab(nin)%ILOCS,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%NSEGM,nsn ,nmn ,
608
610 1 x,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%LNSV,intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,
611 2 intbuf_tab(nin)%ILOCM,intbuf_tab(nin)%IRTLS,intbuf_tab
613
614 WRITE(iout,2002)
616 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%MSR,intbuf_tab(nin
617 2 intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%CSTS,intbuf_tab(nin
618 2 itab ,iwpene ,
id,titr)
619
620 WRITE(iout,2003)
622 1 x,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%NSV,intbuf_tab
623 2 intbuf_tab(nin)%IRTLS,intbuf_tab(nin)%CSTM,intbuf_tab(nin)%IRTLOS,intbuf_tab
624 3 itab ,iwpene ,
id,titr)
625
626
627
628
629 ELSEIF(nty==5) THEN
630
631
632
633 intbuf_tab(nin)%LNSV(1:nst) = 0
634 intbuf_tab(nin)%LMSR(1:nmt) = 0
635 intbuf_tab(nin)%STFNS(1:nsn) = 0
636 intbuf_tab(nin)%STFNM(1:nmn) = 0
637
639 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSEGM,intbuf_tab(nin)%LMSR,intbuf_tab(nin)%MSR,
640 2 intbuf_tab(nin)%NSV,intbuf_tab(nin)%ILOCS,nsn ,nmn ,nrtm ,intbuf_tab(nin)%S_IRECTM ,intbuf_tab(nin)%S_LMSR)
642 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%STFM,ixs ,pm ,
643 2 geo ,nrtm ,ixc ,intbuf_tab(nin)%STFNM, intbuf_tab(nin)%NSEGM ,
644 3 intbuf_tab(nin)%LMSR,-nin ,nmn ,intbuf_tab(nin)%MSR,intbuf_tab(nin)%STFAC(1),
645 4 nty ,intbuf_tab(nin)%VARIABLES(2),noint ,ixtg ,irm ,
646 5 knod2els ,knod2elc ,knod2eltg ,nod2els ,nod2elc ,
647 6 nod2eltg ,igrsurf(isu2),thk ,ixs10 ,
649 8
bidon ,
bidon ,igeo ,fillsol ,stack%pm, iworksh)
651 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%LMSR,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,
652 2 intbuf_tab(nin)%ILOCS,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%NSEGM,nsn ,nmn ,
654 WRITE(iout,2002)
656 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,intbuf_tab(nin)%ILOCS,
657 2 intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%CSTS,intbuf_tab(nin)%IRTLOM,intbuf_tab(nin)%VARIABLES(2),
658 3 nsn, itab ,iwpene ,
id,titr)
659 IF(inacti==3 .OR. inacti==4)THEN
661 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,intbuf_tab
662 2 intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%CSTS,intbuf_tab(nin)%IRTLOM,intbuf_tab(nin)%VARIABLES(2),
663 3 nsn, itab ,inacti )
664 END IF
665
666
667
668 ELSEIF(nty==7) THEN
669
670 drad = intbuf_tab(nin)%VARIABLES(32)
671
672 IF(intbuf_tab(nin)%S_NIGE/=0) THEN
673 ALLOCATE(xe(3*(numnod+intbuf_tab(nin)%S_NIGE)))
674 xe(1:3*numnod) = x(1:3*numnod)
675 xe(3*numnod+1:3*(numnod+intbuf_tab(nin)%S_NIGE)) = intbuf_tab(nin)%XIGE(1:3*intbuf_tab(nin)%S_NIGE)
676 ptr_x(3*numnod+1:3*(numnod+intbuf_tab(nin)%S_NIGE)) => xe(3*numnod+1:3*(numnod+intbuf_tab(nin)%S_NIGE))
677 ptr_ms(1:numnod) => ms(1:numnod)
678 numnod_p = numnod+intbuf_tab(nin)%S_NIGE
679 ELSEIF(law151_type18) THEN
680 ptr_x(1:numnod+numels) => x_append(1:3*s_append_array)
681 ptr_ms(1:numnod+numels) => mass_append(1:s_append_array)
682 numnod_p = numnod+numels
683 ELSE
684 ptr_x(1:numnod) => x(1:numnod)
685 ptr_ms(1:numnod) => ms(1:numnod)
686 numnod_p = numnod
687 ENDIF
688
690 1 ptr_x ,nrtm ,intbuf_tab(nin)%IRECTM , noint, itab,
id,titr,
691 2 ix1 ,ix2 ,ix3 ,ix4 ,x1 ,
692 3 x2 ,x3 ,x4 ,y1 ,y2 ,
693 4 y3 ,y4 ,z1 ,z2 ,z3 ,
694 5 z4 ,n11 ,n21 ,n31 ,x0 ,
695 6 y0 ,z0 ,xn1 ,yn1 ,zn1 ,
696 7 xn2 ,yn2 ,zn2 ,xn3 ,yn3 ,
697 8 zn3 ,xn4 ,yn4 ,zn4 )
698
699
700
702 1 ptr_x ,intbuf_tab(nin)%IRECTM , intbuf_tab(nin)%STFM , ixs , pm ,
703 2 geo ,nrtm_fe , ixc ,-nin , intbuf_tab(nin)%STFAC,
704 3 nty ,intbuf_tab(nin)%VARIABLES(2) , noint ,intbuf_tab(nin)%STFNS , nsn ,
705 4 ptr_ms ,intbuf_tab(nin)%NSV , ixtg ,igap , rwa ,
706 5 intbuf_tab(nin)%GAP_S ,intbuf_tab(nin)%GAP_M ,intbuf_tab(nin)%VARIABLES(13),ixt , ixp ,
707 6 intbuf_tab(nin)%VARIABLES(6),intbuf_tab(nin)%VARIABLES(16),inacti ,knod2els , knod2elc ,
708 7 knod2eltg ,nod2els ,nod2elc ,nod2eltg
709 8 ipari(47,nin) ,intbuf_tab(nin)%IELES ,intbuf_tab(nin)%IELEC ,intbuf_tab(nin)%AREAS , sh4tree ,
710 9 sh3tree ,ipart ,ipartc ,iparttg , thk ,
711 c thk_part ,intbuf_tab(nin)%VARIABLES(28),intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML,nod2el1d ,
712 d knod2el1d ,ixr ,itab ,intbuf_tab(nin)%VARIABLES(7),ixs10 ,
713 e ixs16 ,ixs20 ,
id ,titr , iddlevel ,
714 f drad ,igeo ,fillsol ,stack%pm , iworksh ,
715 g it19 ,kxig3d ,ixig3d ,ipari(72,nin) , iparts ,
716 h tagprt_fric ,intbuf_tab(nin)%IPARTFRICS ,intbuf_tab(nin)%IPARTFRICM ,intbuf_fric_tab,nrtm_ige ,
717 i ipari(63,nin) ,gapm_mx ,gaps_mx ,gapm_l_mx ,gaps_l_mx ,
718 j ipartt ,ipartp ,ipartr ,elem_linked_to_segment,
719 k flag_elem_inter25 )
720 ipari(21,nin) = igap
721
722
723
724
725 IF (iremnode == 1) THEN
726
727 CALL i7remnode(iremnode,noint,titr,intbuf_tab(nin),numnod+numfakenodigeo ,
728 1 x,nrtm ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,nsn,
729 2 itab ,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,intbuf_tab(nin)%VARIABLES(13),intbuf_tab(nin)%VARIABLES(16),
730 3 intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML,igap,intbuf_tab(nin)%VARIABLES(2),drad ,
731 4 ipari(62,nin) ,nty ,ipari(1,nin) ,i_mem_rem ,gapm_mx ,
732 5 gaps_mx ,gapm_l_mx ,gaps_l_mx ,ilev ,intbuf_tab(nin)%NBINFLG ,
733 6 intbuf_tab(nin)%MBINFLG,intbuf_tab(nin)%VARIABLES(46),npari)
734
735 END IF
736
737
738
739 is_used_with_law151 = .false.
740 IF(multi_fvm%IS_INTER_USED_WITH_LAW151(nin) == 1)is_used_with_law151 = .true.
741
743 1 ptr_x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%NSV,intbuf_tab(nin)%VARIABLES(4),nseg ,
744 2 nmn ,nrtm ,mwa ,nsn ,
745 3 intbuf_tab(nin)%VARIABLES(2),rwa ,noint ,intbuf_tab(nin)%I_STOK(1) ,
746 4 intbuf_tab(nin)%VARIABLES(5),intbuf_tab(nin)%VARIABLES(8), intbuf_tab(nin)%MSR ,
747 5 intbuf_tab(nin)%STFM ,intbuf_tab(nin)%STFNS ,multimp ,1 ,iddlevel ,
748 6 itab ,intbuf_tab(nin)%GAP_S ,intbuf_tab(nin)%GAP_M, igap,intbuf_tab(nin)%VARIABLES(13),
749 7 intbuf_tab(nin)%VARIABLES(16) ,inacti ,intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML ,i_mem ,
750 8 ncont ,icurv ,intbuf_tab(nin)%VARIABLES(7),
id , titr ,
751 9 drad ,intercep, nin,
752 1 iremnode ,ipari(63,nin),intbuf_tab(nin)%KREMNODE,intbuf_tab(nin)%REMNODE,
753 2 intbuf_tab(nin)%VARIABLES(46),npari,ipari(1,nin),intbuf_tab(nin), is_used_with_law151)
754
755 i_stok=intbuf_tab(nin)%I_STOK(1)
756
757 IF (i_mem == 2 ) RETURN
758
759
760
761
762
763 IF (iddlevel==0.AND.nspmd>1)THEN
764 IF ( ((nelemint+i_stok)) > inter_cand%S_IXINT_2)
CALL upgrade_ixint(inter_cand,nelemint,i_stok)
765
766 gap = intbuf_tab(nin)%VARIABLES(2)
767 gapmin = intbuf_tab(nin)%VARIABLES(13)
768 gapmax = intbuf_tab(nin)%VARIABLES(16)
769 dgapload = intbuf_tab(nin)%VARIABLES(46)
771 . intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,i_stok,intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,
772 . igap,gap,gapmax,gapmin,dgapload,
773 . drad,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_M,intbuf_tab(nin)%GAP_ML,
774 . numnod_p,ptr_x,inter_cand)
775 ENDIF
776
777
778 IF((iddlevel==0).AND.(dectyp>=3.AND.dectyp<=6))THEN
779
780 IF(law151_type18)THEN
781
782 grbric_id = ipari(83,nin)
783 nbric = igrbric(isu1)%NENTITY
784 CALL iwcontdd_151(igrbric(grbric_id)%ENTITY,nbric,intbuf_tab(nin)%MSR,nmn_fe,iwcont,nsnt,nmnt,
785 . numnod,ixs,numels,ale_connectivity%NALE)
786 ELSE
787 CALL iwcontdd(intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,nsn_fe,nmn_fe,iwcont
788 ENDIF
789 END IF
790
791
792
793 IF (iddlevel>0)THEN
794 ngrous=1+(i_stok-1)/nvsiz
795
796 DO ng=1,ngrous
797 IF(ipri>=1) WRITE(iout,2007)
798 nft = (ng-1) * nvsiz
799 lft = 1
800 llt = min0( nvsiz, i_stok - nft )
801
803 1 ptr_x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft) ,
804 2 intbuf_tab(nin)%STFM,intbuf_tab(nin)%STFNS,gapv ,igap ,intbuf_tab(nin)%VARIABLES(2) ,
805 3 intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,1,intbuf_tab(nin)%VARIABLES
806 4 intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML,zero,ix1 ,ix2 ,
807 5 ix3 ,ix4 ,nsvg,x1 ,x2 ,
808 6 x3 ,x4 ,y1 ,y2 ,y3 ,
809 7 y4 ,z1 ,z2 ,z3 ,z4 ,
810 8 xi ,yi ,zi ,stif ,zero ,
811 9 llt)
812 CALL i7dst3(ix3,ix4,x1 ,x2 ,x3 ,
813 1 x4 ,y1 ,y2 ,y3 ,y4 ,
814 2 z1 ,z2 ,z3 ,z4 ,xi ,
815 3 yi ,zi ,x0 ,y0 ,z0 ,
816 4 xn1,yn1,zn1,xn2,yn2,
817 5 zn2,xn3,yn3,zn3,xn4,
818 6 yn4,zn4,p1 ,p2 ,p3 ,
819 7 p4 ,lb1,lb2,lb3,lb4,
820 8 lc1,lc2,lc3,lc4,llt)
821 CALL i7pen3(zero,gapv,n11,n21,n31 ,
822 1 pene ,xn1 ,yn1,zn1,xn2,
823 2 yn2 ,zn2 ,xn3,yn3,zn3,
824 3 xn4 ,yn4 ,zn4,p1 ,p2 ,
825 4 p3 ,p4,llt)
826 IF(inacti==7)THEN
827 CALL i18pwr3(itab ,inacti,intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft),intbuf_tab(nin)%STFNS,
828 1 intbuf_tab(nin)%STFM,ptr_x ,intbuf_tab(nin)%NSV,iwpene ,intbuf_tab(nin)%CAND_P,
829 2 intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,mwa ,noint ,gapv ,
830 3 ix1,ix2,ix3,ix4,nsvg,
831 4 pene)
832 ELSE
833 fpenmax = intbuf_tab(nin)%VARIABLES(27)
834 CALL i7pwr3(itab ,inacti,intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft),intbuf_tab(nin)%STFNS,
835 1 intbuf_tab(nin)%STFM,ptr_x ,intbuf_tab(nin)%NSV,iwpene ,intbuf_tab(nin)%CAND_P,
836 2 intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,mwa , noint ,gapv ,
837 3 nty ,itied ,fpenmax ,
id ,titr
838 4 iddlevel ,iremnode ,intbuf_tab(nin)%KREMNODE,intbuf_tab
839 5 ix1 ,ix2 ,ix3 ,ix4 ,nsvg ,
840 6 x1 ,x2 ,x3 ,x4 ,y1 ,
841 7 y2 ,y3 ,y4 ,z1 ,z2 ,
842 8 z3 ,z4 ,xi ,yi ,zi ,
843 9 n11 ,n21 ,n31 ,pene )
844 ENDIF
845 IF(iwpene/=0.AND.inacti==3.OR.inacti==4) iwrn = 1
846 ENDDO
847 CALL ancmsg(msgid=1164,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,prmod=msg_print)
848 DO i=1,numnod+numfakenodigeo
849 inpene=inpene+
min(mwa(i),1)
850 ENDDO
851 IF(istok==0.AND.(inacti==5.OR.inacti==6))ipari(22,nin) = -inacti
852 intbuf_tab(nin)%I_STOK(1)=istok
853 ENDIF
854
855 ELSEIF(nty==8) THEN
856 CALL inint0_8(x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSEGM,intbuf_tab(nin)%LMSR,
857 . intbuf_tab(nin)%MSR,
858 1 intbuf_tab(nin)%NSV,intbuf_tab(nin)%ILOCS,nsn ,nmn ,nrtm ,
859 2 numnod)
861 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%STFM,ixs ,pm ,
862 2 geo ,nrtm ,ixc ,intbuf_tab(nin)%STFNM,intbuf_tab(nin)%NSEGM,
863 3 intbuf_tab(nin)%LMSR,-nin ,nmn ,intbuf_tab(nin)%MSR,intbuf_tab(nin)%STFAC(1),
864 4 nty ,intbuf_tab(nin)%VARIABLES(2),noint ,ixtg ,irs ,
865 5 knod2els ,knod2elc ,knod2eltg ,nod2els ,nod2elc ,
866 6 nod2eltg ,igrsurf(isu2),thk ,ixs10 ,
867 7 ixs16 ,ixs20 ,
id,titr,intbuf_tab(nin)%GAPN,intbuf_tab(nin)%STF8 ,
868 8 intbuf_tab(nin)%VARIABLES(5),intbuf_tab(nin)%VARIABLES(4), igeo ,fillsol ,
869 9 stack%pm , iworksh)
871 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%LMSR,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,
872 2 intbuf_tab(nin)%ILOCS,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%NSEGM,nsn ,nmn ,
874 WRITE(iout,2002)
876 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,intbuf_tab(nin)%ILOCS,
877 2 intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%CSTS,intbuf_tab(nin)%IRTLOM,intbuf_tab(nin)%VARIABLES(2),nsn ,
878 3 itab ,iwpene ,
id,titr)
879
880 ELSEIF(nty==9) THEN
881
882
883
884
885 intbuf_tab(nin)%LNSV(1:nst) = 0
886 intbuf_tab(nin)%LMSR(1:nmt) = 0
887 intbuf_tab(nin)%STFNS(1:nsn) = 0
888 intbuf_tab(nin)%STFNM(1:nmn) = 0
889
891 1 x,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%NSEGS,intbuf_tab(nin)%LNSV,intbuf_tab(nin)%NSV,
892 2 intbuf_tab(nin)%MSR,intbuf_tab(nin)%ILOCM,nmn ,nsn ,nrts ,intbuf_tab(nin)%S_IRECTS ,
893 3 intbuf_tab(nin)%S_LNSV)
895 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSEGM,intbuf_tab(nin)%LMSR,intbuf_tab(nin)%MSR,
896 2 intbuf_tab(nin)%NSV,intbuf_tab(nin)%ILOCS,nsn ,nmn ,nrtm ,intbuf_tab(nin)%S_IRECTM ,
897 3 intbuf_tab(nin)%S_LMSR )
898
900 1 x ,intbuf_tab(nin)%IRECTS, intbuf_tab(nin)%STFS ,ixs ,
901 2 nrts ,
902 3 nin ,nsn , intbuf_tab(nin)%NSV ,
903 4 noint , intbuf_tab(nin)%IELES,
904 5 knod2els ,nod2els , igrsurf ,isu1 ,
905 6 ixs10 ,ixs16 ,ixs20 ,
id ,titr)
907 1 x ,intbuf_tab(nin)%IRECTM, intbuf_tab(nin)%STFM ,ixs ,
908 2 nrtm ,
909 3 -nin ,nmn , intbuf_tab(nin)%MSR ,
910 4 noint , intbuf_tab(nin)%IELEM,
911 5 knod2els ,nod2els , igrsurf ,isu2 ,
912 6 ixs10 ,ixs16 , ixs20 ,
id ,titr)
914 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%LMSR,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,
915 2 intbuf_tab(nin)%ILOCS,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%NSEGM,nsn ,nmn ,
918 1 x,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%LNSV,intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,
919 2 intbuf_tab(nin)%ILOCM,intbuf_tab(nin)%IRTLS,intbuf_tab(nin)%NSEGS,nmn ,nsn ,
921 IF(nmn>0)THEN
922 WRITE(iout,2002)
924 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,intbuf_tab(nin)%ILOCS,
925 2 intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%CSTS,intbuf_tab(nin)%IRTLOM,intbuf_tab(nin)%VARIABLES(2),nsn,
926 3 itab ,iwpene ,
id,titr)
927 WRITE(iout,2003)
929 1 x,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,intbuf_tab(nin)%ILOCM,
930 2 intbuf_tab(nin)%IRTLS,intbuf_tab(nin)%CSTM,intbuf_tab(nin)%IRTLOS,intbuf_tab(nin)%VARIABLES(2),nmn,
931 3 itab ,iwpene ,
id,titr)
932 ENDIF
933 CALL i9bcs_check(icode, sicode, nsn, intbuf_tab(nin)%NSV, intbuf_tab(nin)%S_ILOCS, intbuf_tab(nin)%ILOCS )
934
935 ELSEIF(nty==10) THEN
936
937
938
939 itied=nint(intbuf_tab(nin)%VARIABLES(1))
940
941
942
943 ibidon = 0
945
947 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%STFM ,ixs ,pm ,
948 2 geo ,nrtm ,ixc ,-nin ,intbuf_tab(nin)%STFAC,
949 3 nty ,intbuf_tab(nin)%VARIABLES(2) ,noint ,intbuf_tab(nin)%STFNS, nsn ,
950 4 ms ,intbuf_tab(nin)%NSV ,ixtg ,igap , rwa ,
951 5 intbuf_tab(nin)%GAP_S ,intbuf_tab(nin)%GAP_M ,intbuf_tab(nin)%VARIABLES(13),ixt ,ixp ,
952 6 intbuf_tab(nin)%VARIABLES(6),intbuf_tab(nin)%VARIABLES(16),inacti ,knod2els ,knod2elc,
953 9 knod2eltg ,nod2els ,nod2elc ,nod2eltg ,igrsurf(isu2),
954 a ibidon ,ibidon ,ibidon ,
bidon ,sh4tree ,
955 b sh3tree ,ipart ,ipartc ,iparttg ,thk ,
956 c thk_part ,intbuf_tab(nin)%VARIABLES(27),rdum ,rdum ,nod2el1d,
957 d knod2el1d ,ixr ,itab ,intbuf_tab(nin)%VARIABLES(7) ,ixs10 ,
958 e ixs16 ,ixs20 ,
id ,titr ,iddlevel,
959 f drad ,igeo ,fillsol ,stack%pm ,iworksh ,
960 g it19 ,bid ,bid ,ibidon ,iparts ,
961 h ibidon ,ibidon ,ibidon ,ibidon ,ibidon ,
962 i ipari(63,nin),gapm_mx ,gaps_mx ,gapm_l_mx ,gaps_l_mx,
963 j ipartt ,ipartp ,ipartr ,elem_linked_to_segment,
964 k flag_elem_inter25 )
965
966
967
968 maxbox = intbuf_tab(nin)%VARIABLES(9)
969 minbox = intbuf_tab(nin)%VARIABLES(12)
971 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%NSV,intbuf_tab(nin)%VARIABLES(4),nseg,
972 2 nmn ,nrtm ,mwa ,nsn ,intbuf_tab(nin)%CAND_E,
973 3 intbuf_tab(nin)%CAND_N ,intbuf_tab(nin)%VARIABLES(2),rwa ,noint ,i_stok ,
974 4 intbuf_tab(nin)%VARIABLES(5),intbuf_tab(nin)%VARIABLES(8),maxbox ,minbox ,intbuf_tab(nin)%MSR ,
975 5 intbuf_tab(nin)%STFM ,intbuf_tab(nin)%STFNS ,multimp ,1 ,iddlevel ,
976 6 itab ,intbuf_tab(nin)%GAP_S ,intbuf_tab(nin)%GAP_M,igap ,intbuf_tab(nin)%VARIABLES(13),
977 7 intbuf_tab(nin)%VARIABLES(16) ,inacti ,rdum,rdum ,i_mem ,
978 8
id,titr,it19,prov_n,prov_e,
979 9 nsvg,ix1 ,ix2 ,ix3 ,ix4 ,
980 1 n11 ,n21 ,n31 ,pene ,x1 ,
981 2 x2 ,x3 ,x4 ,y1 ,y2 ,
982 3 y3 ,y4 ,z1 ,z2 ,z3 ,
983 4 z4 ,xi ,yi ,zi ,x0 ,
984 5 y0 ,z0 ,xn1 ,yn1 ,zn1 ,
985 6 xn2 ,yn2 ,zn2 ,xn3 ,yn3 ,
986 7 zn3 ,xn4 ,yn4 ,zn4 ,p1 ,
987 8 p2 ,p3 ,p4 ,lb1 ,lb2 ,
988 9 lb3 ,lb4 ,lc1 ,lc2 ,lc3 ,
989 1 lc4,stif)
990 IF (i_mem == 2) RETURN
991 intbuf_tab(nin)%VARIABLES(9) = maxbox
992 intbuf_tab(nin)%VARIABLES(12) = minbox
993
994
995
996 ngrous=1+(i_stok-1)/nvsiz
997
998 DO ng=1,ngrous
999 IF(ipri>=1) WRITE(iout,2007)
1000 nft = (ng-1) * nvsiz
1001 lft = 1
1002 llt = min0( nvsiz, i_stok - nft )
1004 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft) ,
1005 2 intbuf_tab(nin)%STFM,intbuf_tab(nin)%STFNS,gapv ,igap ,intbuf_tab(nin)%VARIABLES(2) ,
1006 3 intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,1,intbuf_tab(nin)%VARIABLES(13),intbuf_tab(nin)%VARIABLES(16),
1007 4 rdum,rdum,drad,ix1 ,ix2 ,
1008 5 ix3 ,ix4 ,nsvg,x1 ,x2 ,
1009 6 x3 ,x4 ,y1 ,y2 ,y3 ,
1010 7 y4 ,z1 ,z2 ,z3 ,z4 ,
1011 8 xi ,yi ,zi ,stif ,intbuf_tab(nin)%VARIABLES(46),
1012 9 llt)
1013 CALL i7dst3(ix3,ix4,x1 ,x2 ,x3 ,
1014 1 x4 ,y1 ,y2 ,y3 ,y4 ,
1015 2 z1 ,z2 ,z3 ,z4 ,xi ,
1016 3 yi ,zi ,x0 ,y0 ,z0 ,
1017 4 xn1,yn1,zn1,xn2,yn2,
1018 5 zn2,xn3,yn3,zn3,xn4,
1019 6 yn4,zn4,p1 ,p2 ,p3 ,
1020 7 p4 ,lb1,lb2,lb3,lb4,
1021 8 lc1,lc2,lc3,lc4,llt)
1022 CALL i7pen3(zero,gapv,n11,n21,n31,
1023 1 pene ,xn1 ,yn1,zn1,xn2,
1024 2 yn2 ,zn2 ,xn3,yn3,zn3,
1025 3 xn4 ,yn4 ,zn4,p1 ,p2 ,
1026 4 p3 ,p4,llt)
1027 inacti = 0
1028 fpenmax = intbuf_tab(nin
1029 CALL i7pwr3(itab ,inacti,intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft),intbuf_tab(nin)%STFNS,
1030 1 intbuf_tab(nin)%STFM,x ,intbuf_tab(nin)%NSV,iwpene ,intbuf_tab(nin)%CAND_P,
1031 2 intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,mwa , noint ,gapv ,
1032 3 nty ,itied ,fpenmax ,
id ,titr ,
1033 4 iddlevel ,iremnode ,ibidon ,ibidon ,istok ,
1034 5 ix1,ix2,ix3,ix4,nsvg,
1035 6 x1 ,x2 ,x3 ,x4 ,y1 ,
1036 7 y2 ,y3 ,y4 ,z1 ,z2 ,
1037 8 z3 ,z4 ,xi ,yi ,zi ,
1038 9 n11,n21,n31,pene)
1039 IF(iwpene /= 0 .AND. inacti == 3 .OR. inacti == 4) iwrn = 1
1040 ENDDO
1041 CALL ancmsg(msgid=1164,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,prmod=msg_print)
1042
1043 DO i=1,numnod
1044 inpene=inpene+
min(mwa(i),1)
1045 ENDDO
1046 IF((iddlevel==0).AND.
1047 + (dectyp >= 3 .AND. dectyp <= 6))THEN
1048
1049 CALL iwcontdd(intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,nsn,nmn,iwcont,
1050 . nsnt,nmnt)
1051 END IF
1052
1053 ELSEIF(nty==11) THEN
1054
1055
1056
1057 gap0 =intbuf_tab(nin)%VARIABLES(2)
1058 gapinf = ep30
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1070 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%STFM ,ixs ,pm ,
1071 2 geo ,nrtm ,ixc ,nin ,intbuf_tab(nin)%STFAC,
1072 3 nty ,intbuf_tab(nin)%VARIABLES(2),noint ,intbuf_tab(nin)%GAP_M,
1073 4 ms ,ixtg ,ixt ,ixp ,ixr ,
1074 5 igap ,intbuf_tab(nin)%VARIABLES(13),gap0 ,gapinf ,ipartc ,
1075 6 iparttg ,thk ,thk_part ,intbuf_tab(nin)%VARIABLES(28),intbuf_tab(nin)%GAP_ML,
1076 7 nod2el1d ,knod2el1d ,itab ,ixs10 ,
id,titr ,
1077 8 kxx ,ixx ,igeo ,knod2els ,knod2elc ,
1078 9 knod2eltg ,nod2els ,nod2elc ,nod2eltg ,lelx ,
1079 a fillsol ,intth ,drad ,intbuf_tab(nin)%AREAM ,intbuf_tab(nin)%IELES ,
1080 b stack%pm ,iworksh ,it19 ,intbuf_tab(nin)%VARIABLES(7),ipari(72,nin) ,
1081 c iparts ,tagprt_fric ,intbuf_tab(nin)%IPARTFRICM,intbuf_fric_tab,
1082 d ipartt ,ipartp ,ipartx ,ipartr, ipari(63,nin))
1083
1084 drad = intbuf_tab(nin)%VARIABLES(24)
1086 1 x ,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%STFS ,ixs ,pm
1087 2 geo ,nrts ,ixc ,-nin,intbuf_tab(nin)%STFAC(1),
1088 3 nty ,intbuf_tab(nin)%VARIABLES(2),noint ,intbuf_tab(nin)%GAP_S,
1089 4 ms ,ixtg ,ixt ,ixp ,ixr ,
1090 5 igap ,intbuf_tab(nin)%VARIABLES(13),gap0 ,gapinf ,ipartc ,
1091 6 iparttg ,thk ,thk_part ,intbuf_tab(nin)%VARIABLES(28),intbuf_tab(nin)%GAP_SL,
1092 7 nod2el1d ,knod2el1d ,itab ,ixs10 ,
id,titr ,
1093 8 kxx ,ixx ,igeo ,knod2els ,knod2elc ,
1094 9 knod2eltg ,nod2els ,nod2elc ,nod2eltg ,lelx ,
1095 a fillsol ,intth , drad ,intbuf_tab(nin)%AREAS,intbuf_tab
1096 b stack%pm ,iworksh ,it19 ,intbuf_tab(nin)%VARIABLES(7),ipari(72,nin) ,
1097 c iparts ,tagprt_fric,intbuf_tab(nin)%IPARTFRICS,intbuf_fric_tab,
1098 d ipartt ,ipartp ,ipartx ,ipartr, ipari(63,nin))
1099
1100 intbuf_tab(nin)%VARIABLES(6)=
max(gapinf,intbuf_tab(nin)%VARIABLES(13))
1101
1102
1103
1104 maxbox = intbuf_tab(nin)%VARIABLES(9)
1105 minbox = intbuf_tab(nin)%VARIABLES(12)
1106
1107 IF (iremnode == 1) THEN
1108
1109 ALLOCATE(inod2lin(numnod+1),tagsecnd(numnod),nod2lin(2*nrtm))
1110 i_start = 1
1111 i_mem_rem = 0
1112 DO WHILE (i_start < nrtm)
1113
1115 1 x,nrtm,intbuf_tab(nin)%IRECTM,nrts,intbuf_tab(nin)%IRECTS,
1116 2 numnod,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,intbuf_tab(nin
1117 3 intbuf_tab(nin)%KREMNODE,intbuf_tab(nin)%REMNODE, intbuf_tab(nin)%VARIABLES(2), drad,ipari(62,nin),
1118 4 i_start,i_mem_rem,inod2lin,tagsecnd,nod2lin,
1119 5 intbuf_tab(nin)%VARIABLES(46),intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML)
1120
1121
1122
1123 IF (i_mem_rem == 1) THEN
1124 new_size = ipari(62,nin) + 5*nrtm
1126 i_mem_rem = 0
1127 ENDIF
1128
1129 ENDDO
1130
1131 DEALLOCATE(inod2lin,tagsecnd,nod2lin)
1132 iremnode = 0
1133
1134 ENDIF
1135
1137 1 x ,intbuf_tab(nin)%IRECTS ,intbuf_tab(nin)%IRECTM ,nrts ,nmn,
1138 2 nrtm ,nsn ,intbuf_tab(nin)%CAND_E ,intbuf_tab(nin)%CAND_N ,intbuf_tab(nin)%VARIABLES(2),
1139 3 noint ,i_stok ,intbuf_tab(nin)%VARIABLES(8) ,maxbox ,minbox,
1140 4 ncont ,multimp, intbuf_tab(nin)%MSR,
1141 5 intbuf_tab(nin)%ADCCM,intbuf_tab(nin)%CHAIN,itab,intbuf_tab(nin)%NSV,
1142 6 0, i_mem ,
id,titr ,iddlevel,intbuf_tab(nin)%VARIABLES(4),
1143 7 drad, intercep,igap,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,
1144 8 intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML ,intbuf_tab(nin)%VARIABLES(13),ipari(63,nin),intbuf_tab(nin)%KREMNODE,
1145 3 intbuf_tab(nin)%REMNODE,intbuf_tab(nin)%VARIABLES(46))
1146
1147 intbuf_tab(nin)%VARIABLES(5) = 0
1148
1149 IF (i_mem == 2 ) RETURN
1150 intbuf_tab(nin)%VARIABLES(9) = maxbox
1151 intbuf_tab(nin)%VARIABLES(12) = minbox
1152
1153
1154
1155
1156 IF (iddlevel==0.AND.nspmd>1)THEN
1157 IF ( ((nelemint+i_stok)) > inter_cand%S_IXINT_2)
CALL upgrade_ixint(inter_cand,nelemint,i_stok)
1159 . intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%IRECTS,i_stok,intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,
1160 . inter_cand)
1161 ENDIF
1162
1163
1164 IF((iddlevel == 0) .AND. (dectyp >= 3 .AND. dectyp <= 6))THEN
1165
1166 CALL iwcontdd(intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,nsn,nmn,iwcont,
1167 . nsnt,nmnt)
1168 END IF
1169
1170
1171
1172 ngrous=1+(i_stok-1)/nvsiz
1173
1174 IF(ipri>=1) WRITE(iout,2011)
1175
1176
1177 print_warning = .true.
1178 DO ng=1,ngrous
1179 nft = (ng-1) * nvsiz
1180 lft = 1
1181 llt = min0( nvsiz, i_stok - nft )
1182 jlt_new = 0
1184 1 llt ,intbuf_tab(nin)%VARIABLES(13),intbuf_tab(nin)%CAND_N(1+nft),intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%IRECTS,
1185 2 intbuf_tab(nin)%IRECTM,nx ,ny ,nz ,
1186 4 n1 ,n2 ,m1 ,m2 ,jlt_new ,
1187 5 x ,igap ,intbuf_tab(nin)%GAP_S ,intbuf_tab(nin)%GAP_M,gapv,
1188 6 intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML,drad ,intbuf_tab(nin)%VARIABLES
1189 llt = jlt_new
1190
1191 CALL i11pwr3(itab ,inacti,intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft
1192 2 intbuf_tab(nin)%STFS,intbuf_tab(nin)%STFM,x ,intbuf_tab(nin)%NSV,iwpene ,
1193 3 n1 ,n2 ,m1 ,m2 ,nx ,
1194 4 ny ,nz ,gapv ,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,
1195 5 intbuf_tab(nin)%PENIS,intbuf_tab(nin)%PENIM,igap,print_warning)
1196 IF(iwpene/=0 .AND. inacti==3 .OR. inacti==4) iwrn = 1
1197
1198 ENDDO
1199 IF((iddlevel == 0) .AND. (dectyp >= 3 .AND. dectyp <= 6))THEN
1200
1201 CALL iwcontdd(intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,nsn,nmn,iwcont,
1202 . nsnt,nmnt)
1203 END IF
1204
1205 ELSEIF(nty==12) THEN
1206
1207 itied=int(intbuf_tab(nin)%VARIABLES(1))
1208 IF(int(intbuf_tab(nin)%VARIABLES(1))==2)
1209 .
CALL in12r(x,intbuf_tab(nin)%VARIABLES(1),intbuf_tab(nin)%NSV,nsn,1)
1210
1211
1212 intbuf_tab(nin)%LMSR(1:nmt) = 0
1214 1 x,intbuf_tab(nin)%IRECTM, intbuf_tab(nin)%NSEGM,intbuf_tab(nin)%LMSR ,intbuf_tab(nin)%MSR,
1215 2 intbuf_tab(nin)%NSV,intbuf_tab(nin)%ILOCS,nsn ,nmn ,nrtm ,intbuf_tab(nin)%S_IRECTM ,
1216 3 intbuf_tab(nin)%S_LMSR)
1217 ipari(30,nin)=-1
1218 CALL i12chk3(x,intbuf_tab(nin)%IRECTM,ixs ,nrtm ,ixc ,
1219 1 -nin,nmn ,intbuf_tab(nin)%MSR,noint ,mwa ,
1220 2 ixtg,pm,intbuf_tab(nin)%IELEM, ale_connectivity,
1221 3 ipari(30,nin),intbuf_tab(nin)%FCOUNT,itied, itab,knod2els,
1222 4 nod2els,nty,
id,titr)
1223 CALL i12chk3(x,intbuf_tab(nin)%IRECTS,ixs ,nrts ,ixc,
1224 1 nin,nsn ,intbuf_tab(nin)%NSV,noint ,mwa,
1225 2 ixtg,pm,intbuf_tab(nin)%IELES, ale_connectivity,
1226 3 ipari(30,nin),intbuf_tab(nin)%FCOUNT,itied, itab,knod2els,
1227 4 nod2els,nty,
id,titr)
1228 IF(ipari(30,nin)==0)THEN
1229 CALL ancmsg(msgid=1250,msgtype=msgwarning,anmode=aninfo_blind,i1=
id,c1=titr)
1230
1231 ELSEIF(itied==3)THEN
1232 ipari(30,nin)=0
1233 ENDIF
1235 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%LMSR,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV,
1236 2 intbuf_tab(nin)%ILOCS,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%NSEGM,nsn ,nmn ,
1237 3 itab,
id,titr,nrtm)
1238 WRITE(iout,2002)
1240 1 x,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%CSTS,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NSV ,
1241 2 intbuf_tab(nin)%ILOCS,intbuf_tab(nin)%IRTLM,nsn ,itab ,intbuf_tab(nin)%VARIABLES(2),
1243 IF(int(intbuf_tab(nin)%VARIABLES(1))==2)
1244 .
CALL in12r(x,intbuf_tab(nin)%VARIABLES(1),intbuf_tab(nin)%NSV,nsn,2)
1245
1246
1247 ELSEIF(nty == 17 .AND. ipari(33,nin) == 0) THEN
1248
1249 ign = ipari(36,nin)
1250 ige = ipari(34,nin)
1251 nmes = igrbric(ign)%NENTITY
1252 nme = igrbric(ige)%NENTITY
1253
1254
1255
1257 1 ixs ,pm ,nme ,nmes ,igrbric(ige)%ENTITY,igrbric(ign)%ENTITY,
1258 2 intbuf_tab(nin)%KM,intbuf_tab(nin)%KS)
1259
1260 ELSEIF(nty==20) THEN
1261
1263 2 pm ,geo ,ipari(1,nin) ,nin ,itab ,
1264 3 ms ,mwa ,rwa ,ixtg ,iwrn ,
1265 4 ikine ,ixt ,ixp ,ixr ,nelemint,
1266 5 iddlevel,ifiend ,nsnet ,
1267 6 nmnet ,iwcont ,nsnt ,
1268 7 nmnt ,knod2els,knod2elc,knod2eltg,nod2els,
1269 8 nod2elc ,nod2eltg,igrsurf ,ikine1 ,ipart ,
1270 9 ipartc ,iparttg ,thk ,thk_part,inpene ,
1271 a iwpene ,ixs10,i_mem ,
1272 b inter_cand,ixs16 ,ixs20 ,
id ,titr ,
1273 c kxx ,ixx ,igeo ,nod2el1d,knod2el1d,
1274 d lelx ,intbuf_tab(nin) , stack%pm , iworksh,nspmd)
1275 IF (i_mem ==2) RETURN
1276
1277 ELSEIF(nty==21) THEN
1278
1279
1280
1281 intbuf_tab(nin)%AREAS(1:nsn) = 0
1282 IF(intth/=0)THEN
1283 intbuf_tab(nin)%AS(1:nsn) = 0
1284 intbuf_tab(nin)%BS(1:nsn) = 0
1285 ENDIF
1286
1287
1289 1 x ,nrtm ,intbuf_tab(nin)%IRECTM ,noint ,itab,
id,titr,
1290 2 ix1 ,ix2 ,ix3 ,ix4 ,x1 ,
1291 3 x2 ,x3 ,x4 ,y1 ,y2 ,
1292 4 y3 ,y4 ,z1 ,z2 ,z3 ,
1293 5 z4 ,n11 ,n21 ,n31 ,x0 ,
1294 6 y0 ,z0 ,xn1 ,yn1 ,zn1 ,
1295 7 xn2 ,yn2 ,zn2 ,xn3 ,yn3 ,
1296 8 zn3 ,xn4 ,yn4 ,zn4 )
1297
1298
1299
1301 1 x ,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%IRECTM ,nrts ,nrtm ,
1302 2 geo ,ixs ,pm ,ixc ,ixtg ,
1303 3 -nin ,nty ,noint ,nsn ,intbuf_tab(nin)%NSV ,
1304 4 intbuf_tab(nin)%IELES,ipari(47,nin) ,intbuf_tab(nin)%AREAS,nmn ,intbuf_tab(nin)%MSR,
1305 5 knod2els ,knod2elc ,knod2eltg ,nod2els ,nod2elc ,
1306 6 nod2eltg ,igrsurf(isu1),igrsurf(isu2),ielem21 ,
1307 7 thk ,intbuf_tab(nin)%AS,intbuf_tab(nin)%BS,ixs10 ,ixs16 ,
1308 8 ixs20 ,
id,titr,igeo,sh4tree ,
1309 9 sh3tree ,ipart ,ipartc ,iparttg , stack%pm ,
1310 a iworksh ,ipari(72,nin) ,tagprt_fric , intbuf_tab(nin)%IPARTFRICS,
1311 g intbuf_tab(nin)%IPARTFRICM,intbuf_fric_tab,iparts)
1312
1313
1314
1315
1316 ELSEIF(nty==22) THEN
1317
1318
1319 IF(isu1>0)THEN
1321 1 x ,nrtm ,intbuf_tab(nin)%IRECTM ,itab ,
1322 2 pm ,ixs ,igrbric(isu1)%NENTITY ,igrbric(isu1)%ENTITY ,
id ,
1323 3 titr,
1324 4 ix1 ,ix2 ,ix3 ,ix4 ,x1 ,
1325 5 x2 ,x3 ,x4 ,y1 ,y2 ,
1326 6 y3 ,y4 ,z1 ,z2 ,z3 ,
1327 7 z4 ,n11 ,n21 ,n31 ,x0 ,
1328 8 y0 ,z0 ,xn1 ,yn1 ,zn1 ,
1329 9 xn2 ,yn2 ,zn2 ,xn3 ,yn3 ,
1330 1 zn3 ,xn4 ,yn4 ,zn4 )
1331 ENDIF
1332
1333
1334
1335
1336 CALL i22sti3(intbuf_tab(nin)%STFM, nrtm )
1337
1338 ipari(21,nin) = igap
1339 iad = ipari(39,nin)
1340 isu1 = ipari(45,nin)
1341 IF(isu1>0)THEN
1342 nbric = igrbric(isu1)%NENTITY
1343 ELSE
1344 nbric = 0
1345 ENDIF
1346
1348
1349 CALL i22tzinf( x ,intbuf_tab(nin)%VARIABLES(8) ,igrbric(isu1)%ENTITY ,nbric
1350
1351 ELSEIF(nty==23) THEN
1352
1353
1355 1 x ,nrtm ,intbuf_tab(nin)%IRECTM ,noint ,itab,
id,titr,
1356 2 ix1 ,ix2 ,ix3 ,ix4 ,x1 ,
1357 3 x2 ,x3 ,x4 ,y1 ,y2 ,
1358 4 y3 ,y4 ,z1 ,z2 ,z3 ,
1359 5 z4 ,n11 ,n21 ,n31 ,x0 ,
1360 6 y0 ,z0 ,xn1 ,yn1 ,zn1 ,
1361 7 xn2 ,yn2 ,zn2 ,xn3 ,yn3 ,
1362 8 zn3 ,xn4 ,yn4 ,zn4 )
1363
1364
1366 1 x ,intbuf_tab(nin)%IRECTS,intbuf_tab(nin)%IRECTM ,nrts ,nrtm
1367 2 geo ,ixs ,pm ,ixc ,ixtg ,
1368 3 -nin ,nty ,noint ,nsn ,intbuf_tab(nin)%NSV ,
1369 4 ipari(47,nin) ,nmn ,intbuf_tab(nin)%MSR,rwa ,
1370 5 knod2els ,knod2elc ,knod2eltg ,nod2els ,nod2elc ,
1371 6 nod2eltg ,thk ,ixs10 ,ixs16 ,ixs20 ,
1372 7 ipartc ,iparttg ,intbuf_tab(nin)%VARIABLES(2),igap,intbuf_tab(nin)%GAP_S,
1373 8 intbuf_tab(nin)%VARIABLES(13),intbuf_tab(nin)%VARIABLES(6),intbuf_tab(nin)%VARIABLES(16),
1374 . intbuf_tab(nin)%VARIABLES(19),intbuf_tab(nin)%VARIABLES(7),
1375 9 intbuf_tab(nin)%STFNS,intbuf_tab(nin)%STFM,
id,titr,intbuf_tab(nin)%GAP_M, igeo ,
1376 a stack%pm , iworksh)
1377
1378
1379
1380 maxbox = intbuf_tab(nin)%VARIABLES(9)
1381 minbox = intbuf_tab(nin)%VARIABLES(12)
1383 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%NSV,intbuf_tab(nin)%VARIABLES
1384 2 nmn ,nrtm ,mwa ,nsn ,intbuf_tab(nin)%CAND_E ,
1385 3 intbuf_tab(nin)%CAND_N ,intbuf_tab(nin)%VARIABLES(2),rwa ,noint ,i_stok ,
1386 4 intbuf_tab(nin)%VARIABLES(5),intbuf_tab(nin)%VARIABLES(8),maxbox ,minbox ,intbuf_tab(nin)%MSR ,
1387 5 intbuf_tab(nin)%STFM ,multimp ,itab ,intbuf_tab(nin)%GAP_S ,igap ,
1388 6 intbuf_tab(nin)%VARIABLES(13),intbuf_tab(nin)%VARIABLES(16) ,inacti ,nrts ,intbuf_tab(nin)%IRECTS,
1389 7 i_mem ,iddlevel,
id,titr,intbuf_tab(nin)%GAP_M,
1390 8 prov_n,prov_e ,ix1,ix2,
1391 9 ix3 ,ix4 ,nsvg ,x1 ,x2 ,
1392 1 x3 ,x4 ,y1 ,y2 ,y3 ,
1393 2 y4 ,z1 ,z2 ,z3 ,z4 ,
1394 3 xi ,yi ,zi ,x0 ,y0 ,
1395 4 z0 ,xn1 ,yn1 ,zn1,xn2,
1396 5 yn2 ,zn2 ,xn3 ,yn3,zn3,
1397 6 xn4 ,yn4 ,zn4 ,p1 ,p2 ,
1398 7 p3 ,p4 ,lb1 ,lb2,lb3,
1399 8 lb4 ,lc1 ,lc2 ,lc3,lc4,
1400 9 n11 ,n21 ,n31 ,pene )
1401 IF (i_mem == 2 ) RETURN
1402 intbuf_tab(nin)%VARIABLES(9) = maxbox
1403 intbuf_tab(nin)%VARIABLES(12) = minbox
1404
1405
1406
1407 IF (iddlevel==0.AND.nspmd>1)THEN
1408 IF ( ((nelemint+i_stok)) > inter_cand%S_IXINT_2)
CALL upgrade_ixint(inter_cand,nelemint,i_stok)
1409
1410 gap = intbuf_tab(nin)%VARIABLES(2)
1411 gapmin = intbuf_tab(nin)%VARIABLES(13)
1412 gapmax = intbuf_tab(nin)%VARIABLES(16)
1413 dgapload = intbuf_tab(nin)%VARIABLES(46)
1415 . intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,i_stok,intbuf_tab
1416 . igap,gap,gapmax,gapmin,dgapload,
1417 . drad,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_SL,intbuf_tab
1418 . numnod,x,inter_cand)
1419 ENDIF
1420
1421
1422 IF((iddlevel==0).AND. (dectyp>=3.AND.dectyp<=6))THEN
1423
1424 CALL iwcontdd(intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,nsn,nmn,iwcont,
1425 . nsnt,nmnt)
1426 END IF
1427
1428
1429
1430 ngrous=1+(i_stok-1)/nvsiz
1431
1432 DO ng=1,ngrous
1433
1434 IF(ipri>=1) WRITE(iout,2007)
1435 nft = (ng-1) * nvsiz
1436 lft = 1
1437 llt = min0( nvsiz, i_stok - nft )
1439 1 llt ,intbuf_tab(nin)%CAND_N(1+nft),intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin
1440 . intbuf_tab(nin)%NSV ,
1441 2 intbuf_tab(nin)%GAP_S,x ,intbuf_tab(nin)%MSR,pene,intbuf_tab(nin)%IFPEN(1+nft) ,
1442 3 igap ,intbuf_tab(nin)%VARIABLES(2), intbuf_tab(nin)%VARIABLES(16),
1443 . intbuf_tab(nin)%VARIABLES(13), gapv,
1444 4 intbuf_tab(nin)%GAP_M)
1445
1447 . itab ,inacti,intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft),
1448 . intbuf_tab(nin)%STFNS,
1449 1 x ,llt ,intbuf_tab(nin)%NSV,iwpene ,pene ,
1450 2 noint ,nty ,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%MSR,
1451 3 intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%VARIABLES(13),intbuf_tab(nin)%VARIABLES(16),
1452 . intbuf_tab(nin)%VARIABLES(27),
1453 4 nsn ,mwa ,intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,
1454 5 intbuf_tab(nin)%CAND_P,intbuf_tab(nin)%STFM,intbuf_tab(nin)%IFPEN(1+nft),intbuf_tab(nin)%IFPEN,gapv )
1455
1456 END DO
1457
1458 IF(iwpene/=0) THEN
1459 CALL ancmsg(msgid=499,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene)
1460 ENDIF
1461
1462 IF(iwpene==0.AND.(inacti==5.OR.inacti==6)) ipari(22,nin) = -inacti
1463 intbuf_tab(nin)%I_STOK(1)=iwpene
1464
1465
1466
1467
1468 ELSEIF(nty==24) THEN
1469
1470 ipen0 = ipari(54,nin)
1471 nrtse = ipari(52,nin)
1472 nsne = ipari(55,nin)
1473 igsti = ipari(34,nin)
1474 nrtm0=nrtm-nrtm_sh
1475 nsn0=nsn-nsne
1476 intbuf_tab(nin)%MVOISIN(1:4*nrtm)=0
1478 1 x ,nrtm ,intbuf_tab(nin)%IRECTM ,noint ,itab,
id,titr,
1479 2 ix1 ,ix2 ,ix3 ,ix4 ,x1 ,
1480 3 x2 ,x3 ,x4 ,y1 ,y2 ,
1481 4 y3 ,y4 ,z1 ,z2 ,z3 ,
1482 5 z4 ,n11 ,n21 ,n31 ,x0 ,
1483 6 y0 ,z0 ,xn1 ,yn1 ,zn1 ,
1484 7 xn2 ,yn2 ,zn2 ,xn3 ,yn3 ,
1485 8 zn3 ,xn4 ,yn4 ,zn4 )
1486
1487
1488
1489 ALLOCATE(ipartns(nsn))
1490 ipartns(1:nsn)=0
1492 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%STFM ,ixs ,pm ,
1493 2 geo ,nrtm0 ,ixc ,-nin ,intbuf_tab(nin)%STFAC(
1494 3 nty ,intbuf_tab(nin)%VARIABLES(2),noint ,
1495 4 intbuf_tab(nin)%STFNS,nsn0 ,ms ,intbuf_tab(nin)%NSV,ixtg ,
1496 5 igap ,rwa ,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,intbuf_tab(nin)%VARIABLES(13),
1497 6 ixt ,ixp ,intbuf_tab(nin)%VARIABLES(6),intbuf_tab(nin)%VARIABLES(35),
1498 9 inacti ,knod2els ,knod2elc ,knod2eltg ,nod2els ,
1499 a nod2elc ,nod2eltg ,igrsurf(
max(1,isu2)),ipari(47,nin) ,
1500 b intbuf_tab(nin)%IELES,intbuf_tab(nin)%IELEC, intbuf_tab(nin)%AREAS ,sh4tree ,sh3tree,
1501 c ipart ,ipartc ,iparttg ,thk ,thk_part,
1502 d ixr ,itab ,intbuf_tab(nin)%VARIABLES(7),ixs10 ,intbuf_tab(nin)%MSEGTYP24 ,
1503 e nrtm_sh ,ixs16 ,ixs20 ,intbuf_tab(nin)%GAP_NM,intbuf_tab(nin)%MVOISIN ,
1504 f ilev ,igrsurf(
max(1,isu1)),intbuf_tab(nin)%VARIABLES(36),
id,titr ,ipari(53,nin) ,
1505 g intbuf_tab(nin)%PENE_OLD ,ipartns ,iparts , igeo ,fillsol ,
1506 h stack%pm ,iworksh ,ipari(72,nin) ,tagprt_fric , intbuf_tab(nin)%IPARTFRICS,
1507 g intbuf_tab(nin)%IPARTFRICM,intbuf_fric_tab,ipari(86,nin) , nrts ,intbuf_tab(nin)%IRECTS ,
1508 i intbuf_tab(nin)%IELNRTS,intbuf_tab(nin)%ADRECTS,intbuf_tab(nin)%FACNRTS,nmn,intbuf_tab(nin)%MSR ,
1509 j ipartt ,ipartp ,ipartr ,elem_linked_to_segment,igsti, flag_elem_inter25 )
1510 ipari(21,nin) = igap
1511
1512 IF (nsne >0) THEN
1513 CALL i24fics_ini(intbuf_tab(nin)%IRTSE ,nsne ,intbuf_tab(nin)%IS2SE ,intbuf_tab(nin)%NSV ,
1514 1 intbuf_tab(nin)%IS2PT ,nsn ,intbuf_tab(nin)%GAP_S )
1515 CALL i24fics_ini(intbuf_tab(nin)%IRTSE ,nsne ,intbuf_tab(nin)%IS2SE ,intbuf_tab(nin)%NSV ,
1516 1 intbuf_tab(nin)%IS2PT ,nsn ,intbuf_tab(nin)%STFNS )
1517 CALL i24fici_ini(intbuf_tab(nin)%IRTSE ,nsne ,intbuf_tab(nin)%IS2SE ,intbuf_tab(nin)%NSV ,
1518 1 intbuf_tab(nin)%IS2PT ,nsn ,ipartns )
1519 CALL i24isegpt_ini(intbuf_tab(nin)%IRTSE ,nsne ,intbuf_tab(nin)%IS2SE ,intbuf_tab(nin)%NSV ,
1520 1 intbuf_tab(nin)%IS2PT ,nsn ,intbuf_tab(nin)%ISEGPT,3 ,intbuf_tab(nin)%ISPT2)
1521
1522 CALL i24ficv_ini(intbuf_tab(nin)%IRTSE ,nsne ,intbuf_tab(nin)%IS2SE ,intbuf_tab(nin)%NSV ,
1523 1 intbuf_tab(nin)%IS2PT ,nsn ,intbuf_tab(nin)%PENE_OLD,3 )
1524 CALL i24fici_ini(intbuf_tab(nin)%IRTSE ,nsne ,intbuf_tab(nin)%IS2SE ,intbuf_tab(nin)%NSV ,
1525 1 intbuf_tab(nin)%IS2PT ,nsn ,intbuf_tab(nin)%NBINFLG )
1526 END IF
1527
1528
1529
1530 IF(intkg > 0 ) THEN
1532 1 x ,intbuf_tab(nin)%IRECTM,ixs ,pm ,rwa ,
1533 2 geo ,nrtm0 ,ixc ,-nin ,nty ,
1534 3 noint ,nsn0 ,intbuf_tab(nin)%NSV,ixtg ,ixt ,
1535 4 ixp ,ipart ,ipartc ,iparttg ,thk ,
1536 d thk_part ,ixr ,itab ,ixs10 ,ixs16 ,
1537 e ixs20 ,nmn ,intbuf_tab(nin)%MSR,intbuf_tab(nin)%NOD_2RY_LGTH,
1538 f intbuf_tab(nin)%NOD_MAS_LGTH,ipartt,ipartp,ipartr ,igeo )
1539 CALL i24fics_ini(intbuf_tab(nin)%IRTSE ,nsne ,intbuf_tab(nin)%IS2SE ,intbuf_tab(nin)%NSV ,
1540 1 intbuf_tab(nin)%IS2PT ,nsn ,intbuf_tab(nin)%NOD_2RY_LGTH )
1541 END IF
1542
1543
1544 maxbox = intbuf_tab(nin)%VARIABLES(9)
1545 minbox = intbuf_tab(nin)%VARIABLES(12)
1546 penmax = intbuf_tab(nin)%VARIABLES(37)
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1615 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%NSV,intbuf_tab(nin)%VARIABLES(4),nseg ,
1616 2 nmn ,nrtm ,mwa ,nsn ,intbuf_tab(nin)%CAND_E ,
1617 3 intbuf_tab(nin)%CAND_N ,intbuf_tab(nin)%VARIABLES(2),rwa ,noint ,i_stok ,
1618 4 intbuf_tab(nin)%VARIABLES(5),intbuf_tab(nin)%VARIABLES(8),maxbox ,minbox,intbuf_tab(nin)%MSR,
1619 5 intbuf_tab(nin)%STFM ,intbuf_tab(nin)%STFNS ,multimp ,1 ,iddlevel ,
1620 6 itab ,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,igap,intbuf_tab(nin)%VARIABLES(13),
1621 7 intbuf_tab(nin)%VARIABLES(16),inacti ,intbuf_tab(nin)%STIF_OLD,intbuf_tab(nin)%PENE_OLD,i_mem ,
1622 8 intbuf_tab(nin)%VARIABLES(25),
id ,titr ,intbuf_tab(nin)%NBINFLG ,intbuf_tab(nin)%MBINFLG,
1623 9 ilev ,intbuf_tab(nin)%MSEGTYP24,intbuf_tab(nin)%GAP_NM,intbuf_tab(nin)%MVOISIN,ixs ,ixs10 ,
1624 a ixs16 ,ixs20 ,ipartns ,ipen0,penmax,intbuf_tab(nin)%IRTSE,
1625 b intbuf_tab(nin)%IS2SE,intbuf_tab(nin)%IS2PT,intbuf_tab(nin)%XFIC,nrtse ,nsne ,prov_n ,prov_e,nsvg ,
1626 1 ix1 ,ix2 ,ix3 ,ix4 ,x1 ,
1627 2 x2 ,x3 ,x4 ,y1 ,y2 ,
1628 3 y3 ,y4 ,z1 ,z2 ,z3 ,
1629 4 z4 ,xi ,yi ,zi ,x0 ,
1630 5 y0 ,z0 ,stif ,pene ,xn1 ,
1631 6 yn1 ,zn1 ,xn2 ,yn2 ,zn2 ,
1632 7 xn3 ,yn3 ,zn3 ,xn4 ,yn4 ,
1633 8 zn4 ,p1 ,p2 ,p3 ,p4 ,
1634 9 lb1 ,lb2 ,lb3 ,lb4 ,lc1 ,
1635 1 lc2 ,lc3 ,lc4 ,n11 ,n21 ,
1636 2 n31 ,intbuf_tab(nin)%VARIABLES(46),intbuf_tab(nin)%S_KREMNODE,intbuf_tab(nin)%S_REMNODE,
1637 3 intbuf_tab(nin)%KREMNODE,intbuf_tab(nin)%REMNODE,flag_removed_node)
1638 IF (i_mem == 2) RETURN
1639 intbuf_tab(nin)%VARIABLES(9) = maxbox
1640 intbuf_tab(nin)%VARIABLES(12) = minbox
1641
1642
1643
1644 IF (iddlevel==0.AND.nspmd>1)THEN
1645 IF ( ((nelemint+i_stok)) > inter_cand%S_IXINT_2)
CALL upgrade_ixint(inter_cand,nelemint,i_stok)
1646
1647 dgapload = intbuf_tab(nin)%VARIABLES(46)
1648 kind_inter = 24
1650 . ifiend,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,i_stok,intbuf_tab(nin)%CAND_E,
1651 . intbuf_tab(nin)%CAND_N,dgapload,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,x,inter_cand,
1652 . kind_inter,intbuf_tab(nin),iedge,nledge)
1653 ENDIF
1654
1655
1656 IF((iddlevel==0).AND.
1657 . (dectyp>=3.AND.dectyp<=6))THEN
1658
1659 CALL iwcontdd_type24(numnod,nsn,nmn,intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,
1660 . iwcont,nsnt,nmnt,intbuf_tab(nin))
1661 END IF
1662
1663
1664
1665 ngrous=1+(i_stok-1)/nvsiz
1666 IF (ngrous>0) THEN
1667
1668 DO i=1,2*nsn
1669 intbuf_tab(nin)%IRTLM(i)=0
1670 END DO
1671
1672 DO i=1,nsn
1673 intbuf_tab(nin)%PENE_OLD(1+5*(i-1)+4)=zero
1674 END DO
1675 ALLOCATE(penmin(nsn))
1676 penmin=ep10
1677 iwpene0 = 0
1678 DO ng=1,ngrous
1679 IF(ipri>=5) WRITE(iout,2007)
1680 nft = (ng-1) * nvsiz
1681 lft = 1
1682 llt = min0( nvsiz, i_stok - nft )
1684 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft) ,
1685 2 intbuf_tab(nin)%STFM,intbuf_tab(nin)%STFNS,gapv ,igap ,intbuf_tab(nin)%VARIABLES(2) ,
1686 3 intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M)
1687 CALL i24pen3(x ,intbuf_tab(nin)%IRECTM ,gapv ,intbuf_tab(nin)%CAND_E(1+nft),
1688 2 intbuf_tab(nin)%CAND_N(1+nft),intbuf_tab(nin)%NSV,inacti,itab,mwa,iwpene ,
1689 3 nsn ,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%MSEGTYP24,iwpene0,penmin,
1690 4 intbuf_tab(nin)%GAP_NM,intbuf_tab(nin)%MVOISIN,ixs ,ixs10 ,ixs16 ,
1691 5 ixs20,penmax,intbuf_tab(nin)%VARIABLES(38),
id,titr ,
1692 6 ilev ,intbuf_tab(nin)%PENE_OLD,knod2els,nod2els,ipartns,ipen0 ,
1693 7 intbuf_tab(nin)%ICONT_I,intbuf_tab(nin)%XFIC,nrtm,intbuf_tab(nin)%IRTSE ,
1694 8 intbuf_tab(nin)%IS2SE)
1695
1696 intbuf_tab(nin)%I_STOK(1)=iwpene
1697 ENDDO
1698 iwpene0 = 0
1699 iwpene = 0
1700 IF (iddlevel == 1 ) THEN
1702 1 itab ,inacti,intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,penmin ,
1703 1 intbuf_tab(nin)%VARIABLES(38),i_stok,intbuf_tab(nin)%NSV,iwpene ,intbuf_tab(nin)%PENE_OLD,
1704 2 noint ,nty ,intbuf_tab(nin)%MSR,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%IRECTM ,
1705 4 nsn ,
id ,titr ,intbuf_tab(nin)%ICONT_I,iwpene0 )
1706
1707 IF (inacti==-1.AND.iwpene == 0) THEN
1708 ipari(40,nin) = 0
1709 CALL ancmsg(msgid=1566,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr)
1710 END IF
1711 END IF
1712
1713 inpene = 0
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780 DEALLOCATE(penmin,ipartns)
1781 END IF
1782 IF (inacti==5.OR.inacti==-1) THEN
1783
1784 pene_max = zero
1785 DO i=1,nsn
1786 intbuf_tab(nin)%PENE_OLD(5*(i-1)+1)=zero
1787 intbuf_tab(nin)%PENE_OLD(5*(i-1)+2)=zero
1788 intbuf_tab(nin)%PENE_OLD(5*(i-1)+3)=intbuf_tab(nin)%PENE_OLD(5*(i-1)+5)
1789 pene_max =
max(pene_max,intbuf_tab(nin)%PENE_OLD(5*(i-1)+5))
1790 END DO
1791 intbuf_tab(nin)%VARIABLES(23) = pene_max
1792 END IF
1793 IF (nsne>0 .AND. iddlevel == 1 ) THEN
1794 facf = one*nsne/nsn
1795 WRITE(iout,2500)nsne,facf
1796 END IF
1797
1798
1799
1801 1 nrtm ,nsn ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%MVOISIN,
1802 2 intbuf_tab(nin)%NVOISIN,intbuf_tab(nin)%MSEGLO,intbuf_tab(nin)%MSEGTYP24,itab ,x ,
1804
1806 1 nrtm ,intbuf_tab(nin)%IRECTM,ixs ,geo ,ixc ,ixtg ,
1807 2 ixt ,ixp ,ipart ,ipartc ,iparttg ,
1808 3 thk ,thk_part,intbuf_tab(nin)%NVOISIN,intbuf_tab(nin)%GAP_NM,intbuf_tab(nin)%GAP_M,
1809 4 nmn ,intbuf_tab(nin)%MSR,intbuf_tab(nin)%GAPN_M,intbuf_tab(nin)%GAP_N0,intply,
1810 5 intbuf_tab(nin)%VARIABLES(36),igeo,intbuf_tab(nin)%MSEGTYP24 )
1811
1812
1813 IF (inacti==5.OR.inacti==-1)THEN
1814 CALL i24cand(intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,nsn ,
1815 + intbuf_tab(nin)%IRTLM ,intbuf_tab(nin)%I_STOK(1),
1816 * intbuf_tab(nin)%MSEGTYP24)
1817
1818 iedg4 = ipari(59,nin)
1819 IF(iedg4 > 0)THEN
1820
1821
1822 CALL ispt2_ini(intbuf_tab(nin)%CAND_N, intbuf_tab(nin)%I_STOK(1), nsn, intbuf_tab(nin)%IRTLM,
1823 * intbuf_tab(nin)%ISEGPT, intbuf_tab(nin)%ISPT2 )
1824
1825 ENDIF
1826 ELSE
1827 intbuf_tab(nin)%I_STOK(1)=0
1828 ENDIF
1829
1830 ELSEIF(nty==25) THEN
1831
1832 CALL my_alloc(intbuf_tab(nin)%EDGE_BISECTOR,intbuf_tab(nin)%S_EDGE_BISECTOR)
1833 intbuf_tab(nin)%EDGE_BISECTOR(1:intbuf_tab(nin)%S_EDGE_BISECTOR) = 0
1834
1835 CALL my_alloc(intbuf_tab(nin)%VTX_BISECTOR,intbuf_tab(nin)%S_VTX_BISECTOR)
1836 intbuf_tab(nin)%VTX_BISECTOR(1:intbuf_tab(nin)%S_VTX_BISECTOR) = 0
1837
1838 CALL my_alloc(intbuf_tab(nin)%PENM,intbuf_tab(nin)%S_PENM)
1839 intbuf_tab(nin)%PENM(1:intbuf_tab(nin)%S_PENM) = 0
1840
1841 CALL my_alloc(intbuf_tab(nin)%DISTM,intbuf_tab(nin)%S_DISTM)
1842 intbuf_tab(nin)%DISTM(1:intbuf_tab(nin)%S_DISTM) = 0
1843
1844 CALL my_alloc(intbuf_tab(nin)%LBM,intbuf_tab(nin)%S_LBM)
1845 intbuf_tab(nin)%LBM(1:intbuf_tab(nin)%S_LBM) = 0
1846
1847 CALL my_alloc(intbuf_tab(nin)%LCM,intbuf_tab(nin)%S_LCM)
1848 intbuf_tab(nin)%LCM(1:intbuf_tab(nin)%S_LCM) = 0
1849
1850 CALL my_alloc(intbuf_tab(nin)%E2S_NOD_NORMAL,intbuf_tab(nin)%S_E2S_NOD_NORMAL)
1851 intbuf_tab(nin)%E2S_NOD_NORMAL(1:intbuf_tab(nin)%S_E2S_NOD_NORMAL )= 0
1852
1853 CALL my_alloc(intbuf_tab(nin)%FTSAVX_E,intbuf_tab(nin)%S_FTSAVX_E )
1854 intbuf_tab(nin)%FTSAVX_E(1:intbuf_tab(nin)%S_FTSAVX_E) = 0
1855
1856 CALL my_alloc(intbuf_tab(nin)%FTSAVY_E,intbuf_tab(nin)%S_FTSAVY_E )
1857 intbuf_tab(nin)%FTSAVY_E(1:intbuf_tab(nin)%S_FTSAVY_E) = 0
1858
1859 CALL my_alloc(intbuf_tab(nin)%FTSAVZ_E,intbuf_tab(nin)%S_FTSAVZ _e)
1860 intbuf_tab(nin)%FTSAVZ_E(1:intbuf_tab(nin)%S_FTSAVZ_E) = 0
1861
1862 CALL my_alloc(intbuf_tab(nin)%FTSAVX_E2S,intbuf_tab(nin)%S_FTSAVX_E2S )
1863 intbuf_tab(nin)%FTSAVX_E2S(1:intbuf_tab(nin)%S_FTSAVX_E2S) = 0
1864
1865 CALL my_alloc(intbuf_tab(nin)%FTSAVY_E2S,intbuf_tab(nin)%S_FTSAVY_E2S )
1866 intbuf_tab(nin)%FTSAVY_E2S(1:intbuf_tab(nin)%S_FTSAVY_E2S) = 0
1867
1868 CALL my_alloc(intbuf_tab(nin)%FTSAVZ_E2S,intbuf_tab(nin)%S_FTSAVZ _e2s)
1869 intbuf_tab(nin)%FTSAVZ_E2S(1:intbuf_tab(nin)%S_FTSAVZ_E2S) = 0
1870
1871 CALL my_alloc(intbuf_tab(nin)%FARM,intbuf_tab(nin)%S_FARM)
1872 intbuf_tab(nin)%FARM(1:intbuf_tab(nin)%S_FARM) = 0
1873
1874
1875
1876
1877 CALL i25sors(nsn, nrts, itab, ilev, ipari(1,nin),
1878 . intbuf_tab(nin))
1879
1880
1881 ivis2 = ipari(14,nin)
1882 isharp= ipari(84,nin)
1883 nrtm0=nrtm-nrtm_sh
1884 IF(intth > 0) drad = intbuf_tab(nin)%VARIABLES(32)
1885
1887 1 x ,nrtm ,intbuf_tab(nin)%IRECTM ,noint ,itab,
id,titr,
1888 2 ix1 ,ix2 ,ix3 ,ix4 ,x1 ,
1889 3 x2 ,x3 ,x4 ,y1 ,y2 ,
1890 4 y3 ,y4 ,z1 ,z2 ,z3 ,
1891 5 z4 ,n11 ,n21 ,n31 ,x0 ,
1892 6 y0 ,z0 ,xn1 ,yn1 ,zn1 ,
1893 7 xn2 ,yn2 ,zn2 ,xn3 ,yn3 ,
1894 8 zn3 ,xn4 ,yn4 ,zn4 )
1895
1896
1897
1898 gapscale=intbuf_tab(nin)%VARIABLES(13)
1899
1900
1901 IF(ipari(72,nin) > 0) THEN
1902 ALLOCATE(ipartsm(nrtm))
1903 ipartsm(1:nrtm)=0
1904 ELSE
1905 ALLOCATE(ipartsm(0))
1906 ENDIF
1908 1 x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%STFM ,ixs ,pm ,
1909 2 geo ,nrtm0 ,ixc ,-nin ,intbuf_tab(nin)%STFAC(1),
1910 3 nty ,intbuf_tab(nin)%VARIABLES(2),noint ,
1911 4 intbuf_tab(nin)%STFNS,nsn ,ms ,intbuf_tab(nin)%NSV,ixtg ,
1912 5 igap ,rwa ,intbuf_tab(nin)%GAP_S ,intbuf_tab(nin)%GAP_M,intbuf_tab(nin)%VARIABLES(13),
1913 6 gapscale ,ixt ,ixp,intbuf_tab(nin)%VARIABLES(6) ,intbuf_tab(nin)%VARIABLES(35),
1914 9 inacti ,knod2els ,knod2elc ,knod2eltg ,nod2els ,
1915 a nod2elc ,nod2eltg ,ipari(47,nin) ,
1916 b intbuf_tab(nin)%IELES,intbuf_tab(nin)%IELEM, intbuf_tab(nin)%AREAS,sh4tree ,sh3tree ,
1917 c ipart ,ipartc ,iparttg ,thk ,thk_part ,
1918 d ixr ,itab ,intbuf_tab(nin)%VARIABLES(7),ixs10 ,intbuf_tab(nin)%MSEGTYP24 ,
1919 e nrtm_sh ,ixs16 ,ixs20 ,intbuf_tab(nin)%GAP_NM,
1920 f ilev ,intbuf_tab(nin)%VARIABLES(36),
id ,titr ,igap0 ,
1921 g intbuf_tab(nin)%PENE_OLD ,iparts ,igeo ,fillsol
1922 h stack%pm ,iworksh ,intbuf_tab(nin)%VARIABLES(28),intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML,
1923 i knod2el1d ,nod2el1d ,ipari(72,nin) ,tagprt_fric ,intbuf_tab(nin)%IPARTFRICS ,
1924 j intbuf_tab(nin)%IPARTFRICM,intbuf_fric_tab,ivis2 ,gapm_mx , gaps_mx ,
1925 k gapm_l_mx ,gaps_l_mx ,ipartsm ,drad ,ipartt
1926 j ipartp ,ipartr
1927 k nin25 , flag_elem_inter25,intbuf_tab(nin)%VARIABLES(49),intbuf_tab(nin)%VARIABLES(50),
1928 m intbuf_tab(nin)%VARIABLES(51),intbuf_tab(nin)%VARIABLES(52))
1929 ipari(21,nin) = igap
1930
1931
1932
1933
1934
1935
1936
1937
1938 intbuf_tab(nin)%MVOISIN(1:4*nrtm)=0
1939 intbuf_tab(nin)%EVOISIN(1:4*nrtm)=0
1941 1 nrtm ,nsn ,intbuf_tab(nin)%NSV,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%IRTLM,
1942 2 intbuf_tab(nin)%MVOISIN,intbuf_tab(nin)%EVOISIN,intbuf_tab(nin)%MSEGLO,intbuf_tab(nin)%MSEGTYP24,itab ,
1943 3 x ,
id ,titr ,igeo ,ipari(67,nin) ,
1944 4 intbuf_tab(nin)%ADMSR,intbuf_tab(nin)%ADSKYN,intbuf_tab(nin)%IADNOR ,ipari(42,nin),iedge,
1945 5 ipari(68,nin),intbuf_tab(nin)%LEDGE,intbuf_tab(nin)%LBOUND,intbuf_tab(nin)%VARIABLES(26),ipari(36,nin),
1946 6 intbuf_tab(nin)%LISUB,intbuf_tab(nin)%ADDSUBM,intbuf_tab(nin)%LISUBM,intbuf_tab(nin)%INFLG_SUBM,
1947 . ipari(90,nin),
1948 7 intbuf_tab(nin)%ADDSUBE,intbuf_tab(nin)%LISUBE,intbuf_tab(nin)%INFLG_SUBE,noint,nmn,intbuf_tab(nin)%MSR,
1949 8 nom_opt,ilev,intbuf_tab(nin)%MBINFLG,intbuf_tab(nin)%EBINFLG,intbuf_tab(nin)%IELEM_M,
1950 9 ipari(100,nin))
1951
1952 IF(iedge/=0)THEN
1953 nconte =ipari(68,nin)
1954 ipari(88,nin)=nconte
1955 END IF
1956
1957 ithk25 = ipari(91,nin)
1959 1 nrtm ,intbuf_tab(nin)%IRECTM,ixs ,geo ,ixc ,ixtg ,
1960 2 ixt ,ixp ,ipart ,ipartc ,iparttg ,
1961 3 thk ,thk_part,intbuf_tab(nin)%GAP_NM,intbuf_tab(nin)%GAP_M,nmn ,
1962 4 intbuf_tab(nin)%MSR,intbuf_tab(nin)%GAPN_M,
1963 . intbuf_tab(nin)%VARIABLES(36),gapscale,igeo ,
1964 5 intbuf_tab(nin)%MSEGTYP24 ,intbuf_tab(nin)%GAPMSAV, ithk25,igap,intbuf_tab(nin
1965
1966 nadmsr=ipari(67,nin)
1967 nedge =ipari(68,nin)
1968 CALL i25norm(nrtm,intbuf_tab(nin)%IRECTM,numnod,x,intbuf_tab(nin)%EDGE_BISECTOR,
1969 . nsn,intbuf_tab(nin)%MSR,itab,nrtm0,intbuf_tab(nin)%MSEGTYP24,
1970 . intbuf_tab(nin)%MVOISIN,intbuf_tab(nin)%EVOISIN,nedge,intbuf_tab(nin)%LEDGE,
1971 . intbuf_tab(nin)%LBOUND,intbuf_tab(nin)%ADMSR,intbuf_tab(nin)%VTX_BISECTOR,
1972 . intbuf_tab(nin)%E2S_NOD_NORMAL,nadmsr,iedge,intbuf_tab(nin)%IELEM_M)
1973
1974
1975
1976 skip_type25_edge_2_edge = 2
1977 IF (iremnode == 1) THEN
1978
1979 intbuf_tab(nin)%VARIABLES(13)=zero
1980 intbuf_tab(nin)%VARIABLES(16)=ep30
1981
1982 CALL i7remnode(iremnode,noint,titr,intbuf_tab(nin),numnod+numfakenodigeo ,
1983 1 x,nrtm ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,nsn,
1984 2 itab ,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,intbuf_tab(nin)%VARIABLES(13),intbuf_tab(nin)%VARIABLES(16),
1985 3 intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML,igap,intbuf_tab(nin)%VARIABLES
1986 4 ipari(62,nin) ,nty ,ipari(1,nin) ,i_mem_rem ,gapm_mx ,
1987 5 gaps_mx ,gapm_l_mx ,gaps_l_mx ,ilev ,intbuf_tab(nin)%NBINFLG ,
1988 6 intbuf_tab(nin)%MBINFLG,intbuf_tab(nin)%VARIABLES(46),npari)
1989
1990 END IF
1991 IF (nspmd>1.AND.iddlevel==0.AND.flag_removed_node) THEN
1992 flag_output = 0
1993 nremn(1:ninter) = 0
1994 IF (inter_type2_number >0)
CALL remn_i2op(nin,nin,ipari,intbuf_tab,itab,nom_opt,nremn,flag_output,skip_type25_edge_2_edge)
1995 ENDIF
1996
1997
1998
1999
2000 maxbox = intbuf_tab(nin)%VARIABLES(9)
2001 minbox = intbuf_tab(nin)%VARIABLES(12)
2002 penmn = intbuf_tab(nin)%VARIABLES(38)
2003 penmax = intbuf_tab(nin)%VARIABLES(37)
2004 local_flag_removed_node = flag_removed_node
2005 IF(iddlevel==0.AND.flag_removed_node) local_flag_removed_node = .false.
2006 i_mem = 0
2008 1 x ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%NSV,intbuf_tab(nin)%VARIABLES(4),
2009 2 nmn ,nrtm ,nsn ,intbuf_tab(nin) ,
2010 3 intbuf_tab(nin)%VARIABLES(2),i_stok ,
2011 4 intbuf_tab(nin)%VARIABLES(5),intbuf_tab(nin)%VARIABLES(8),maxbox ,minbox,intbuf_tab(nin)%MSR,
2012 5 intbuf_tab(nin)%STFM ,intbuf_tab(nin)%STFNS ,iddlevel ,
2013 6 intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,igap,intbuf_tab(nin)%VARIABLES(13),
2014 7 intbuf_tab(nin)%VARIABLES(16),inacti ,intbuf_tab(nin)%GAP_SL,intbuf_tab(nin)%GAP_ML,
2015 8 intbuf_tab(nin)%VARIABLES(25),
id ,titr ,intbuf_tab(nin)%NBINFLG ,intbuf_tab(nin)%MBINFLG,
2016 9 ilev ,intbuf_tab(nin)%MSEGTYP24,intbuf_tab(nin)%GAP_NM,intbuf_tab(nin)%VARIABLES(7),
2017 a iparts ,knod2els ,nod2els ,
2018 b intbuf_tab(nin)%KREMNODE,intbuf_tab(nin)%REMNODE,
2019 c ixs, ixs10, ixs16, ixs20,icode,iskew,
2020 d drad,intbuf_tab(nin)%VARIABLES(46),nrtm,local_flag_removed_node,
2021 e intbuf_tab(nin)%IELEM_M,nin,npari,ipari(1,nin))
2022
2023
2024 IF(iedge/=0)THEN
2025
2027 1 nedge ,intbuf_tab(nin)%LEDGE ,intbuf_tab(nin)%STFE ,intbuf_tab(nin)%STFM ,igap ,
2028 2 intbuf_tab(nin)%GAPE,intbuf_tab(nin)%GAP_E_L,intbuf_tab(nin)%GAP_M ,intbuf_tab(nin)%GAP_ML,intbuf_tab(nin)%GAP_SL,
2029 3 intbuf_tab(nin)%VARIABLES(40),ipari(72,nin),intbuf_tab(nin)%IPARTFRIC_E,intbuf_tab(nin)%IPARTFRICM,ipartsm
2030 4 bgapemx_l ,nsn ,intbuf_tab(nin)%NSV )
2031
2032 intbuf_tab(nin)%I_STOK_E(1:2)=0
2033 cand_e_old(1:2) = intbuf_tab(nin)%I_STOK_E(1:2)
2034
2035 2510 continue
2036
2037
2038
2039 IF (iremnode_edg == 1) THEN
2040
2041 ALLOCATE(inod2lin(numnod+1),tagsecnd(numnod),nod2lin(2*nedge),perm(nedge),perminv(nedge),gap_maxneigh(nedge))
2042 i_start = 1
2043 i_mem_rem = 0
2044 DO WHILE (i_start < nedge)
2045
2047 1 x ,nedge ,intbuf_tab(nin)%LEDGE,numnod ,intbuf_tab(nin)%GAPE ,intbuf_tab(nin)%GAP_E_L ,
2048 2 igap0 ,igap ,drad ,intbuf_tab(nin)%VARIABLES(40),bgapemx_l ,intbuf_tab(nin)%KREMNODE_EDG,
2049 3 intbuf_tab(nin)%REMNODE_EDG,ipari(94,nin),i_start ,i_mem_rem ,inod2lin ,
2050 4 tagsecnd ,nod2lin ,intbuf_tab(nin)%VARIABLES(46) ,perm ,perminv ,
2051 5 gap_maxneigh)
2052
2053
2054
2055 IF (i_mem_rem == 1) THEN
2056 new_size = ipari(94,nin) + 5*nedge
2058 i_mem_rem = 0
2059 ENDIF
2060
2061 ENDDO
2062
2063 DEALLOCATE(inod2lin,tagsecnd,nod2lin,perm,perminv,gap_maxneigh)
2064 iremnode_edg = 0
2065
2066 ENDIF
2067
2068
2069 itask = 0
2070 eshift = 0
2071 nedge_t = nedge
2072 sshift = 0
2073 nrtm_t = nrtm
2074
2075 nconte = ipari(88,nin)
2076 multimpe = ipari(87,nin)
2077 multimps = ipari(89,nin)
2078 mulnsne = multimpe*nconte
2079 mulnsns = multimps*nconte
2080
2081 marge = intbuf_tab(nin)%VARIABLES(25)
2082 gap = intbuf_tab(nin)%VARIABLES(2)
2083 vmaxdt = zero
2084 i_meme(1:2)= 0
2085 inactbid =0
2087 1 x ,intbuf_tab(nin
2088 2 nmn ,intbuf_tab(nin)%CANDM_E2E ,intbuf_tab(nin)%CANDS_E2E ,
2089 3 gap ,noint ,intbuf_tab(nin)%I_STOK_E(1) ,mulnsne ,bminma ,
2090 4 marge ,vmaxdt ,drad ,eshift ,nedge_t ,
2091 5 sshift ,nrtm_t ,intbuf_tab(nin)%STFM ,intbuf_tab(nin)%STFNS,
2092 6 nconte ,intbuf_tab(nin)%GAP_M ,itask ,intbuf_tab(nin)%VARIABLES(40),
2093 7 i_meme ,itab ,intbuf_tab(nin)%MBINFLG,intbuf_tab(nin)%EBINFLG,intbuf_tab(nin)%I_STOK_E(2) ,
2094 8 mulnsns,ilev ,ibidon ,intbuf_tab(nin)%CAND_P ,igap0 ,
2095 9 ipari(63,nin),intbuf_tab(nin)%KREMNODE_EDG(1+2*eshift),intbuf_tab(nin)%REMNODE_EDG, intbuf_tab(nin)%S_REMNODE_EDG,
2096 a igap ,intbuf_tab(nin)%GAP_ML,iedge ,nedge ,intbuf_tab(nin)%MSEGTYP24,
2097 b intbuf_tab(nin)%LEDGE,intbuf_tab(nin)%ADMSR,intbuf_tab(nin)%EDGE_BISECTOR,intbuf_tab(nin)%VTX_BISECTOR,
2098 c intbuf_tab(nin)%CANDM_E2S ,intbuf_tab(nin)%CANDS_E2S,ibidon,intbuf_tab(nin)%CAND_PS,intbuf_tab(nin)%GAPE,
2099 d intbuf_tab(nin)%GAP_E_L,intbuf_tab
2100 e intbuf_tab(nin)%S_KREMNODE_E2S,intbuf_tab(nin)%S_REMNODE_E2S,intbuf_tab(nin)%KREMNODE_E2S,intbuf_tab(nin)%REMNODE_E2S,
2101 f intbuf_tab(nin)%S_KREMNODE_EDG)
2102
2103 IF(i_meme(1) /=0 .OR. i_meme(2)/=0)THEN
2104 nconte = ipari(88,nin)
2105 IF(i_meme(1)/=0)THEN
2106 multimpe =
max(ipari(87,nin)+8,nint(ipari(87,nin)*1.75))
2107 multimpe =
max(multimpe,intbuf_tab(nin)%S_CANDL_MAX /
max(1,nconte))
2108 intbuf_tab(nin)%S_CANDL_MAX =
2109 .
max(multimpe*nconte,intbuf_tab(nin)%S_CANDL_MAX)
2111 END IF
2112 IF(i_meme(2)/=0)THEN
2113 multimps =
max(ipari(89,nin)+8,nint(ipari(89,nin)*1.75))
2114 multimps =
max(multimps,intbuf_tab(nin)%S_CANDS_MAX /
max(1,nconte))
2115 intbuf_tab(nin)%S_CANDS_MAX =
2116 .
max(multimps*nconte,intbuf_tab(nin)%S_CANDS_MAX)
2118 END IF
2119 i_meme(1:2) = 0
2120 intbuf_tab(nin)%I_STOK_E(1:2)=cand_e_old(1:2)
2121 GOTO 2510
2122 END IF
2123 ENDIF
2124
2125
2126
2127 IF (iddlevel==0.AND.nspmd>1)THEN
2128 total_number_candidate = i_stok
2129 IF(iedge/=0) total_number_candidate = total_number_candidate + intbuf_tab(nin)%I_STOK_E(1) + intbuf_tab(nin)%I_STOK_E(2)
2130 IF ( ((nelemint+total_number_candidate)) > inter_cand%S_IXINT_2) THEN
2131 CALL upgrade_ixint(inter_cand,nelemint,total_number_candidate)
2132 ENDIF
2133
2134 dgapload = intbuf_tab(nin)%VARIABLES(46)
2135 kind_inter = 25
2137 . ifiend,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,i_stok,intbuf_tab(nin)%CAND_E,
2138 . intbuf_tab(nin)%CAND_N,dgapload,intbuf_tab(nin)%GAP_S,intbuf_tab(nin)%GAP_M,x,inter_cand,
2139 . kind_inter,intbuf_tab(nin),iedge,nledge)
2140 ENDIF
2141
2142
2143 IF((iddlevel == 0) .AND. (dectyp>=3.AND.dectyp<=6))THEN
2144
2146 . nrtm,nedge,intbuf_tab(nin)%NSV,intbuf_tab(nin)%MSR,intbuf_tab(nin)%IRECTM,
2147 . iwcont,nsnt,nmnt,intbuf_tab(nin))
2148 END IF
2149
2150 IF(iddlevel==1)THEN
2151
2152
2153
2154 ngrous=1+(i_stok-1)/nvsiz
2155 IF (ngrous>0) THEN
2156
2157 DO i=1,4*nsn
2158 intbuf_tab(nin)%IRTLM(i)=0
2159 END DO
2160
2161 intbuf_tab(nin)%PENE_OLD(1:5*nsn)=zero
2162 intbuf_tab(nin)%TIME_S(1:nsn)=ep20
2163
2164 DO ng=1,ngrous
2165 nft = (ng-1) * nvsiz
2166 lft = 1
2167 llt = min0( nvsiz, i_stok - nft )
2168
2170 1 llt ,igap ,x ,intbuf_tab(nin)%IRECTM,intbuf_tab(nin)%NSV,
2171 2 intbuf_tab(nin)%CAND_E(1+nft),intbuf_tab(nin)%CAND_N(1+nft) ,xi, yi, zi,
2172 4 ix1 ,ix2 ,ix3 ,ix4 ,nsvg ,
2173 5 nsn ,intbuf_tab(nin)%GAP_S ,gaps ,intbuf_tab(nin)%ADMSR ,intbuf_tab(nin)%EDGE_BISECTOR ,
2174 7 x1 ,x2 ,x3 ,x4 ,x0 ,
2175 8 y1 ,y2 ,y3 ,y4 ,y0 ,
2176 9 z1 ,z2 ,z3 ,z4 ,z0 ,
2177 a nnx ,nny ,nnz ,intbuf_tab(nin)%MVOISIN ,mvoisn ,
2178 b intbuf_tab(nin)%GAP_M ,gapm ,intbuf_tab(nin)%GAP_NM, gap_nm,
2179 c intbuf_tab(nin)%GAP_SL ,intbuf_tab(nin)%GAP_ML ,gapmxl,intbuf_tab(nin)%LBOUND ,ibound )
2180
2181 CALL i25pen3(llt ,intbuf_tab(nin)%CAND_N(1+nft),intbuf_tab(nin)%CAND_E(1+nft),penmn ,penmax,
2182 2 x1 ,x2 ,x3 ,x4 ,x0 ,
2183 3 y1 ,y2 ,y3 ,y4 ,y0 ,
2184 4 z1 ,z2 ,z3 ,z4 ,z0 ,
2185 5 xi ,yi ,zi ,nsn ,ix1 ,
2186 6 ix2 ,ix3 ,ix4 ,nsvg ,nrtm ,
2187 7 intbuf_tab(nin)%MSEGLO ,gaps ,intbuf_tab(nin)%IRECTM ,intbuf_tab(nin)%IRTLM ,
2188 8 intbuf_tab(nin)%TIME_S ,intbuf_tab(nin)%PENE_OLD,itab ,intbuf_tab(nin)%MSEGTYP24,isharp,
2189 9 nnx ,nny ,nnz ,gap_nm ,mvoisn,
2190 a gapmxl ,ivis2 ,ibound,intbuf_tab(nin)%VTX_BISECTOR,ilev,
2191 b inacti )
2192
2193 ENDDO
2194
2195 iwpene0 = 0
2197 . itab ,inacti,intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,intbuf_tab(nin)%STFNS,
2198 1 x ,i_stok,intbuf_tab(nin)%NSV,iwpene ,intbuf_tab(nin)%PENE_OLD,
2199 2 noint ,nty ,intbuf_tab(nin)%MSR,intbuf_tab(nin)%IRTLM,intbuf_tab(nin)%IRECTM ,
2200 3 nsn ,
id ,titr ,intbuf_tab(nin)%MSEGLO,intbuf_tab(nin)%ICONT_I,
2201 4 iwpene0,intbuf_tab(nin)%VARIABLES(38),iresp)
2202
2203 END IF
2204
2205 CALL ancmsg(msgid=1164, msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,prmod=msg_print)
2206
2207 IF(iwpene /= 0.AND. iddlevel == 1)THEN
2208 IF(inacti==0)THEN
2209 CALL ancmsg(msgid=1166,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene,i3=iwpene0)
2210 ELSEIF(inacti==5.AND. iddlevel == 1)THEN
2211 CALL ancmsg(msgid=1167,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene)
2212 ELSEIF(inacti==-1.AND. iddlevel == 1)THEN
2213 CALL ancmsg(msgid=1168,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene
2214 ELSE
2215 CALL ancmsg(msgid=1165,msgtype=msgerror,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=inacti)
2216 END IF
2217 END IF
2218
2219 inpene = iwpene
2220 IF (inacti==5.OR.inacti==-1) THEN
2221 DO i=1,nsn
2222 intbuf_tab(nin)%PENE_OLD(5*(i-1)+1)=zero
2223 intbuf_tab(nin)%PENE_OLD(5*(i-1)+2)=zero
2224 END DO
2225
2226 intbuf_tab(nin)%VARIABLES(23) = zero
2227
2228
2229 CALL i25cand(intbuf_tab(nin)%CAND_E,intbuf_tab(nin)%CAND_N,nsn ,
2230 + intbuf_tab(nin)%IRTLM ,intbuf_tab(nin)%I_STOK(1),
2231 * nrtm ,intbuf_tab(nin)%MSEGTYP24)
2232 ELSE
2233 intbuf_tab(nin)%I_STOK(1)=0
2234 END IF
2235
2236 IF (iedge /=0)THEN
2237 iwpene=0
2238 IF(intbuf_tab(nin)%I_STOK_E(1) > 0) THEN
2239
2240 istok=0
2241
2242 ngrous=1+(intbuf_tab(nin)%I_STOK_E(1)-1)/nvsiz
2243 DO ng=1,ngrous
2244 nft = (ng-1) * nvsiz
2245 lft = 1
2246 llt = min0( nvsiz, intbuf_tab(nin)%I_STOK_E(1) - nft )
2247
2249 1 llt ,intbuf_tab(nin)%LEDGE,intbuf_tab(nin)%IRECTM,x
2250 2 intbuf_tab(nin)%CANDS_E2E(1+nft) ,intbuf_tab(nin)%CANDM_E2E
2251 3 xxs1 ,xxs2 ,xys1 ,xys2 ,xzs1 ,
2252 4 xzs2 ,xxm1 ,xxm2 ,xym1 ,xym2 ,
2253 5 xzm1 ,xzm2 ,ex ,ey ,ez ,
2254 7 fx ,fy ,fz ,
2255 8 n1 ,n2 ,m1 ,m2 ,nedge ,
2256 9 intbuf_tab(nin)%GAPE,gapve,
2257 a iedge ,intbuf_tab(nin)%ADMSR,intbuf_tab(nin)%LBOUND,intbuf_tab(nin)%EDGE_BISECTOR,
2258 b intbuf_tab(nin)%VTX_BISECTOR ,itab ,igap0 ,igap ,
2259 c intbuf_tab(nin)%GAP_E_L)
2260
2262 1 llt ,iedge ,intbuf_tab(nin)%CANDS_E2E(1+nft) ,intbuf_tab(nin)%CANDM_E2E(1+nft) ,
2263 2 n1 ,n2 ,m1 ,m2 ,
2264 3 xxs1 ,xxs2 ,xys1 ,xys2 ,
2265 4 xzs1 ,xzs2 ,xxm1 ,xxm2 ,xym1 ,
2266 5 xym2 ,xzm1 ,xzm2 ,gapve ,pene ,
2267 6 ex ,ey ,ez ,fx ,fy ,
2268 7 fz ,intbuf_tab(nin)%LEDGE,intbuf_tab(nin)%IRECTM,x ,itab )
2269
2271 1 itab ,inacti,intbuf_tab(nin)%CANDM_E2E(1+nft),intbuf_tab(nin)%CANDS_E2E(1+nft),istok,
2272 2 llt ,pene ,iwpene ,intbuf_tab(nin)%CAND_P(1+nft) ,
2273 3 n1 ,n2 ,m1 ,m2 ,
2274 4 noint ,nty ,intbuf_tab(nin)%IRECTM ,
id ,titr ,
2275 5 intbuf_tab(nin)%CANDM_E2E,intbuf_tab(nin)%CANDS_E2E,intbuf_tab(nin)%CAND_P,iedge,nledge,
2276 6 nedge ,intbuf_tab(nin)%LEDGE)
2277
2278 ENDDO
2279 intbuf_tab(nin)%I_STOK_E(1)=istok
2280 CALL shrink_array(intbuf_tab(nin)%CANDM_E2E,istok)
2281 CALL shrink_array(intbuf_tab(nin)%CANDS_E2E,istok)
2282 END IF
2283
2284 IF(intbuf_tab(nin)%I_STOK_E(2) > 0) THEN
2285
2286 istok=0
2287
2288 ngrous=1+(intbuf_tab(nin)%I_STOK_E(2)-1)/nvsiz
2289 DO ng=1,ngrous
2290 nft = (ng-1) * nvsiz
2291 lft = 1
2292 llt = min0( nvsiz, intbuf_tab(nin)%I_STOK_E(2) - nft )
2293
2295 1 llt ,intbuf_tab(nin)%LEDGE,intbuf_tab(nin)%IRECTM,x ,
2296 2 intbuf_tab(nin)%CANDS_E2S(1+nft) ,intbuf_tab(nin)%CANDM_E2S(1+nft) ,ex ,ey ,ez ,
2297 3 xxs1 ,xxs2 ,xys1 ,xys2 ,
2298 4 xzs1 ,xzs2 ,xxm1 ,xxm2 ,xym1 ,
2299 5 xym2 ,xzm1 ,xzm2 ,
2300 6 n1 ,n2 ,m1 ,m2 ,nedge ,
2301 7 intbuf_tab(nin)%GAPE,gapve ,fx ,fy ,fz ,
2302 8 iedge ,intbuf_tab(nin)%ADMSR,intbuf_tab(nin)%LBOUND,intbuf_tab(nin)%EDGE_BISECTOR,
2303 9 intbuf_tab(nin)%VTX_BISECTOR,itab )
2304
2306 1 llt ,iedge ,intbuf_tab(nin)%CANDS_E2S(1+nft) ,intbuf_tab(nin)%CANDM_E2S(1+nft) ,
2307 2 n1 ,n2 ,m1 ,m2 ,
2308 3 xxs1 ,xxs2 ,xys1 ,xys2 ,
2309 4 xzs1 ,xzs2 ,xxm1 ,xxm2 ,xym1 ,
2310 5 xym2 ,xzm1 ,xzm2 ,gapve ,pene ,
2311 6 ex ,ey ,ez ,fx ,fy ,
2312 7 fz ,intbuf_tab(nin)%LEDGE,intbuf_tab(nin)%IRECTM,x ,itab ,intbuf_tab(nin)%E2S_NOD_NORMAL,
2313 8 intbuf_tab(nin)%ADMSR)
2314
2316 1 itab ,inacti,intbuf_tab(nin)%CANDM_E2S(1+nft),intbuf_tab(nin)%CANDS_E2S(1+nft),istok,
2317 2 llt ,pene ,iwpene ,intbuf_tab(nin)%CAND_PS(1+4*nft) ,
2318 3 n1 ,n2 ,m1 ,m2 ,
2319 4 noint ,nty ,intbuf_tab(nin)%IRECTM ,
id ,titr ,
2320 5 intbuf_tab(nin)%CANDM_E2S,intbuf_tab(nin)%CANDS_E2S,intbuf_tab(nin)%CAND_PS)
2321
2322 ENDDO
2323 intbuf_tab(nin)%I_STOK_E(2)=istok
2324 CALL shrink_array(intbuf_tab(nin)%CAND_PS,4*istok)
2325 CALL shrink_array(intbuf_tab(nin)%CANDM_E2S,istok)
2326 CALL shrink_array(intbuf_tab(nin)%CANDS_E2S,istok)
2327 CALL shrink_array(intbuf_tab(nin)%IFPEN_E2S,istok)
2328 END IF
2329
2330 CALL ancmsg(msgid=1631,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,prmod=msg_print)
2331
2332 IF(iwpene /= 0 .AND. iddlevel == 1)THEN
2333 IF(inacti==0)THEN
2334 CALL ancmsg(msgid=1632, msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id, c1=titr, i2=iwpene)
2335 ELSEIF(inacti==5)THEN
2336 CALL ancmsg(msgid=1633,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene)
2337 ELSEIF(inacti==-1)THEN
2338 CALL ancmsg(msgid=1634,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr, i2=iwpene)
2339 END IF
2340 END IF
2341 END IF
2342
2343 END IF
2344 DEALLOCATE (ipartsm)
2345
2346 ENDIF
2347
2348 IF(iwpene/=0) THEN
2349 IF(inpene/=0 .AND. iddlevel == 1)THEN
2350 IF(.NOT.type18)
CALL ancmsg(msgid=343,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene,i3=inpene)
2351 ELSEIF (iddlevel == 1.AND.nty/=24) THEN
2352 IF(.NOT.type18)
CALL ancmsg(msgid=499, msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene)
2353 ENDIF
2354 IF(nty==24.AND. iddlevel == 1) THEN
2355 SELECT CASE (inacti)
2356 CASE(0,1)
2357 CALL ancmsg(msgid=1184, msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr, i2=iwpene,i3=iwpene0)
2358 CASE(-1)
2359 CALL ancmsg(msgid=1185,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene,i3=iwpene0)
2360 CASE(5)
2361 CALL ancmsg(msgid=1186,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,i2=iwpene,i3=iwpene0)
2362 END SELECT
2363 IF(ipri>=5.AND. iddlevel == 1) THEN
2364 CALL ancmsg(msgid=1164,msgtype=msgwarning,anmode=aninfo_blind_1,i1=
id,c1=titr,prmod=msg_print)
2365 ENDIF
2366 END IF
2367 ENDIF
2368
2369
2370 IF(ALLOCATED(intbuf_tab(nin)%VTX_BISECTOR)) THEN
2371 DEALLOCATE(intbuf_tab(nin)%VTX_BISECTOR)
2372 ENDIF
2373 IF(ALLOCATED(intbuf_tab(nin)%EDGE_BISECTOR)) THEN
2374 DEALLOCATE(intbuf_tab(nin)%EDGE_BISECTOR)
2375 ENDIF
2376 IF(ALLOCATED(intbuf_tab(nin)%PENM)) THEN
2377 DEALLOCATE(intbuf_tab(nin)%PENM)
2378 ENDIF
2379 IF(ALLOCATED(intbuf_tab(nin)%DISTM)) DEALLOCATE(intbuf_tab(nin)%DISTM)
2380 IF(ALLOCATED(intbuf_tab(nin)%LBM)) DEALLOCATE(intbuf_tab(nin)%LBM)
2381 IF(ALLOCATED(intbuf_tab(nin)%LCM )) DEALLOCATE(intbuf_tab(nin)%LCM)
2382 IF(ALLOCATED(intbuf_tab(nin)%E2S_NOD_NORMAL)) DEALLOCATE(intbuf_tab(nin)%E2S_NOD_NORMAL)
2383 IF(ALLOCATED(intbuf_tab(nin)%E2S_ACTNOR)) DEALLOCATE(intbuf_tab(nin)%E2S_ACTNOR)
2384 IF(ALLOCATED(intbuf_tab(nin)%FTSAVX_E) ) DEALLOCATE(intbuf_tab(nin)%FTSAVX_E)
2385 IF(ALLOCATED(intbuf_tab(nin)%FTSAVY_E) ) DEALLOCATE(intbuf_tab(nin)%FTSAVY_E)
2386 IF(ALLOCATED(intbuf_tab(nin)%FTSAVZ_E) ) DEALLOCATE(intbuf_tab(nin)%FTSAVZ_E)
2387 IF(ALLOCATED(intbuf_tab(nin)%FTSAVX_E2S) ) DEALLOCATE(intbuf_tab(nin)%FTSAVX_E2S)
2388 IF(ALLOCATED(intbuf_tab(nin)%FTSAVY_E2S) ) DEALLOCATE(intbuf_tab(nin)%FTSAVY_E2S)
2389 IF(ALLOCATED(intbuf_tab(nin)%FTSAVZ_E2S) ) DEALLOCATE(intbuf_tab(nin)%FTSAVZ_E2S)
2390 IF(ALLOCATED(intbuf_tab(nin)%FARM) ) DEALLOCATE(intbuf_tab(nin)%FARM)
2391
2392
2393
2394 RETURN
2395
2396 2001 FORMAT(//,1x,'INTERFACE NUMBER. . . . . . . . . . . . . .',i10/
2397 + ,1x,'INTERFACE TYPE. . . . . . . . . . . . . . .',i6/)
2398 2002 FORMAT(//
2399 +' SECONDARY NEAREST NEAREST MAIN NODES SECONDARY '/
2400 +' NODE MAIN SEGMENT S T')
2401 2003 FORMAT(//
2402 +' MAIN NEAREST NEAREST SECONDARY NODES MAIN'/
2403 +' NODE SECONDARY SEGMENT S T')
2404 2007 FORMAT(//' IMPACT CANDIDATES',/,' SECONDARY MAIN SEGMENT NODES '/' NODE ')
2405 2011 FORMAT(//' IMPACT CANDIDATES',/,' MAIN NODES SECONDARY NODES ')
2406 2012 FORMAT(2x,'** WARNING ** THIS INTERFACE CONNECTS',' LAGRANGIAN MATERIALS')
2407 2181 FORMAT(//,1x,'INTERFACE NUMBER. . . . . . . . . . . . . .',i10/
2408 + ,1x,'INTERFACE TYPE. . . . . . . . . . . . . . . 18')
2409 2200 FORMAT(2x,/,i8,' TINY INITIAL PENETRATIONS WILL BE TAKEN INTO
2410 + ACCOUNT')
2411 2300 FORMAT(2x,/,i8,' INITIAL PENETRATIONS WILL BE IGNORED ')
2412 2400 FORMAT(2x,/,'IPEN_MAX = ',1pg20.13,'HAS BEEN USED')
2413 2500 FORMAT(/,
2414 . 'FICTIVE NODES ADDED FOR EDGE . . . . . . . . =',i10/,
2415 . 'RATIO of Fictive SECONDARY nodes/SECONDARY nodes. . =',1pg20.13/)
subroutine iwcontdd(nsv, msr, nsn, nmn, iwcont, nsnt, nmnt)
subroutine iwcontdd_151(bufbric, nbric, msr, nmn, iwcont, nsnt, nmnt, numnod, ixs, numels, nale)
subroutine i2wcontdd(nsv, msr, nsn, nmn, iwcont, nsnt, nmnt)
subroutine i11buc_vox1(x, irects, irectm, nrts, nmn, nrtm, nsn, cand_m, cand_s, maxgap, noint, ii_stok, tzinf, maxbox, minbox, ncontact, multimp, msr, addcm, chaine, itab, nsv, iauto, i_mem, id, titr, iddlevel, bumult, drad, intercep, igap, gap_s, gap_m, gap_s_l, gap_m_l, gapmin, flagremnode, kremnode, remnode, dgapload)
subroutine i11pwr3(itab, inacti, cand_m, cand_s, stfs, stfm, x, nsv, iwpene, n1, n2, m1, m2, nx, ny, nz, gapv, gap_s, gap_m, penis, penim, igap, print_warning)
subroutine i11remline(x, nrtm, irectm, nrts, irects, numnod, gap_s, gap_m, gapmin, igap, kremnode, remnode, gap, drad, nremnode, i_start, i_mem_rem, inod2lin, tagsecnd, nod2lin, dgapload, gap_s_l, gap_m_l)
subroutine i11sti3(x, irect, stf, ixs, pm, geo, nrt, ixc, nintr, slsfac, nty, gapmax, noint, gap_sm, ms, ixtg, ixt, ixp, ixr, igap, gapmin, gap0, gapinf, ipartc, iparttg, thk, thk_part, percent_size, gap_l, nod2el1d, knod2el1d, itab, ixs10, id, titr, kxx, ixx, igeo, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, lelx, fillsol, intth, drad, area, ielec, pm_stack, iworksh, it19, bgapsmx, intfric, iparts, tagprt_fric, ipartfric, intbuf_fric_tab, ipartt, ipartp, ipartx, ipartr, irem_gap)
subroutine i12chk3(x, irect, ixs, nrt, ixc, nint, nsn, nsv, noint, mwa, ixtg, pm, iseg, ale_connectivity, varconvint, fcount, itied, itab, knod2els, nod2els, nty, id, titr)
subroutine i12tid3(x, irect, crst, msr, nsv, iloc, irtl, nsn, itab, alp, id, titr)
subroutine i17sti3(ixs, pm, nme, nmes, nelm, nels, km, ks)
subroutine i18pwr3(itab, inacti, cand_e, cand_n, stfn, stf, x, nsv, iwpene, cand_p, cand_en, cand_nn, tag, noint, gapv, ix1, ix2, ix3, ix4, nsvg, pene)
subroutine i1chk3(x, irect, ixs, nrt, ixc, nint, nsn, nsv, noint, ixtg, geo, pm, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurf, thk, nty, ixs10, ixs16, ixs20, id, titr, igeo, pm_stack, iworksh)
subroutine i1tid3(x, irect, crst, msr, nsv, iloc, irtl, nsn, itab, ikine, ikine1, id, titr, ilev, nty, csts_bis)
subroutine i20ini3(x, ixs, ixc, pm, geo, ipari, interface_id, itab, ms, mwa, rwa, ixtg, iwrn, ikine, ixt, ixp, ixr, nelemint, iddlevel, ifiend, nsnet, nmnet, iwcont, nsnt, nmnt, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurf, ikine1, ipart, ipartc, iparttg, thk, thk_part, inpene, iwpentot, ixs10, i_mem, inter_cand, ixs16, ixs20, id, titr, kxx, ixx, igeo, nod2el1d, knod2el1d, lelx, intbuf_tab, pm_stack, iworksh, nspmd)
subroutine i21els3(x, irects, irectm, nrts, nrtm, geo, ixs, pm, ixc, ixtg, nint, nty, noint, nsn, nsv, ieles, intth, areas, nmn, msr, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurfs, igrsurfm, ielem21, thk, as, bs, ixs10, ixs16, ixs20, id, titr, igeo, sh4tree, sh3tree, ipart, ipartc, iparttg, pm_stack, iworksh, intfric, tagprt_fric, ipartfrics, ipartfricm, intbuf_fric_tab, iparts)
subroutine i22err3(x, nrtm, irect, itab, pm, ixs, nbric, brics, id, titr, ix1, ix2, ix3, ix4, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, n1, n2, n3, x0, y0, z0, xn1, yn1, zn1, xn2, yn2, zn2, xn3, yn3, zn3, xn4, yn4, zn4)
subroutine i22sti3(stf, nrt)
subroutine i22tzinf(x, tzinf, bufbric, nbric, ixs)
subroutine i23buc1(x, irect, nsv, bumult, nseg, nmn, nrtm, mwa, nsn, cand_e, cand_n, gap, xyzm, noint, i_stok, dist, tzinf, maxbox, minbox, msr, stf, multimp, itab, gap_s, igap, gapmin, gapmax, inacti, nrts, irects, i_mem, iddlevel, id, titr, gap_m, prov_n, prov_e, ix1, ix2, ix3, ix4, nsvg, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, x0, y0, z0, nx1, ny1, nz1, nx2, ny2, nz2, nx3, ny3, nz3, nx4, ny4, nz4, p1, p2, p3, p4, lb1, lb2, lb3, lb4, lc1, lc2, lc3, lc4, n11, n21, n31, pene)
subroutine i23gap3(x, irects, irectm, nrts, nrtm, geo, ixs, pm, ixc, ixtg, nint, nty, noint, nsn, nsv, intth, nmn, msr, wa, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, thk, ixs10, ixs16, ixs20, ipartc, iparttg, gap, igap, gap_s, gapmin, gapinf, gapmax, gapscale, bgapsmx, stfn, stf, id, titr, gap_m, igeo, pm_stack, iworksh)
subroutine i23pwr3(itab, inacti, cand_e, cand_n, stfn, x, i_stok, nsv, iwpene, pene, noint, nty, gap_s, msr, irect, gapmin, gapmax, fpenmax, nsn, itag, cand_en, cand_nn, cand_p, stf, ifpen, ifpenn, gapv)
subroutine i24buc1(x, irect, nsv, bumult, nseg, nmn, nrtm, mwa, nsn, cand_e, cand_n, gap, xyzm, noint, i_stok, dist, tzinf, maxbox, minbox, msr, stf, stfn, multimp, istf, iddlevel, itab, gap_s, gap_m, igap, gapmin, gapmax, inacti, gap_s_l, gap_m_l, i_mem, marge, id, titr, nbinflg, mbinflg, ilev, msegtyp, gap_n, mvoisn, ixs, ixs10, ixs16, ixs20, ipartns, ipen0, penmax, irtse, is2se, is2pt, xfic, nrtse, nsne, prov_n, prov_e, nsvg, ix1, ix2, ix3, ix4, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, x0, y0, z0, stif, pene, nx1, ny1, nz1, nx2, ny2, nz2, nx3, ny3, nz3, nx4, ny4, nz4, p1, p2, p3, p4, lb1, lb2, lb3, lb4, lc1, lc2, lc3, lc4, n11, n21, n31, dgapload, s_kremnode, s_remnode, kremnode, remnode, flag_removed_node)
subroutine i24ini_gap_n(nrtm, irect, ixs, geo, ixc, ixtg, ixt, ixp, ipart, ipartc, iparttg, thk, thk_part, nvoisin, gap_n, gap_m, nmn, msr, gapn_m, gap_n0, intply, gapmax_m, igeo, msegtyp)
subroutine i24inisur_nei(nrtm, nsn, irect, irtlm, mvoisin, nvoisin, mseglo, msegtyp, itab, x, id, titr, igeo)
subroutine i24pwr3(itab, inacti, cand_e, cand_n, pmin, penmin, i_stok, nsv, iwpene, pene_old, noint, nty, msr, irtlm, irect, nsn, id, titr, icont_i, iwpene0)
subroutine i24ll_kg(x, irect, ixs, pm, wa, geo, nrt, ixc, nint, nty, noint, nsn, nsv, ixtg, ixt, ixp, ipart, ipartc, iparttg, thk, thk_part, ixr, itab, ixs10, ixs16, ixs20, nmn, msr, ll_s, ll_m, ipartt, ipartp, ipartr, igeo)
subroutine i24sti3(x, irect, stf, ixs, pm, geo, nrt, ixc, nint, stfac, nty, gap, noint, stfn, nsn, ms, nsv, ixtg, igap, wa, gap_s, gap_m, gapmin, ixt, ixp, gapinf, gapmax_s, inacti, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurf, intth, ieles, ielec, areas, sh4tree, sh3tree, ipart, ipartc, iparttg, thk, thk_part, ixr, itab, bgapsmx, ixs10, msegtyp, nrt_sh, ixs16, ixs20, gap_n, mvoisn, ilev, igrsurf2, gapmax_m, id, titr, igap0, pen_old, ipartns, iparts, igeo, fillsol, pm_stack, iworksh, intfric, tagprt_fric, ipartfrics, ipartfricm, intbuf_fric_tab, intnitsche, nrts, irects, ielnrts, adrects, facnrts, nmn, msr, ipartt, ipartp, ipartr, elem_linked_to_segment, igsti, flag_elem_inter25)
subroutine i24fici_ini(irtse, nsne, is2se, nsv, is2pt, nsn, fic_i)
subroutine i24fics_ini(irtse, nsne, is2se, nsv, is2pt, nsn, fic_s)
subroutine i24isegpt_ini(irtse, nsne, is2se, nsv, is2pt, nsn, isegpt, npt, ispt2)
subroutine i24ficv_ini(irtse, nsne, is2se, nsv, is2pt, nsn, fic_v, npt)
subroutine ispt2_ini(cand_n, i_stok, nsn, irtlm, isegpt, ispt2)
subroutine i25buc_vox1(x, irect, nsv, bumult, nmn, nrtm, nsn, intbuf_tab, gap, i_stok, dist, tzinf, maxbox, minbox, msr, stf, stfn, iddlevel, gap_s, gap_m, igap, gapmin, gapmax, inacti, gap_s_l, gap_m_l, marge, id, titr, nbinflg, mbinflg, ilev, msegtyp, gap_n, bgapsmx, iparts, knod2els, nod2els, kremnode, remnode, ixs, ixs10, ixs16, ixs20, icode, iskew, drad, dgapload, nrtmt, flag_removed_node, ielem_m, nin, npari, ipari)
subroutine i25neigh(nrtm, nsn, nsv, irect, irtlm, mvoisin, evoisin, mseglo, msegtyp, itab, x, id, titr, igeo, nadmsr, admsr, adskyn, iadnor, nrtm_sh, iedge, nedge, ledge, lbound, edg_cos, nisub, lisub, addsubm, lisubm, inflg_subm, nisube, addsube, lisube, inflg_sube, noint, nmn, msr, nom_opt, ilev, mbinflg, ebinflg, ielem_m, idel_solid)
subroutine i25ini_gap_n(nrtm, irect, ixs, geo, ixc, ixtg, ixt, ixp, ipart, ipartc, iparttg, thk, thk_part, gap_n, gap_m, nmn, msr, gapn_m, gapmax_m, gapscale, igeo, msegtyp, gapmsav, ithk25, igap, thk_m, thk_m_scale)
subroutine i25norm(nrtm, irectm, numnod, x, nod_normal, nmn, msr, itab, nrtm0, msegtyp, mvoisin, evoisin, nedge, ledge, lbound, admsr, vtx_bisector, e2s_nod_normal, nadmsr, iedge, ielem_m)
subroutine i25pen3e(jlt, iedge, cand_s, cand_m, n1, n2, m1, m2, xxs1, xxs2, xys1, xys2, xzs1, xzs2, xxm1, xxm2, xym1, xym2, xzm1, xzm2, gapve, pene, ex, ey, ez, fx, fy, fz, ledge, irect, x, itab)
subroutine i25pwr3(itab, inacti, cand_e, cand_n, stfn, x, i_stok, nsv, iwpene, pene_old, noint, nty, msr, irtlm, irect, nsn, id, titr, mseglo, icont_i, iwpene0, penmin, iresp)
subroutine i25cand(cand_e, cand_n, nsn, irtlm, ii_stok, nrtm, msegtyp)
subroutine i25pwr3_e2s(itab, inacti, cand_m, cand_s, istok, llt, pene, iwpene, cand_p, n1, n2, m1, m2, noint, nty, irect, id, titr, cand_m_g, cand_s_g, cand_p_g)
subroutine i25pwr3e(itab, inacti, cand_m, cand_s, istok, llt, pene, iwpene, cand_p, n1, n2, m1, m2, noint, nty, irect, id, titr, cand_m_g, cand_s_g, cand_p_g, iedge, nledge, nedge, ledge)
subroutine i25remline(x, nedge, ledge, numnod, gap_e, gap_e_l, igap0, igap, drad, bgapemx, bgapemx_l, kremnode, remnode, nremnode, i_start, i_mem_rem, inod2lin, tagsecnd, nod2lin, dgapload, perm, perm_inv, gap_maxneigh)
subroutine i25sors(nsn, nrts, itab, ilev, ipari, intbuf_tab)
subroutine i25sti3(x, irect, stf, ixs, pm, geo, nrt, ixc, nint, stfac, nty, gap, noint, stfn, nsn, ms, nsv, ixtg, igap, wa, gap_s, gap_m, gapmin, gapscale, ixt, ixp, gapinf, gapmax_s, inacti, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, intth, ieles, ielem, areas, sh4tree, sh3tree, ipart, ipartc, iparttg, thk, thk_part, ixr, itab, bgapsmx, ixs10, msegtyp, nrt_sh, ixs16, ixs20, gap_n, ilev, gapmax_m, id, titr, igap0, pen_old, iparts, igeo, fillsol, pm_stack, iworksh, percent_size, gap_s_l, gap_m_l, knod2el1d, nod2el1d, intfric, tagprt_fric, ipartfrics, ipartfricm, intbuf_fric_tab, ivis2, gapm_mx, gaps_mx, gapm_l_mx, gaps_l_mx, ipartsm, drad, ipartt, ipartp, ipartr, ielem_m, idel_solid, elem_linked_to_segment, nin25, flag_elem_inter25, thk_s, thk_m, thk_s_scale, thk_m_scale)
subroutine i25sti_edg(nedge, ledge, stfe, stfm, igap, gape, gap_e_l, gap_m, gap_m_l, gap_s_l, bgapemx, intfric, ipartfric_e, ipartfricm, ipartsm, bgapemx_l, nsn, nsv)
subroutine i2buc1(x, irect, nsv, nseg, irtl, nmn, nrtm, mwa, nsn, xyzm, noint, msr, st, dmin, tzinf05, ignore, thk, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, nint, ixc, ixtg, thk_part, ipartc, geo, ixs, ixs10, pm, ixs16, ixs20, iparttg, id, titr, igeo, stack, iworksh, ix1, ix2, ix3, ix4, nsvg, prov_n, prov_e, n11, n12, n13, x1, x2, x3, x4, stif, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, x0, y0, z0, nx1, ny1, nz1, nx2, ny2, nz2, nx3, ny3, nz3, nx4, ny4, nz4, p1, p2, p3, p4, lb1, lb2, lb3, lb4, lc1, lc2, lc3, lc4, s, t, ilev)
subroutine i2chk3(x, irect, ixs, nrt, ixc, nint, nsn, nsv, noint, ixtg, irtl, st, dmin, geo, pm, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurf, thk, nty, ixs10, ixs16, ixs20, igeo, pm_stack, iworksh)
subroutine i2main(nsv, msr, irectm, ipari, tag, msru, intbuf_tab)
subroutine i2surfs(x, nsv, area, nsn, itab, ixc, ixtg, ixs, knod2els, nod2els, knod2elc, nod2elc, knod2eltg, nod2eltg, ilev, id, titr)
subroutine i2tid3(x, irect, st, msr, nsv, irtl, itab, ikine, ikine1, dmin, ipari, tzinf, iddlevel, id, titr, intbuf_tab, dsearch, iproj, ixs, ixc, ixs10, ixs16, ixs20, stb, nsn_multi_connec, t2_add_connec, t2_nb_connec, t2_connec, ixtg)
subroutine i5pwr3(x, irect, msr, nsv, iloc, irtl, cst, irtl0, gap, nsn, itab, inacti)
subroutine i3pen3(x, irect, msr, nsv, iloc, irtl, cst, irtl0, gap, nsn, itab, iwpene, id, titr)
subroutine i3sti3(x, irect, stf, ixs, pm, geo, nrt, ixc, stfn, nseg, lnsv, nint, nsn, nsv, slsfac, nty, gap, noint, ixtg, ir, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurf, thk, ixs10, ixs16, ixs20, id, titr, gapn, stf8, depth, fmax, igeo, fillsol, pm_stack, iworksh)
subroutine i7buc1(x, irect, nsv, bumult, nseg, nmn, nrtm, mwa, nsn, cand_e, cand_n, gap, xyzm, noint, i_stok, dist, tzinf, maxbox, minbox, msr, stf, stfn, multimp, istf, iddlevel, itab, gap_s, gap_m, igap, gapmin, gapmax, inacti, gap_s_l, gap_m_l, i_mem, id, titr, it19, prov_n, prov_e, nsvg, ix1, ix2, ix3, ix4, n11, n12, n13, pene, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, x0, y0, z0, nx1, ny1, nz1, nx2, ny2, nz2, nx3, ny3, nz3, nx4, ny4, nz4, p1, p2, p3, p4, lb1, lb2, lb3, lb4, lc1, lc2, lc3, lc4, stif)
subroutine i7buc_vox1(x, irect, nsv, bumult, nseg, nmn, nrtm, mwa, nsn, gap, xyzm, noint, i_stok, dist, tzinf, msr, stf, stfn, multimp, istf, iddlevel, itab, gap_s, gap_m, igap, gapmin, gapmax, inacti, gap_s_l, gap_m_l, i_mem, ncont, icurv, bgapsmx, id, titr, drad, intercep, nin, iremnode, flagremnode, kremnode, remnode, dgapload, npari, ipari, intbuf_tab, is_used_with_law151)
subroutine i7err3(x, nrtm, irect, noint, itab, id, titr, ix1, ix2, ix3, ix4, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, n1, n2, n3, x0, y0, z0, xn1, yn1, zn1, xn2, yn2, zn2, xn3, yn3, zn3, xn4, yn4, zn4)
subroutine i7pwr3(itab, inacti, cand_e, cand_n, stfn, stf, x, nsv, iwpene, cand_p, cand_en, cand_nn, tag, noint, gapv, nty, itied, fpenmax, id, titr, iddlevel, iremnode, kremnode, remnode, istok, ix1, ix2, ix3, ix4, nsvg, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, n1, n2, n3, pene)
subroutine remn_i2op(lower_bound, upper_bound, ipari, intbuf_tab, itab, nom_opt, nremov, iddlevel, skip_type25_edge_2_edge)
subroutine i7remnode(iremnode, noint, titr, intbuf_tab, numnod, x, nrtm, irect, nsv, nsn, itab, gap_s, gap_m, gapmin, gapmax, gap_s_l, gap_m_l, igap, gap, drad, nremnode, nty, ipari, i_mem_rem, gapm_mx, gaps_mx, gapm_l_mx, gaps_l_mx, ilev, nbinflg, mbinflg, dgapload, npari)
subroutine i7sti3(x, irect, stf, ixs, pm, geo, nrt, ixc, nint, stfac, nty, gap, noint, stfn, nsn, ms, nsv, ixtg, igap, wa, gap_s, gap_m, gapmin, ixt, ixp, gapinf, gapmax, inacti, knod2els, knod2elc, knod2eltg, nod2els, nod2elc, nod2eltg, igrsurf, intth, ieles, ielec, areas, sh4tree, sh3tree, ipart, ipartc, iparttg, thk, thk_part, percent_size, gap_s_l, gap_m_l, nod2el1d, knod2el1d, ixr, itab, bgapsmx, ixs10, ixs16, ixs20, id, titr, iddlevel, drad, igeo, fillsol, pm_stack, iworksh, it19, kxig3d, ixig3d, intfric, iparts, tagprt_fric, ipartfrics, ipartfricm, intbuf_fric_tab, nrt_ige, irem_gap, gapm_mx, gaps_mx, gapm_l_mx, gaps_l_mx, ipartt, ipartp, ipartr, elem_linked_to_segment, flag_elem_inter25)
subroutine i9sti3(x, irect, stf, ixs, nrt, nint, nsn, nsv, noint, iele, knod2els, nod2els, igrsurf, isu, ixs10, ixs16, ixs20, id, titr)
subroutine inint0(x, irect, nseg, nod2seg, nsv, msr, iloc, nmn, nsn, nrt, sirect, s_n2seg)
subroutine inint0_8(x, irect, nseg, lcseg, nsv, msr, iloc, nmn, nsn, nrt, numnod)
subroutine invoi3(x, irect, lmsr, msr, nsv, iloc, irtl, nseg, nsn, nmn, itab, id, titr, nrt)
subroutine iwcontdd_type24(numnod, nsn, nmn, nsv, msr, iwcont, nsnt, nmnt, intbuf_tab)
subroutine iwcontdd_type25(nledge, numnod, nsn, nmn, iedge, nrtm, nedge, nsv, msr, irect, iwcont, nsnt, nmnt, intbuf_tab)
integer, parameter nchartitle
subroutine i11dst3(jlt, gap, cand_s, cand_m, irects, irectm, nx, ny, nz, n1, n2, m1, m2, jlt_new, x, igap, gap_s, gap_m, gapv2, gap_s_l, gap_m_l, drad, dgapload)
subroutine i23dst3(jlt, cand_n, cand_e, irect, nsv, gap_s, x, msr, pene, ifpen, igap, gap, gapmax, gapmin, gapv, gap_m)
subroutine i24cor3(x, irect, nsv, cand_e, cand_n, stf, stfn, gapv, igap, gap, gap_s, gap_m)
subroutine i24pen3(x, irect, gapv, cand_e, cand_n, nsv, inacti, itab, tag, iwpene, nsn, irtlm, msegtyp, iwpene0, pmin, gap_n, mvoisn, ixs, ixs10, ixs16, ixs20, penmax, penmin, id, titr, ilev, pen_old, knod2els, nod2els, ipartns, ipen0, icont_i, xfic, nrtm, irtse, is2se)
subroutine i24cand(cand_e, cand_n, nsn, irtlm, ii_stok, msegtyp)
subroutine i25buce_edg(x, irect, inacti, nsn, nmn, candm_e2e, cands_e2e, gap, noint, ii_stok, mulnsne, bminma, marge, vmaxdt, drad, eshift, nedge_t, sshift, nrtm_t, stfm, stfn, ncont, gap_m, itask, bgapemx, i_mem, itab, mbinflg, ebinflg, ll_stok, mulnsns, ilev, cand_a, cand_p, igap0, flagremnode, kremnod, remnod, s_remnode_edg, igap, gap_m_l, iedge, nedge, msegtyp, ledge, admsr, edg_bisector, vtx_bisector, candm_e2s, cands_e2s, cand_b, cand_ps, gape, gap_e_l, dgapload, flag_removed_node, s_kremnode_e2s, s_remnode_e2s, kremnode_e2s, remnode_e2s, s_kremnode_edg)
subroutine i25cor3(jlt, igap, x, irect, nsv, cand_e, cand_n, xi, yi, zi, ix1, ix2, ix3, ix4, nsvg, nsn, gap_s, gaps, admsr, nod_normal, x1, x2, x3, x4, x0, y1, y2, y3, y4, y0, z1, z2, z3, z4, z0, nnx, nny, nnz, mvoisin, mvoisn, gap_m, gapm, gap_nm, gapnm, gap_s_l, gap_m_l, gapmxl, lbound, ibound)
subroutine i25cor3_e2s(jlt, ledge, irect, x, cand_s, cand_m, ex, ey, ez, xxs1, xxs2, xys1, xys2, xzs1, xzs2, xxm1, xxm2, xym1, xym2, xzm1, xzm2, n1, n2, m1, m2, nrts, gape, gapve, fx, fy, fz, iedge, admsr, lbound, edg_bisector, vtx_bisector, itab)
subroutine i25cor3e(jlt, ledge, irect, x, cand_s, cand_m, xxs1, xxs2, xys1, xys2, xzs1, xzs2, xxm1, xxm2, xym1, xym2, xzm1, xzm2, ex, ey, ez, fx, fy, fz, n1, n2, m1, m2, nedge, gape, gapve, iedge, admsr, lbound, edg_bisector, vtx_bisector, itab, igap0, igap, gap_e_l)
subroutine i25dst3_e2s(jlt, iedge, cand_s, cand_m, n1, n2, m1, m2, xxs1, xxs2, xys1, xys2, xzs1, xzs2, xxm1, xxm2, xym1, xym2, xzm1, xzm2, gapve, pene, ex, ey, ez, fx, fy, fz, ledge, irect, x, itab, e2s_nod_normal, admsr)
subroutine i25pen3(jlt, cand_n, cand_e, penmin, penmax, x1, x2, x3, x4, x0, y1, y2, y3, y4, y0, z1, z2, z3, z4, z0, xi, yi, zi, nsn, ix1, ix2, ix3, ix4, nsvg, nrtm, mseglo, gaps, irect, irtlm, time_s, pene_old, itab, msegtyp, isharp, nnx, nny, nnz, gap_nm, mvoisn, gapmxl, ivis2, ibound, vtx_bisector, ilev, inacti)
subroutine i7cor3(x, irect, nsv, cand_e, cand_n, stf, stfn, gapv, igap, gap, gap_s, gap_m, istf, gapmin, gapmax, gap_s_l, gap_m_l, drad, ix1, ix2, ix3, ix4, nsvg, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, stif, dgapload, last)
subroutine i7dst3(ix3, ix4, x1, x2, x3, x4, y1, y2, y3, y4, z1, z2, z3, z4, xi, yi, zi, x0, y0, z0, nx1, ny1, nz1, nx2, ny2, nz2, nx3, ny3, nz3, nx4, ny4, nz4, p1, p2, p3, p4, lb1, lb2, lb3, lb4, lc1, lc2, lc3, lc4, last)
subroutine i7pen3(marge, gapv, n1, n2, n3, pene, nx1, ny1, nz1, nx2, ny2, nz2, nx3, ny3, nz3, nx4, ny4, nz4, p1, p2, p3, p4, last)
subroutine in12r(x, frigap, nsv, nsn, flag)
subroutine ancmsg(msgid, msgtype, anmode, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10, i11, i12, i13, i14, i15, i16, i17, i18, i19, i20, r1, r2, r3, r4, r5, r6, r7, r8, r9, c1, c2, c3, c4, c5, c6, c7, c8, c9, prmode)
subroutine update_weight_inter_type11(nelemint, interface_id, nrts, nrtm, ifiend, irectm, irects, i_stok, cand_e, cand_n, inter_cand)
subroutine update_weight_inter_type2(nelemint, interface_id, nsn, nrtm, ifiend, n2d, irect, nsv, irtl, inter_cand)
subroutine update_weight_inter_type7(nelemint, interface_id, nsn, nrtm, ifiend, irect, nsv, i_stok, cand_e, cand_n, igap, gap, gapmax, gapmin, dgapload, drad, gap_s, gap_s_l, gap_m, gap_m_l, numnod, x, inter_cand)
subroutine update_weight_inter_type_24_25(numnod, nelemint, interface_id, nsn, nrtm, ifiend, irect, nsv, i_stok, cand_e, cand_n, dgapload, gap_s, gap_m, x, inter_cand, inter_kind, intbuf_tab, iedge, nledge)
subroutine upgrade_ixint(inter_cand, nelemint, new_size)
subroutine upgrade_lcand_edg(ni, multimp_parameter, intbuf_tab)
subroutine upgrade_lcand_e2s(ni, multimp_parameter, intbuf_tab)
subroutine upgrade_remnode_edg(ipari, nremnode, intbuf_tab)
subroutine upgrade_remnode(ipari, nremnode, intbuf_tab, nty)