37 1 IPARI ,INTBUF_TAB ,X ,NIN ,
38 2 ITASK ,IGRBRIC ,EMINX ,NME ,
39 3 NMES ,XSLV _L ,XMSR_L ,SIZE_T ,IXS ,
47 use element_mod ,
only : nixs
70#include "implicit_f.inc"
80 INTEGER NIN,ITASK , NME, NMES
81 INTEGER IPARI(NPARI,NINTER),
82 . IXS(NIXS,*) ,IXS16(8,*) ,IXS20(12,*)
85 . x(3,*), eminx(6,*), size_t(*),
86 . xslv_l(*), xmsr_l(*)
88 TYPE(intbuf_struct_) INTBUF_TAB
90 TYPE (GROUP_) ,
DIMENSION(NGRBRIC) :: IGRBRIC
95 . IGN,IGE,MULTIMP,I,MX_CAND
108 multimp = ipari(23,nin)
111 mx_cand=multimp*ipari(18,nin)
112 startt = intbuf_tab%VARIABLES(3)
113 stopt = intbuf_tab%VARIABLES(11)
122 1 x ,azero ,azero ,igrbric(ige)%ENTITY ,eminx ,
123 2 nme ,itask ,intbuf_tab%XSAV,ixs ,ixs16 ,
124 3 ixs20 ,xmsr_l ,size_t(nin))
129 1 x ,azero ,azero ,igrbric(ign)%ENTITY,eminx(1,nme+1),
130 2 nmes ,itask ,intbuf_tab%XSAV,ixs ,ixs16 ,
131 3 ixs20 ,xslv_l ,size_t(nin) )
159 1 IPARI ,INTBUF_TAB ,X ,NIN ,
160 2 ITASK ,IGRBRIC ,NME ,NMES ,
161 3 EMINX ,IXS ,IXS16 ,IXS20 ,WEIGHT ,
162 3 ISENDTO,IRECVFROM ,RETRI ,IAD_ELEM,FR_ELEM ,
163 4 ITAB ,V ,NME_T ,ESH_T )
171 use element_mod ,
only : nixs
194#include "implicit_f.inc"
195#include "comlock.inc"
199#include "com01_c.inc"
200#include "com04_c.inc"
201#include "com08_c.inc"
202#include "param_c.inc"
203#include "timeri_c.inc"
204 COMMON /i17mainc/bminma,nmesr
211 TYPE(TIMER_),
INTENT(INOUT) :: TIMERS
212 INTEGER NIN,ITASK , NME, NMES, RETRI, NME_T, ESH_T
213 INTEGER IPARI(NPARI,NINTER),
214 . ixs(nixs,*) ,ixs16(8,*) ,ixs20(12,*),weight(*),
215 . isendto(*),irecvfrom(*),iad_elem(*),fr_elem(*),
219 . x(3,*), v(3,*), eminx(6,*)
221 TYPE(intbuf_struct_) INTBUF_TAB
223 TYPE (GROUP_) ,
DIMENSION(NGRBRIC) :: IGRBRIC
228 . IGN,IGE,MULTIMP,NOINT,I,MX_CAND, NB_N_B
231 . startt, stopt,tzinf,minbox,dist,
232 . xmaxl, ymaxl, zmaxl, xminl, yminl, zminl,
242 noint = ipari(15,nin)
243 multimp = ipari(23,nin)
246 lwat = 4*(nme+100)+4*(nmes+100)
248 mx_cand=multimp*ipari(18,nin)
249 startt = intbuf_tab%VARIABLES(3)
250 stopt = intbuf_tab%VARIABLES(11)
259 1 itask,intbuf_tab%FROTM,intbuf_tab%FROTS,nme,nmes)
263 dist = intbuf_tab%VARIABLES(5)
268 tzinf = intbuf_tab%VARIABLES(8)
269 minbox = intbuf_tab%VARIABLES(12)
270 intbuf_tab%VARIABLES(5) = abs(intbuf_tab%VARIABLES(5))
288 1 x ,v ,azero ,ixs ,ixs16,
289 2 nmes ,nme_t ,esh_t ,igrbric(ige)%ENTITY,igrbric(ign)%ENTITY,
290 3 eminx ,itask ,intbuf_tab%XSAV,xminl ,yminl ,
291 3 zminl ,xmaxl ,ymaxl ,zmaxl )
293 bminma(1) =
min(bminma(1),xminl)
294 bminma(2) =
min(bminma(2),yminl)
295 bminma(3) =
min(bminma(3),zminl)
296 bminma(4) =
max(bminma(4),xmaxl)
297 bminma(5) =
max(bminma(5),ymaxl)
298 bminma(6) =
max(bminma(6),zmaxl)
299#include "lockoff.inc"
303 IF(abs(bminma(6)-bminma(3))>2*ep30.OR.
304 + abs(bminma(5)-bminma(2))>2*ep30.OR.
305 + abs(bminma(4)-bminma(1))>2*ep30)
THEN
306 CALL ancmsg(msgid=87,anmode=aninfo,
310 bminma(1) = bminma(1) - tzinf
311 bminma(2) = bminma(2) - tzinf
312 bminma(3) = bminma(3) - tzinf
313 bminma(4) = bminma(4) + tzinf
314 bminma(5) = bminma(5) + tzinf
315 bminma(6) = bminma(6) + tzinf
322 1 igrbric(ign)%ENTITY ,nmes ,x ,v ,intbuf_tab%FROTS ,
323 2 intbuf_tab%KS,bminma ,weight,nin ,isendto ,
324 3 irecvfrom ,nmesr ,ixs ,ixs16,eminx(1,nme+1))
332 1 igrbric(ign)%ENTITY,ixs ,ixs16 ,ixs20 ,igrbric(ige)%ENTITY,
333 2 nme_t ,lwat ,nmes ,intbuf_tab%CAND_E,
335 3 noint ,ipari(35,nin) ,tzinf ,minbox ,eminx ,
336 4 intbuf_tab%XSAV,itask ,x ,azero ,azero ,
337 5 mx_cand ,eminx(1,nme+1),esh_t ,intbuf_tab%FROTS,intbuf_tab%KS,
338 6 nin ,nmesr ,nb_n_b ,bminma )
344 IF (imonm > 0)
CALL startime(timers,26)
345 intbuf_tab%VARIABLES(5) = -intbuf_tab%VARIABLES(5)
349 1 result ,nmes ,intbuf_tab%CAND_N,ipari(35,nin),nin,
353 IF (imonm > 0)
CALL stoptime(timers,26)
377 1 NIN ,IPARI ,INTBUF_TAB ,X ,V ,
378 2 A ,ITASK ,IGRBRIC ,EMINX ,MS ,
379 3 IXS ,IXS16 ,IXS20 ,STIFN ,FSKYI ,ISKY ,
380 4 FSAV ,FCONT ,NISKYFI ,H3D_DATA)
388 use element_mod ,
only : nixs
410#include "implicit_f.inc"
414#include "com04_c.inc"
415#include "com08_c.inc"
416#include "param_c.inc"
417#include "parit_c.inc"
421 type(output_),
intent(inout) :: output
422 INTEGER NIN,ITASK,NISKYFI
423 INTEGER IPARI(NPARI,NINTER),
424 . IXS(NIXS,*) ,IXS16(8,*) ,IXS20(12,*) ,ISKY(*)
427 . X(3,*), V(3,*), A(3,*), MS(*),EMINX(6,*),(*),
428 . (*), FSAV(*),FCONT(3,*)
430 TYPE(INTBUF_STRUCT_) INTBUF_TAB
433 TYPE () ,
DIMENSION(NGRBRIC) :: IGRBRIC
438 . IGN,IGE,MULTIMP,NOINT,MX_CAND,NMES,LSKYI17
445 noint = ipari(15,nin)
446 multimp = ipari(23,nin)
449 nmes =igrbric(ign)%NENTITY
450 nme =igrbric(ige)%NENTITY
451 mx_cand=multimp*ipari(18,nin)
455 lskyi17=
max(mx_cand,multimp*ipari(5,nin)*8)
459 startt = intbuf_tab%VARIABLES(3)
460 stopt = intbuf_tab%VARIABLES(11)
470 1 x ,v ,intbuf_tab%CAND_N,intbuf_tab%CAND_E,ipari(35,nin) ,
471 2 ixs ,ixs16 ,eminx ,igrbric(ign)%ENTITY,igrbric(ige)%ENTITY,
472 3 itask ,a ,ipari(30,nin),nin ,eminx(1,nme+1),
473 4 stifn ,fskyi ,isky ,nme ,nmes ,
474 5 intbuf_tab%FROTM,intbuf_tab%FROTS,intbuf_tab%KM,intbuf_tab%KS,
475 5 intbuf_tab%VARIABLES(1) ,
488!||====================================================================
493#include "implicit_f.inc"
501 INTEGER ITASK,NME,NSE
504 . frotm(7,*),frots(7,*)
508 INTEGER I,NMEF,NMEL,NSEF,NSEL
512 NMEF = 1 + itask*nme / nthread
513 nmel = (itask+1)*nme / nthread
514 nsef = 1 + itask*nse / nthread
515 nsel = (itask+1)*nse / nthread
520 aa = one/
max(em20,frotm(4,i))
521 frotm(5,i)=aa*frotm(1,i)
522 frotm(6,i)=aa*frotm(2,i)
523 frotm(7,i)=aa*frotm(3,i)
532 aa = one/
max(em20,frots(4,i))
533 frots(5,i)=aa*frots(1,i)
534 frots(6,i)=aa*frots(2,i)
535 frots(7,i)=aa*frots(3,i)
subroutine i17buce_pena(neles, ixs, ixs16, ixs20, nelem, nme, lwat, nmes, cand_e, cand_n, noint, i_stok_glob, tzinf, minbox, eminxm, xsav, itask, x, v, a, mx_cand, eminxs, esh_t, frots, ks, nin, nmesr, nb_n_b, bminma)
subroutine i17crit(x, v, a, nelem, eminx, nme, itask, xsav, ixs, ixs16, ixs20, xmsr_g, size_t_g)
subroutine i17for3(output, x, v, candn, cande, i_stok, ixs, ixs16, eminxm, neles, nelem, itask, a, itied, nint, eminxs, stifn, fskyi, isky, nme, nse, frotm, frots, km, ks, fric, fsav, fcont, ms, niskyfi, lskyi17, noint, h3d_data)
subroutine i17main_pena(output, nin, ipari, intbuf_tab, x, v, a, itask, igrbric, eminx, ms, ixs, ixs16, ixs20, stifn, fskyi, isky, fsav, fcont, niskyfi, h3d_data)
subroutine i17main_tri(timers, ipari, intbuf_tab, x, nin, itask, igrbric, nme, nmes, eminx, ixs, ixs16, ixs20, weight, isendto, irecvfrom, retri, iad_elem, fr_elem, itab, v, nme_t, esh_t)
subroutine i17frot(itask, frotm, frots, nme, nse)
subroutine i17main_crit_tri(ipari, intbuf_tab, x, nin, itask, igrbric, eminx, nme, nmes, xslv _l, xmsr_l, size_t, ixs, ixs16, ixs20)
subroutine i17xsave(x, v, a, ixs, ixs16, nmes, nme_t, esh_t, nelem, neles, eminxm, itask, xsav, xmin, ymin, zmin, xmax, ymax, zmax)
subroutine spmd_tri17gat(result, nmes, cand_n, i_stok, nin, nmesr)
subroutine spmd_tri17box(nelems, nmes, x, v, frots, ks, bminmal, weight, nin, isendto, ircvfrom, nmesr, ixs, ixs16, eminxs)
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 startime(event, itask)
subroutine stoptime(event, itask)