36 . ELBUF_TAB, IX , NIX , ITAB , NV46 )
57 USE multimat_param_mod ,
ONLY : m51_n0phas, m51_nvphas
61#include "implicit_f.inc"
67#include "vect01_c.inc"
73 INTEGER,
INTENT(IN) :: IFUNC, IFLOW(*),IPARG(NPARG,*),IX(,*),ITAB(*),NIX,NV46
75 REAL,
INTENT(INOUT) :: WA4(*)
77 TYPE (ELBUF_STRUCT_),
DIMENSION(NGROUP),
TARGET :: ELBUF_TAB
78 TYPE(buf_mat_),
POINTER
82 INTEGER :: , IADR, I, ITYP, NINOUT, NNO, NEL, II1, II2,K1,K,
83 . ir1, ir2, j, jj, nno_l, nni_l, ii3, ii4, jjj, nni,
84 . ialel,nnod,ipos,iv,ngv,j1,j2,ibv, mlw,numnodcell,
87 TYPE(g_bufel_) ,
POINTER :: GBUF,GBUFv
88 my_real,
ALLOCATABLE,
DIMENSION(:) :: count_vol
90 INTEGER,
DIMENSION(:,:),
POINTER :: pAdjBRICK
112 ALLOCATE(count_vol(numnod))
119 ialel = iparg(7,ng)+iparg(11,ng)
120 IF(ityp/=1 .AND. ityp/=2)cycle
122 IF(mlw/=37.AND.mlw/=51)cycle
123 gbuf => elbuf_tab(ng)%GBUF
124 mbuf => elbuf_tab(ng)%BUFLY(1)%MAT(1,1,1)
127 vf = mbuf%VAR(nel*(3+iphase-1)+i)
131 wa4(jj) = wa4(jj)+vf*v*one_over_8
132 count_vol(jj) = count_vol(jj) + v * one_over_8
138 k1 = m51_n0phas + (iphase-1)*m51_nvphas +ipos-1
144 wa4(jj) = wa4(jj)+vf*v*one_over_8
145 count_vol(jj) = count_vol(jj) + v * one_over_8
153 wa4(i)=wa4(i)/count_vol(i)
156 DEALLOCATE(count_vol)
172 ALLOCATE(count_vol(numnod))
179 ialel = iparg(7,ng)+iparg(11,ng)
180 IF(ityp/=1 .AND. ityp/=2)cycle
182 IF(mlw/=37.AND.mlw/=51)cycle
183 gbuf => elbuf_tab(ng)%GBUF
184 mbuf => elbuf_tab(ng)%BUFLY(1)%MAT(1,1,1)
186 ib = nint(gbuf%TAG22(i))
192 vf = mbuf%VAR(nel*(3+iphase-1)+i)
196 wa4(jj) = wa4(jj)+vf*v*one_over_8
197 count_vol(jj) = count_vol(jj) + v * one_over_8
201 k1 = m51_n0phas + (iphase-1)*m51_nvphas +ipos-1
207 wa4(jj) = wa4(jj)+vf*v*one_over_8
208 count_vol(jj) = count_vol(jj) + v * one_over_8
218 icell =
brick_list(nin,ib)%NODE(j-1)%WhichCell
219 vf =
brick_list(nin,ib)%POLY(icell)%VFRACm(iphase)
223 numnodcell =
brick_list(nin,ib)%POLY(icell)%NumNOD
225 wa4(jj) = wa4(jj)+vf*v/numnodcell
226 count_vol(jj) = count_vol(jj) + v / numnodcell
232 IF(count_vol(i)/=zero)
THEN
233 wa4(i)=wa4(i)/count_vol(i)
236 DEALLOCATE(count_vol)