37 SUBROUTINE s4alesfem(IPARG,IXS,X,ELBUF_TAB,SFEM_NODVAR, S_SFEM_NODVAR,PM,
44 use element_mod ,
only : nixs
48#include "implicit_f.inc"
59#include "vect01_c.inc"
63 INTEGER,
INTENT(IN) :: S_SFEM_NODVAR
64 INTEGER IXS(NIXS,*),(NPARG,*),IAD_ELEM(
66 TYPE (ELBUF_STRUCT_),
TARGET,
DIMENSION(NGROUP) ::
70 INTEGER NG, I, J, I1, I2, I3, I4, K, LENR,NEL
71 INTEGER NC1(MVSIZ),NC2(MVSIZ),NC3(MVSIZ),NC4(MVSIZ)
75 DOUBLE PRECISION VARNOD6(6,2*NUMNOD), MASS6(6,MVSIZ)
77 TYPE(g_bufel_) ,
POINTER :: GBUF
79 sfem_nodvar(1:2*numnod) = zero
80 varnod6(1:6,1:2*numnod) = zero
82 mass6(1:6,1:mvsiz) = zero
89 IF(iparg(8, ng)==1) cycle
90 IF(iparg(28,ng)/=4) cycle
92 2 mtn ,llt ,nft ,iad ,ity ,
93 3 npt ,jale ,ismstr ,jeul ,jtur ,
94 4 jthe ,jlag ,jmult ,jhbe ,jivf ,
95 5 nvaux ,jpor ,jcvt ,jclose ,jplasol ,
96 6 irep ,iint ,igtyp ,israt ,isrot ,
97 7 icsen ,isorth ,isorthg ,ifailure,jsms )
114 gbuf => elbuf_tab(ng)%GBUF
117 1 varnod6, x, nc1, nc2,
118 2 nc3, nc4, gbuf%OFF, gbuf%SMSTR,
121 mass(i)=gbuf%RHO(i)/pm(1,mat(i))
132 varnod6(k,i1) = varnod6(k,i1) + mass6(k,i)
133 varnod6(k,i2) = varnod6(k,i2) + mass6(k,i)
134 varnod6(k,i3) = varnod6(k,i3) + mass6(k,i)
135 varnod6(k,i4) = varnod6(k,i4) + mass6(k,i)
144 lenr = 2*(iad_elem(1,nspmd+1)-iad_elem(1,1))
145 CALL spmd_exch_vol(varnod6(1,1),varnod6(1,numnod+1),iad_elem,
155 sfem_nodvar(i) = sfem_nodvar(i) + varnod6(k,i)
157 sfem_nodvar(i+numnod) = sfem_nodvar(i+numnod) + varnod6(k,i+numnod)
161 IF(sfem_nodvar(j) /= 0)
THEN
162 sfem_nodvar(i)=sfem_nodvar(i)/sfem_nodvar(j)
subroutine initbuf(iparg, ng, mtn, llt, nft, iad, ity, npt, jale, ismstr, jeul, jtur, jthe, jlag, jmult, jhbe, jivf, mid, jpor, jcvt, jclose, jpla, irep, iint, igtyp, israt, isrot, icsen, isorth, isorthg, ifailure, jsms)