47 SUBROUTINE aflux0(IPARG ,ELBUF_STR ,PM ,IXS ,IXQ ,
48 . V ,W ,X ,FLUX ,FLU2 ,
49 . VEUL ,FILL ,DFILL ,VOL ,
50 . ALE_CONNECT ,ALPH ,ITASK ,NV46 ,IPM )
59 use element_mod ,
only : nixs
63#include "implicit_f.inc"
70#include "vect01_c.inc"
78 INTEGER IPARG(NPARG,NGROUP), IXS(NIXS,NUMELS), IXQ(7,NUMELQ), IPM(,NUMMAT)
80 my_real flux(*), flu2(*), veul(*), fill(numnod,*),dfill(numnod,*), vol(*), alph(2,*)
81 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP),
TARGET :: ELBUF_STR
86 INTEGER NG, I, NF1,ISOLNOD,NSG,NEL
88 TYPE(G_BUFEL_) ,
POINTER :: GBUF
89 TYPE(l_bufel_) ,
POINTER :: LBUF1,LBUF2
97 IF (iparg(76, ng) == 1) cycle
99 2 mtn ,llt ,nft ,iad ,ity ,
100 3 npt ,jale ,ismstr ,jeul ,jtur ,
101 4 jthe ,jlag ,jmult ,jhbe ,jivf ,
102 5 nvaux ,jpor ,jcvt ,jclose ,jplasol ,
103 6 irep ,iint ,igtyp ,israt ,isrot ,
104 7 icsen ,isorth ,isorthg ,ifailure,jsms )
105 IF (jmult == 0) cycle
106 gbuf => elbuf_str(ng)%GBUF
107 lbuf1 => elbuf_str(ng)%BUFLY(1)%LBUF(1,1,1)
108 lbuf2 => elbuf_str(ng)%BUFLY(2)%LBUF(1,1,1)
116 alph(1,i+nft)=lbuf1%FRAC(i)
117 alph(2,i+nft)=lbuf2%FRAC(i)
118 vol(i+nft)=gbuf%VOL(i)*udt
127 DO ng=itask+1,ngroup,nthread
129 IF (iparg(76, ng) == 1) cycle
131 2 mtn ,llt ,nft ,iad ,ity ,
132 3 npt ,jale ,ismstr ,jeul ,jtur ,
133 4 jthe ,jlag ,jmult ,jhbe ,jivf ,
134 5 nvaux ,jpor ,jcvt ,jclose ,jplasol ,
135 6 irep ,iint ,igtyp ,israt ,isrot ,
136 7 icsen ,isorth ,isorthg ,ifailure,jsms )
137 IF (jale+jeul == 0) cycle
138 IF (iparg(8,ng) == 1) cycle
139 gbuf => elbuf_str(ng)%GBUF
141 isolnod = iparg(28,ng)
146 IF(n2d == 0.AND.jeul == 0.AND. isolnod == 4)
THEN
147 CALL a4flux3(pm,ixs,v,w,x,flux(6*nft+1),flu2(nf1),ale_connect)
148 ELSEIF(n2d == 0.AND.jeul == 0)
THEN
150 CALL aflux3(pm,ixs,v,w,x,flux(6*nft+1),flu2(nf1),ale_connect,nsg,gbuf%TAG22)
153 2 flu2(nf1),ale_connect,
157 ELSEIF(n2d /= 0.AND.jeul == 0)
THEN
159 . flux(4*nft+1),flu2(nf1),
160 . fill,dfill,vol,ale_connect,alph)
161 ELSEIF(n2d == 0.AND.jeul /= 0)
THEN
163 CALL eflux3(pm,ixs,v,flux(6*nft+1),flu2(nf1),veul,ale_connect,gbuf%TAG22)
166 2 veul ,ale_connect ,ipm ,
169 ELSEIF(n2d /= 0.AND.jeul /= 0)
THEN
170 CALL eflux2(pm,ixq,v,x,flux(4*nft+1),flu2(nf1),fill,dfill,vol,ale_connect,alph)
179 IF(i22_aleul == 2)
THEN
181 . pm , ixs , flux(1) , flu2(1) ,
182 . iparg , elbuf_str , itask ,
186 . pm , ixs , flux(1) , flu2(1) ,
187 . iparg , elbuf_str , itask ,
188 . nv46 , ipm , x , w)
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)