33 1 X ,BMINMA_FLU_L ,NBRIC , IXS , BUFBRIC,
34 2 ITASK ,ITAB ,XMINS , YMINS , ZMINS ,
35 3 XMAXS ,YMAXS ,ZMAXS , BMINMA_LAG_R ,IS_CONTACT,
52 use element_mod ,
only :nixs
56#include "implicit_f.inc"
65 INTEGER,
intent(in) :: NBRIC, IXS(NIXS,*), ITAB(*)
66 my_real,
intent(in) ::
68 . BMINMA_FLU_L(6), BMINMA_LAG_R(6)
69 my_real,
intent(inout) ::
72 . xmaxs(nbric), ymaxs(nbric), zmaxs(nbric),
73 . xmins(nbric), ymins(nbric), zmins(nbric)
79 . IX1,IY1,IZ1,IX2,IY2,IZ2,IX,IY,IZ,
80 . BUFBRIC(NBRIC),NBF,NBL,ITASK
82 . xmaxb,ymaxb,zmaxb,xminb,yminb,zminb,
107 xmaxb =
min( bminma_flu_l(1), bminma_lag_r(1) )
108 ymaxb =
min( bminma_flu_l(2), bminma_lag_r(2) )
109 zmaxb =
min( bminma_flu_l(3), bminma_lag_r(3) )
110 xminb =
max( bminma_flu_l(4), bminma_lag_r(4) )
111 yminb =
max( bminma_flu_l(5), bminma_lag_r(5) )
112 zminb =
max( bminma_flu_l(6), bminma_lag_r(6) )
119 IF ( (dx<=zero).OR.(dy<=zero).OR.(dz<=zero) )
THEN
133 nbf = 1+itask*nbric/nthread
134 nbl = (itask+1)*nbric/nthread
141 ix1=int(nbx*(xmins(ib)-xminb)/dx)
142 iy1=int(nby*(ymins(ib)-yminb)/dy)
143 iz1=int(nbz*(zmins(ib)-zminb)/dz)
148 ix2=int(nbx*(xmaxs(ib)-xminb)/dx)
149 iy2=int(nby*(ymaxs(ib)-yminb)/dy)
150 iz2=int(nbz*(zmaxs(ib)-zminb)/dz)
165#include "lockoff.inc"
subroutine spmd_tri22vox0(x, bminma_flu_l, nbric, ixs, bufbric, itask, itab, xmins, ymins, zmins, xmaxs, ymaxs, zmaxs, bminma_lag_r, is_contact, bminma_and)