42#include "implicit_f.inc"
55 INTEGER,
INTENT(IN) :: NEL
56 my_real R(3,*),S(3,*),T(3,*),VDX(*),VDY(*),VDZ(*),DELTAX(*),RHO(*),VIS(*),(*)
60 my_real fac,pe,d1,d2,d3,dist,ch1,ch2,dv(mvsiz),v(mvsiz)
68 IF(
ale%UPWIND%UPWM==2)
THEN
69 fac=
ale%UPWIND%CUPWM*half*dt1
78 ELSEIF(
ale%UPWIND%UPWM==3)
THEN
81 v(i)=vdx(i)**2+vdy(i)**2+vdz(i)**2
82 d1=r(1,i)*vdx(i)+r(2,i)*vdy(i)+r(3,i)*vdz(i)
83 d2=s(1,i)*vdx(i)+s(2,i)*vdy(i)+s(3,i)*vdz(i)
84 d3=t(1,i)*vdx(i)+t(2,i)*vdy(i)+t(3,i)*vdz(i)
85 gam(i)=sqrt(d1**2+d2**2+d3**2)
89 d2=s(2,i)*vdy(i)+s(3,i)*vdz(i)
90 d3=t(2,i)*vdy(i)+t(3,i)*vdz(i)
91 gam(i)=sqrt(d2**2+d3**2)
92 v(i)=vdy(i)**2+vdz(i)**2
95 ch2=
ale%UPWIND%CUPWM*half
98 fac=half*rho(i)/
max(em20,vis(i))
101 gam(i)=ch1*fac*deltax(i)**2
103 gam(i)=ch1*fac*gam(i)**2/v(i)
105 gam(i)=ch2*gam(i)/v(i)
subroutine upwind(rho, vis, vdx, vdy, vdz, r, s, t, deltax, gam, nel)