32 . V , RHO, VOL , MOM ,IXS ,
33 . IPM, MAT, IPARG1, NPF ,TF ,
40 use element_mod ,
only : nixs
44#include "implicit_f.inc"
52#include "vect01_c.inc"
59 my_real :: V(3,*) , RHO(*) , VOL(*) , MOM(NEL,3) , TF(*) , PM(NPROPM,*) , SSP(*), SIG(NEL,6)
60 INTEGER :: IXS(,*), IPM(NPROPMI,*), MAT(MVSIZ), IPARG1(NPARG), NPF(*)
86 INTEGER :: I, J, II, IALEFVM_FLG,IALEL,IVxFUN, IVyFUN, IVzFUN, MX, MLW, ITYP
87 my_real :: SUBVOL, Vcell(3), Vnod(3,8),
88 . VX1(MVSIZ), VX2(MVSIZ), VX3(MVSIZ), (MVSIZ), VX5(MVSIZ), VX6(MVSIZ), VX7(MVSIZ), VX8(MVSIZ),
89 . VY1(), VY2(MVSIZ), VY3(MVSIZ), VY4(MVSIZ), VY5(MVSIZ), VY6(MVSIZ), VY7(MVSIZ), VY8(MVSIZ),
90 . vz1(mvsiz), vz2(mvsiz), vz3(mvsiz), vz4(mvsiz), vz5(mvsiz), vz6(mvsiz), vz7(mvsiz), vz8(mvsiz),
94 my_real,
EXTERNAL :: finter
100 ialel = iparg1(7)+iparg1(11)
123 print *,
"** WARNING INT22 : /ALE/SOLVER CARD"
124 print *,
" RECOMMENDED VALUE IS IMOM_VEL=5"
151 vx1(i) = v(1,ixs(2,ii))
152 vy1(i) = v(2,ixs(2,ii))
153 vz1(i) = v(3,ixs(2,ii))
155 vx2(i) = v(1,ixs(3,ii))
156 vy2(i) = v(2,ixs(3,ii))
157 vz2(i) = v(3,ixs(3,ii))
159 vx3(i) = v(1,ixs(4,ii))
160 vy3(i) = v(2,ixs(4,ii))
161 vz3(i) = v(3,ixs(4,ii))
163 vx4(i) = v(1,ixs(5,ii))
164 vy4(i) = v(2,ixs(5,ii))
165 vz4(i) = v(3,ixs(5,ii))
167 vx5(i) = v(1,ixs(6,ii))
168 vy5(i) = v(2,ixs(6,ii))
169 vz5(i) = v(3,ixs(6,ii))
171 vx6(i) = v(1,ixs(7,ii))
172 vy6(i) = v(2,ixs(7,ii))
173 vz6(i) = v(3,ixs(7,ii))
175 vx7(i) = v(1,ixs(8,ii))
176 vy7(i) = v(2,ixs(8,ii))
177 vz7(i) = v(3,ixs(8,ii))
179 vx8(i) = v(1,ixs(9,ii))
180 vy8(i) = v(2,ixs(9,ii))
181 vz8(i) = v(3,ixs(9,ii))
183 vcell(1) = one_over_8 * (vx1(i)+vx2(i)+vx3(i)+vx4(i)+vx5(i)+vx6(i)+vx7(i)+vx8(i))
184 vcell(2) = one_over_8 * (vy1(i)+vy2(i)+vy3(i)+vy4(i)+vy5(i)+vy6(i)+vy7(i)+vy8(i))
185 vcell(3) = one_over_8 * (vz1(i)+vz2(i)+vz3(i)+vz4(i)+vz5(i)+vz6(i)+vz7(i)+vz8(i))
189 mom(i,1) = vcell(1)*rho(i)
190 mom(i,2) = vcell(2)*rho(i)
191 mom(i,3) = vcell(3)*rho(i)
202 alefvm_buffer%FCELL(6,ii) = -third*(sig(i,1)+sig(i,2)+sig(i,3))
224 vx = vx0*finter(ivxfun,t0,npf,tf,dydx)
230 vy = vy0*finter(ivyfun,t0,npf,tf,dydx)
236 vz = vz0*finter(ivzfun,t0,npf,tf,dydx)
251 alefvm_buffer%FCELL(6,ii) = -third*(sig(i,1)+sig(i,2)+sig(i,3))
253 ELSEIF(ityp == 3)
THEN
268 alefvm_buffer%FCELL(6,ii) = -third*(sig(i,1)+sig(i,2)+sig(i,3))
subroutine inimom_fvm(v, rho, vol, mom, ixs, ipm, mat, iparg1, npf, tf, pm, ssp, sig, nel)