43 D F18, F28, F38, PX1H1,
44 E PX1H2, PX1H3, PX2H1, PX2H2,
45 F PX2H3, PX3H1, PX3H2, PX3H3,
46 G PX4H1, PX4H2, PX4H3, VOL,
48 I DELTAX, EANI, PID, GEO,
49 J PARTSAV, IPARTS, NEL, NFT,
58#include "implicit_f.inc"
72 INTEGER,
INTENT(IN) :: NEL
73 INTEGER,
INTENT(IN) :: NFT
74 INTEGER,
INTENT(IN) :: JLAG
75 INTEGER,
INTENT(IN) :: JHBE
76 INTEGER MAT(*),PID(*),IPARTS(*)
78 . PM(NPROPM,*),(NPROPG,*), RHO(*),OFF(*),
79 . VX1(*),VX2(*),VX3(*),VX4(*),VX5(*),VX6(*),VX7(*),VX8(*),
80 . VY1(*),VY2(*),VY3(*),VY4(*),VY5(*),VY6(*),VY7(*),VY8(*),
81 . VZ1(*),VZ2(*),VZ3(*),VZ4(*),VZ5(*),VZ6(*),VZ7(*),VZ8(*),
82 . F11(*),(*),F31(*),F12(*),(*),F32(*),
83 . F13(*),F23(*),F33(*),F14(*),F24(*),F34(*),
84 . F15(*),F25(*),F35(*),F16(*),F26(*),F36(*),
85 . F17(*),F27(*),F37(*),F18(*),F28(*),F38(*),
86 . PX1H1(*), PX1H2(*), PX1H3(*),
87 . PX2H1(*), PX2H2(*), PX2H3(*),
88 . PX3H1(*), PX3H2(*), PX3H3(*),
89 . PX4H1(*), PX4H2(*), PX4H3(*),EANI(*),(NPSAV,*),
90 . VOL(*),CXX(*),VIS(*),VD2(*),DELTAX(*)
94 INTEGER I, FLUID,MX, J, II, IC, JST(MVSIZ+1)
97 . caq(mvsiz), fcl(mvsiz), fcq(mvsiz),ehou(mvsiz),
98 . h11(mvsiz), h12(mvsiz), h13(mvsiz), h14(mvsiz),
99 . h15(mvsiz), h16(mvsiz), h17(mvsiz), h18(mvsiz),
100 . h21(mvsiz), h22(mvsiz), h23(mvsiz), h24(mvsiz),
101 . h25(mvsiz), h26(mvsiz), h27(mvsiz), h28(mvsiz),
102 . h31(mvsiz), h32(mvsiz), h33(mvsiz), h34(mvsiz),
103 . h35(mvsiz), h36(mvsiz), h37(mvsiz), h38(mvsiz),
104 . hx1(mvsiz), hx2(mvsiz), hx3(mvsiz), hx4(mvsiz),
105 . hy1(mvsiz), hy2(mvsiz), hy3(mvsiz), hy4(mvsiz),
106 . hz1(mvsiz), hz2(mvsiz), hz3(mvsiz), hz4(mvsiz),
107 . hgx1(mvsiz), hgx2(mvsiz), hgx3(mvsiz), hgx4(mvsiz),
108 . hgy1(mvsiz), hgy2(mvsiz), hgy3(mvsiz), hgy4(mvsiz),
109 . hgz1(mvsiz), hgz2(mvsiz), hgz3(mvsiz), hgz4(mvsiz),
110 . vx3478(mvsiz), vx2358(mvsiz), vx1467(mvsiz), vx1256(mvsiz),
111 . vy3478(mvsiz), vy2358(mvsiz), vy1467(mvsiz), vy1256(mvsiz),
112 . vz3478(mvsiz), vz2358(mvsiz), vz1467(mvsiz), vz1256(mvsiz),
113 . g11(mvsiz),g21(mvsiz),g31(mvsiz),g41(mvsiz),
114 . g51(mvsiz),g61(mvsiz),g71(mvsiz),g81(mvsiz),
115 . g12(mvsiz),g22(mvsiz),g32(mvsiz),g42(mvsiz),
116 . g52(mvsiz),g62(mvsiz),g72(mvsiz),g82(mvsiz),
117 . g13(mvsiz),g23(mvsiz),g33(mvsiz),g43(mvsiz),
118 . g53(mvsiz),g63(mvsiz),g73(mvsiz),g83(mvsiz),
123 caq(i)=fourth*off(i)*geo(13,pid(i))
126 IF(
ale%UPWIND%UPWM > 1 .OR. jlag == 1)
THEN
130 fcl(i)=ten*caq(i)*vis(i)*deltax(i)
133 fcl(i)=caq(i)*rho(i)*cxx(i)*deltax(i)**2
136 ELSEIF(
ale%UPWIND%UPWM == 0)
THEN
138 fcl(i)=caq(i)*rho(i)*cxx(i)*vol(i)**two_third
141 ELSEIF(
ale%UPWIND%UPWM == 1)
THEN
143 fcl(i)=caq(i)*rho(i)*deltax(i)**2
144 fcl(i)=
min(fcl(i)*cxx(i),
145 .
max(ten*caq(i)*vis(i)*deltax(i),fcl(i)*sqrt(vd2(i))))
152 vx3478(i)=vx3(i)-vx4(i)-vx7(i)+vx8(i)
153 vx2358(i)=vx2(i)-vx3(i)-vx5(i)+vx8(i)
154 vx1467(i)=vx1(i)-vx4(i)-vx6(i)+vx7(i)
155 vx1256(i)=vx1(i)-vx2(i)-vx5(i)+vx6(i)
157 vy3478(i)=vy3(i)-vy4(i)-vy7(i)+vy8(i)
158 vy2358(i)=vy2(i)-vy3(i)-vy5(i)+vy8(i)
159 vy1467(i)=vy1(i)-vy4(i)-vy6(i)+vy7(i)
160 vy1256(i)=vy1(i)-vy2(i)-vy5(i)+vy6(i)
162 vz3478(i)=vz3(i)-vz4(i)-vz7(i)+vz8(i)
163 vz2358(i)=vz2(i)-vz3(i)-vz5(i)+vz8(i)
164 vz1467(i)=vz1(i)-vz4(i)-vz6(i)+vz7(i)
165 vz1256(i)=vz1(i)-vz2(i)-vz5(i)+vz6(i)
169 hgx1(i)=vx1467(i)-vx2358(i)
170 hgx2(i)=vx1467(i)+vx2358(i)
171 hgx3(i)=vx1256(i)-vx3478(i)
172 hgx4(i)=vx1256(i)+vx3478(i)
174 hgy1(i)=vy1467(i)-vy2358(i)
175 hgy2(i)=vy1467(i)+vy2358(i)
176 hgy3(i)=vy1256(i)-vy3478(i)
177 hgy4(i)=vy1256(i)+vy3478(i)
179 hgz1(i)=vz1467(i)-vz2358(i)
180 hgz2(i)=vz1467(i)+vz2358(i)
181 hgz3(i)=vz1256(i)-vz3478(i)
182 hgz4(i)=vz1256(i)+vz3478(i)
186 hx1(i)=hgx1(i)*(fcl(i)+abs(hgx1(i))*fcq(i))
187 hx2(i)=hgx2(i)*(fcl(i)+abs(hgx2(i))*fcq(i))
188 hx3(i)=hgx3(i)*(fcl(i)+abs(hgx3(i))*fcq(i))
189 hx4(i)=hgx4(i)*(fcl(i)+abs(hgx4(i))*fcq(i))
191 hy1(i)=hgy1(i)*(fcl(i)+abs(hgy1(i))*fcq(i))
192 hy2(i)=hgy2(i)*(fcl(i)+abs(hgy2(i))*fcq(i))
193 hy3(i)=hgy3(i)*(fcl(i)+abs(hgy3(i))*fcq(i))
194 hy4(i)=hgy4(i)*(fcl(i)+abs(hgy4(i))*fcq(i))
196 hz1(i)=hgz1(i)*(fcl(i)+abs(hgz1(i))*fcq(i))
197 hz2(i)=hgz2(i)*(fcl(i)+abs(hgz2(i))*fcq(i))
198 hz3(i)=hgz3(i)*(fcl(i)+abs(hgz3(i))*fcq(i))
199 hz4(i)=hgz4(i)*(fcl(i)+abs(hgz4(i))*fcq(i))
203 f11(i) =-hx1(i)-hx2(i)-hx3(i)-hx4(i)
204 f12(i) = hx1(i)-hx2(i)+hx3(i)+hx4(i)
205 f13(i) =-hx1(i)+hx2(i)+hx3(i)-hx4(i)
206 f14(i) = hx1(i)+hx2(i)-hx3(i)+hx4(i)
207 f15(i) =-hx1(i)+hx2(i)+hx3(i)+hx4(i)
208 f16(i) = hx1(i)+hx2(i)-hx3
209 f17(i) =-hx1(i)-hx2(i)-hx3(i)+hx4(i)
210 f18(i) = hx1(i)-hx2(i)+hx3(i)-hx4(i)
212 f21(i) =-hy1(i)-hy2(i)-hy3(i)-hy4(i)
213 f22(i) = hy1(i)-hy2(i)+hy3(i)+hy4(i)
214 f23(i) =-hy1(i)+hy2(i)+hy3(i)-hy4(i)
215 f24(i) = hy1(i)+hy2(i)-hy3(i)+hy4(i)
216 f25(i) =-hy1(i)+hy2(i)+hy3(i)+hy4(i)
217 f26(i) = hy1(i)+hy2(i)-hy3(i)-hy4(i)
218 f27(i) =-hy1(i)-hy2(i)-hy3(i)+hy4(i)
219 f28(i) = hy1(i)-hy2(i)+hy3(i)-hy4(i)
221 f31(i) =-hz1(i)-hz2(i)-hz3(i)-hz4(i)
222 f32(i) = hz1(i)-hz2(i)+hz3(i)+hz4(i)
223 f33(i) =-hz1(i)+hz2(i)+hz3(i)-hz4(i)
225 f35(i) =-hz1(i)+hz2(i)+hz3(i)+hz4(i)
226 f36(i) = hz1(i)+hz2(i)-hz3(i)-hz4(i)
227 f37(i) =-hz1(i)-hz2(i)-hz3(i)+hz4(i)
228 f38(i) = hz1(i)-hz2(i)+hz3(i)-hz4(i)
230 ELSEIF(jhbe >= 1)
THEN
242 & g11(i)*vx1(i)+g21(i)*vx2(i)+g31(i)*vx3(i)+g41(i)*vx4(i)
243 & +g51(i)*vx5(i)+g61(i)*vx6(i)+g71(i)*vx7(i)+g81(i)*vx8(i)
245 & g11(i)*vy1(i)+g21(i)*vy2(i)+g31(i)*vy3(i)+g41(i)*vy4(i)
246 & +g51(i)*vy5(i)+g61(i)*vy6(i)+g71(i)*vy7(i)+g81(i)*vy8(i)
248 & g11(i)*vz1(i)+g21(i)*vz2(i)+g31(i)*vz3(i)+g41(i)*vz4(i)
249 & +g51(i)*vz5(i)+g61(i)*vz6(i)+g71(i)*vz7(i)+g81(i)*vz8(i)
263 & g12(i)*vx1(i)+g22(i)*vx2(i)+g32(i)*vx3(i)+g42(i)*vx4(i)
264 & +g52(i)*vx5(i)+g62(i)*vx6(i)+g72(i)*vx7(i)+g82(i)*vx8(i)
266 & g12(i)*vy1(i)+g22(i)*vy2(i)+g32(i)*vy3(i)+g42(i)*vy4(i)
267 & +g52(i)*vy5(i)+g62(i)*vy6(i)+g72(i)*vy7(i)+g82(i)*vy8(i)
269 & g12(i)*vz1(i)+g22(i)*vz2(i)+g32(i)*vz3(i)+g42(i)*vz4(i)
270 & +g52(i)*vz5(i)+g62(i)*vz6(i)+g72(i)*vz7(i)+g82(i)*vz8(i)
283 & g13(i)*vx1(i)+g23(i)*vx2(i)+g33(i)*vx3(i)+g43(i)*vx4(i)
284 & +g53(i)*vx5(i)+g63(i)*vx6(i)+g73(i)*vx7(i)+g83(i)*vx8(i)
286 & g13(i)*vy1(i)+g23(i)*vy2(i)+g33(i)*vy3(i)+g43(i)*vy4(i)
287 & +g53(i)*vy5(i)+g63(i)*vy6(i)+g73(i)*vy7(i)+g83(i)*vy8(i)
289 & g13(i)*vz1(i)+g23(i)*vz2(i)+g33(i)*vz3(i)+g43(i)*vz4(i)
290 & +g53(i)*vz5(i)+g63(i)*vz6(i)+g73(i)*vz7(i)+g83(i)*vz8(i)
295 hgx4(i)=vx1(i)-vx2(i)+vx3(i)-vx4(i)-vx5(i)+vx6(i
296 hgy4(i)=vy1(i)-vy2(i)+vy3(i)-vy4(i)-vy5(i)+vy6(i)-vy7(i)+vy8(i)
297 hgz4(i)=vz1(i)-vz2(i)+vz3(i)-vz4(i)-vz5(i)+vz6(i)-vz7(i)+vz8(i)
301 hx1(i)=hgx1(i)*(fcl(i)+abs(hgx1(i))*fcq(i))
302 hx2(i)=hgx2(i)*(fcl(i)+abs(hgx2(i))*fcq(i))
303 hx3(i)=hgx3(i)*(fcl(i)+abs(hgx3(i))*fcq(i))
304 hx4(i)=hgx4(i)*(fcl(i)+abs(hgx4(i))*fcq(i))
306 hy1(i)=hgy1(i)*(fcl(i)+abs(hgy1(i))*fcq(i))
307 hy2(i)=hgy2(i)*(fcl(i)+abs(hgy2(i))*fcq(i))
308 hy3(i)=hgy3(i)*(fcl(i)+abs(hgy3(i))*fcq(i))
309 hy4(i)=hgy4(i)*(fcl(i)+abs(hgy4(i))*fcq(i))
311 hz1(i)=hgz1(i)*(fcl(i)+abs(hgz1(i))*fcq(i))
312 hz2(i)=hgz2(i)*(fcl(i)+abs(hgz2(i))*fcq(i))
313 hz3(i)=hgz3(i)*(fcl(i)+abs(hgz3(i))*fcq(i))
314 hz4(i)=hgz4(i)*(fcl(i)+abs(hgz4(i))*fcq(i))
318 f11(i) =-g11(i)*hx1(i)-g12(i)*hx2(i)-g13(i)*hx3(i)-hx4(i)
319 f12(i) =-g21(i)*hx1(i)-g22(i)*hx2(i)-g23(i)*hx3(i)+hx4(i)
320 f13(i) =-g31(i)*hx1(i)-g32(i)*hx2(i)-g33(i)*hx3(i)-hx4(i)
321 f14(i) =-g41(i)*hx1(i)-g42(i)*hx2(i)-g43(i)*hx3(i)+hx4(i)
322 f15(i) =-g51(i)*hx1(i)-g52(i)*hx2(i)-g53(i)*hx3(i)+hx4(i)
323 f16(i) =-g61(i)*hx1(i)-g62(i)*hx2(i)-g63(i)*hx3(i)-hx4(i)
324 f17(i) =-g71(i)*hx1(i)-g72(i)*hx2(i)-g73(i)*hx3(i)+hx4(i)
325 f18(i) =-g81(i)*hx1(i)-g82(i)*hx2(i)-g83(i)*hx3(i)-hx4(i)
327 f21(i) =-g11(i)*hy1(i)-g12(i)*hy2(i)-g13(i)*hy3(i)-hy4(i)
328 f22(i) =-g21(i)*hy1(i)-g22(i)*hy2(i)-g23(i)*hy3(i)+hy4(i)
329 f23(i) =-g31(i)*hy1(i)-g32(i)*hy2(i)-g33(i)*hy3(i)-hy4(i)
330 f24(i) =-g41(i)*hy1(i)-g42(i)*hy2(i)-g43(i)*hy3(i)+hy4(i)
331 f25(i) =-g51(i)*hy1(i)-g52(i)*hy2(i)-g53(i)*hy3(i)+hy4(i)
332 f26(i) =-g61(i)*hy1(i)-g62(i)*hy2(i)-g63(i)*hy3(i)-hy4(i)
333 f27(i) =-g71(i)*hy1(i)-g72(i)*hy2(i)-g73(i)*hy3(i)+hy4(i)
334 f28(i) =-g81(i)*hy1(i)-g82(i)*hy2(i)-g83(i)*hy3(i)-hy4(i)
336 f31(i) =-g11(i)*hz1(i)-g12(i)*hz2(i)-g13(i)*hz3(i)-hz4(i)
337 f32(i) =-g21(i)*hz1(i)-g22(i)*hz2(i)-g23(i)*hz3(i)+hz4(i)
338 f33(i) =-g31(i)*hz1(i)-g32(i)*hz2(i)-g33(i)*hz3(i)-hz4(i)
339 f34(i) =-g41(i)*hz1(i)-g42(i)*hz2(i)-g43(i)*hz3(i)+hz4(i)
340 f35(i) =-g51(i)*hz1(i)-g52(i)*hz2(i)-g53(i)*hz3(i)+hz4(i)
341 f36(i) =-g61(i)*hz1(i)-g62(i)*hz2(i)-g63(i)*hz3(i)-hz4(i)
342 f37(i) =-g71(i)*hz1(i)-g72(i)*hz2(i)-g73(i)*hz3(i)+hz4(i)
343 f38(i) =-g81(i)*hz1(i)-g82(i)*hz2(i)-g83(i)*hz3(i)-hz4(i)
351 & hz1(i)*hgz1(i) + hz2(i)*hgz2(i) +
352 & hz3(i)*hgz3(i) + hz4(i)*hgz4(i) +
353 & hx1(i)*hgx1(i) + hx2(i)*hgx2(i) +
354 & hx3(i)*hgx3(i) + hx4(i)*hgx4(i) +
355 & hy1(i)*hgy1(i) + hy2(i)*hgy2(i) +
356 & hy3(i)*hgy3(i) + hy4(i)*hgy4(i) )
357 ehourt= ehourt+ehou(i)
subroutine fhvis3(pm, rho, off, vx1, vx2, vx3, vx4, vx5, vx6, vx7, vx8, vy1, vy2, vy3, vy4, vy5, vy6, vy7, vy8, vz1, vz2, vz3, vz4, vz5, vz6, vz7, vz8, f11, f21, f31, f12, f22, f32, f13, f23, f33, f14, f24, f34, f15, f25, f35, f16, f26, f36, f17, f27, f37, f18, f28, f38, px1h1, px1h2, px1h3, px2h1, px2h2, px2h3, px3h1, px3h2, px3h3, px4h1, px4h2, px4h3, vol, mat, cxx, vis, vd2, deltax, eani, pid, geo, partsav, iparts, nel, nft, jlag, jhbe)