35 1 IXS, NV46 , ALE_CONNECT, IALEFVM_FLG,
54 use element_mod ,
only : nixs
58#include "implicit_f.inc"
66#include "vect01_c.inc"
81 INTEGER :: IXS(NIXS,*),NV46,IALEFVM_FLG, IPM(NPROPMI,*),IPARG(NPARG,*),NG
89 INTEGER :: I, II, IV, J, JV, IMAT, ILAW,IFLG_ALE,IFLG_EUL
90 INTEGER :: NIN, IB, IPRES_MOM
91 INTEGER :: NC1,NC2,NC3,NC4,NC5,NC6,NC7,NC8
92 my_real :: f0(3,mvsiz), fface(3,nv46,mvsiz)
93 my_real :: nx(6,mvsiz), ny(6,mvsiz), nz(6,mvsiz), p1,p2,denom,pf
94 my_real :: theta, m1, m2, mf
96 . x1(mvsiz), x2(mvsiz), x3(mvsiz), x4(mvsiz), x5(mvsiz), x6(mvsiz), x7(mvsiz), x8(mvsiz),
97 . y1(mvsiz), y2(mvsiz), y3(mvsiz), y4(mvsiz), y5(mvsiz), y6(mvsiz), y7(mvsiz), y8(mvsiz),
98 . z1(mvsiz), z2(mvsiz), z3(mvsiz), z4(mvsiz), z5(mvsiz), z6(mvsiz), z7(mvsiz), z8(mvsiz),
99 . z_1, z_2, u1n1, u2n1
107 ialefvm_flg = ipm(251,imat)
108 IF(ialefvm_flg <= 1)
RETURN
110 iflg_ale = iparg(7,ng)
111 iflg_eul = iparg(11,ng)
121!
IF(jale==1 .OR. jeul==0)
THEN
169 nx(1,i)=(y3(i)-y1(i))*(z2(i)-z4(i)) - (z3(i)-z1(i))*(y2(i)-y4(i))
170 ny(1,i)=(z3(i)-z1(i))*(x2(i)-x4(i)) - (x3(i)-x1(i))*(z2(i)-z4(i))
171 nz(1,i)=(x3(i)-x1(i))*(y2(i)-y4(i)) - (y3(i)-y1(i))*(x2(i)-x4(i))
173 nx(2,i)=(y7(i)-y4(i))*(z3(i)-z8(i)) - (z7(i)-z4(i))*(y3(i)-y8(i))
174 ny(2,i)=(z7(i)-z4(i))*(x3(i)-x8(i)) - (x7(i)-x4(i))*(z3(i)-z8(i))
175 nz(2,i)=(x7(i)-x4(i))*(y3(i)-y8(i)) - (y7(i)-y4(i))*(x3(i)-x8(i))
177 nx(3,i)=(y6(i)-y8(i))*(z7(i)-z5(i)) - (z6(i)-z8(i))*(y7(i)-y5(i))
178 ny(3,i)=(z6(i)-z8(i))*(x7(i)-x5(i)) - (x6(i)-x8(i))*(z7(i)-z5(i))
179 nz(3,i)=(x6(i)-x8(i))*(y7(i)-y5(i)) - (y6(i)-y8(i))*(x7(i)-x5(i))
181 nx(4,i)=(y2(i)-y5(i))*(z6(i)-z1(i)) - (z2(i)-z5(i))*(y6(i)-y1(i))
182 ny(4,i)=(z2(i)-z5(i))*(x6(i)-x1(i)) - (x2(i)-x5(i))*(z6(i)-z1(i))
183 nz(4,i)=(x2(i)-x5(i))*(y6(i)-y1(i)) - (y2(i)-y5(i))*(x6(i)-x1(i))
185 nx(5,i)=(y7(i)-y2(i))*(z6(i)-z3(i)) - (z7(i)-z2(i))*(y6(i)-y3(i))
186 ny(5,i)=(z7(i)-z2(i))*(x6(i)-x3(i)) - (x7(i)-x2(i))*(z6(i)-z3(i))
187 nz(5,i)=(x7(i)-x2(i))*(y6(i)-y3(i)) - (y7(i)-y2(i))*(x6(i)-x3(i))
189 nx(6,i)=(y8(i)-y1(i))*(z4(i)-z5(i)) - (z8(i)-z1(i))*(y4(i)-y5(i))
190 ny(6,i)=(z8(i)-z1(i))*(x4(i)-x5(i)) - (x8(i)-x1(i))*(z4(i)-z5(i))
191 nz(6,i)=(x8(i)-x1(i))*(y4(i)-y5(i)) - (y8(i)-y1(i))*(x4(i)-x5(i))
206 SELECT CASE (ipres_mom)
210 iad2 = ale_connect%ee_connect%iad_connect(ii)
215 iv = ale_connect%ee_connect%connected(iad2 + j - 1)
218 iad3 = ale_connect%ee_connect%iad_connect(iv)
220 IF(ale_connect%ee_connect%connected(iad3 + jv - 1)==ii)
EXIT
230 pf = (z_1*p2 + z_2*p1)/denom + theta*(z_1*z_2*(u1n1-u2n1)/denom)
238 pf = p1 + theta*half*z_1*u1n1
241 fface(1,j,i) = -half*pf*nx(j,i)
242 fface(2,j,i) = -half*pf*ny(j,i)
243 fface(3,j,i) = -half*pf*nz(j,i)
249 iad2 = ale_connect%ee_connect%iad_connect(ii)
252 iv = ale_connect%ee_connect%connected(iad2 + j - 1)
255 iad3 = ale_connect%ee_connect%iad_connect(iv)
257 IF(ale_connect%ee_connect%connected(iad3 + jv - 1)==ii)
EXIT
266 fface(1,j,i) = -half*pf*nx(j,i)
267 fface(2,j,i) = -half*pf*ny(j,i)
268 fface(3,j,i) = -half*pf*nz(j,i)
286 f0(1,i) = sum(fface(1,1:nv46,i))
287 f0(2,i) = sum(fface(2,1:nv46,i))
288 f0(3,i) = sum(fface(3,1:nv46,i))