73 CHARACTER(CHRLEN),
PRIVATE :: &
74 RCSIdentString =
'$RCSfile: RFLU_ModRindStates.F90,v $ $Revision: 1.6 $'
131 machinf,pinf,tinf,alphainf, &
132 betainf,corrflag,liftcoef,xc,yc, &
133 zc,rl,rul,rvl,rwl,rel,rr,rur,rvr, &
146 LOGICAL,
INTENT(IN) :: corrflag
147 REAL(RFREAL),
INTENT(IN) :: alphainf,betainf,cpgas,liftcoef,machinf, &
148 mmgas,nx,ny,nz,pinf,rl,rel,rul,rvl,rwl, &
150 REAL(RFREAL),
INTENT(OUT) :: pr,rer,rr,rur,rvr,rwr
157 REAL(RFREAL) :: al,corr,corrterm,
denom,
dist,dq2,
dx,
dy,el,ggas,gm1og, &
158 gogm1,ggasterm3,numer,pb,
pi,pl,qi,ql,rb,rgas,ri,sl2, &
159 term,theta,ub,ui,ul,vb,vi,vl,wb,wi,wl
168 gm1og = (ggas-1.0_rfreal)/ggas
169 gogm1 = 1.0_rfreal/gm1og
171 corrterm = global%forceRefLength/(4.0_rfreal*global%pi)
180 ql = ul*nx + vl*ny + wl*nz
183 sl2 = ul*ul + vl*vl + wl*wl
194 ui = qi*
cos(alphainf)*
cos(betainf)
195 vi = qi*
sin(alphainf)*
cos(betainf)
196 wi = qi*
sin(betainf)
204 IF ( corrflag .EQV. .true. )
THEN
205 dx = xc - 0.25_rfreal
211 numer = liftcoef*qi*
sqrt(1.0_rfreal-machinf**2)
212 denom =
dist*(1.0_rfreal - (machinf*
sin(theta-alphainf))**2)
213 corr = corrterm*numer/
denom
215 ui = ui + corr*
sin(theta)
216 vi = vi - corr*
cos(theta)
218 dq2 = qi*qi - (ui*ui + vi*vi)
219 pi = (
pi**gm1og + 0.5_rfreal*gm1og*ri/
pi**(1.0_rfreal/ggas)*dq2)**gogm1
220 ri = ri*(
pi/pinf)**ggas
231 IF ( machinf < 1.0_rfreal )
THEN
238 IF ( ql < 0.0_rfreal )
THEN
239 pb = 0.5_rfreal*(
pi+pl-rl*al*((ui-ul)*nx+(vi-vl)*ny+(wi-wl)*nz))
241 rb = ri - (
pi - pb)/(al*al)
242 ub = ui - nx*(
pi - pb)/(rl*al)
243 vb = vi - ny*(
pi - pb)/(rl*al)
244 wb = wi - nz*(
pi - pb)/(rl*al)
253 rb = rl - (pl-
pi)/(al*al)
254 ub = ul + nx*(pl-
pi)/(rl*al)
255 vb = vl + ny*(pl-
pi)/(rl*al)
256 wb = wl + nz*(pl-
pi)/(rl*al)
276 IF ( ql < 0.0_rfreal )
THEN
354 REAL(RFREAL),
INTENT(IN) :: cpgas,fs,minj,mmgas,nx,ny,nz,pl,tinj
355 REAL(RFREAL),
INTENT(OUT) :: hl,rl,ul,vl,wl
361 REAL(RFREAL) :: ggas,ql,rgas
430 REAL(RFREAL),
INTENT(IN) :: cpgas,fs,mmgas,nx,ny,nz,rl,rul,rvl,rwl
431 REAL(RFREAL),
INTENT(INOUT) :: pl
437 REAL(RFREAL) :: al,ggas,irl,ql,rgas,
term,ul,vl,wl
450 ql = ul*nx + vl*ny + wl*nz - fs
454 IF ( ql < 0.0_rfreal )
THEN
455 term = 1.0_rfreal + 0.5_rfreal*(ggas-1.0_rfreal)*ql/al
456 pl = pl*
term**(2.0_rfreal*ggas/(ggas-1.0_rfreal))
458 term = (ggas+1.0_rfreal)/4.0_rfreal
subroutine, public rflu_setrindstateinjectperf(cpGas, mmGas, nx, ny, nz, mInj, tInj, pl, fs, rl, ul, vl, wl, Hl)
real(rfreal) function mixtperf_eo_dgpvm(D, G, P, Vm)
real(rfreal) function mixtperf_p_deogvm2(D, Eo, G, Vm2)
real(rfreal) function mixtperf_r_m(M)
subroutine, public rflu_setrindstateslipwallperf(cpGas, mmGas, nx, ny, nz, rl, rul, rvl, rwl, fs, pl)
real(rfreal) function mixtperf_c_dgp(D, G, P)
real(rfreal) function mixtperf_d_prt(P, R, T)
real(rfreal) function mixtperf_ho_cptuvw(Cp, T, U, V, W)
subroutine, public rflu_setrindstatefarfieldperf(global, cpGas, mmGas, nx, ny, nz, machInf, pInf, tInf, alphaInf, betaInf, corrFlag, liftCoef, xc, yc, zc, rl, rul, rvl, rwl, rel, rr, rur, rvr, rwr, rer, pr)
real(rfreal) function mixtperf_c_grt(G, R, T)
real(rfreal) function mixtperf_eo_dgpuvw(D, G, P, U, V, W)
long double dist(long double *coord1, long double *coord2, int size)
real(rfreal) function mixtperf_g_cpr(Cp, R)
CGAL_BEGIN_NAMESPACE void const NT NT NT NT & denom
CImg< T > & atan2(const CImg< t > &img)
Compute the arc-tangent of each pixel.