61 TYPE (t_region
) :: region
67 CHARACTER(CHRLEN) :: rcsidentstring
70 INTEGER :: ijkcr, ijkn, ijkn1
71 REAL(RFREAL),
POINTER :: xyz(:,:), cofg(:,:), cv(:,:), dv(:,:)
72 REAL(RFREAL) ::
pi, gamma, gogampls,
delta, minj, mfrat, refmassflux
73 REAL(RFREAL) :: throatmflux, cpreps, headpres, headtemp, headsv, rgas
74 REAL(RFREAL) :: phi, mach, yc,
denom, choklen, hvinj
75 REAL(RFREAL) :: rho, pres, vm, eo
79 rcsidentstring =
'$RCSfile: PERI_coCprInitSolutionFlu.F90,v $ $Revision: 1.5 $'
81 global => region%global
83 'PERI_coCprInitSolutionFlu.F90' )
87 xyz => region%grid%xyz
88 cofg => region%grid%cofg
94 gamma = global%refGamma
95 gogampls = gamma / (gamma + 1._rfreal)
96 cpreps = region%periInput%cprEpsilon
97 headpres = region%periInput%headPres
98 headtemp = region%periInput%headTemp
99 delta = global%refLength
100 write(*,*)global%currentTime
101 IF ((global%flowType==flow_unsteady .AND. &
102 global%currentTime < peri_real_small) .OR. &
103 (global%flowType==flow_steady .AND. global%currentIter==0))
THEN
107 write(*,*)headpres,headtemp
109 minj = region%periInput%minjRate
110 refmassflux = region%periInput%bulkmFlux
113 throatmflux = 2._rfreal*
delta*gamma*headpres/ &
114 sqrt(2._rfreal*gogampls*rgas*headtemp)
117 headsv =
sqrt( gamma*rgas*headtemp )
118 denom = headsv*minj*
sqrt( 2._rfreal*(gamma+1._rfreal) )
119 choklen = headpres*gamma/
denom
122 mfrat = refmassflux/throatmflux
125 mfrat = 1._rfreal/cpreps/choklen
128 phi =
sqrt(1._rfreal - mfrat*mfrat)
131 rho = 0.5_rfreal*headpres*(1._rfreal+phi)/(rgas*headtemp)
132 pres = (1.d0+gamma*phi)*headpres/(1._rfreal+gamma)
133 cv(cv_mixt_dens,:) = rho
134 dv(dv_mixt_pres,:) = pres
135 cv(cv_mixt_zmom,:) = 0._rfreal
138 mach =
sqrt((1._rfreal-phi)/(1._rfreal+gamma*phi))
139 hvinj= minj*rgas*headtemp/headpres
140 write(*,*)cv(cv_mixt_dens,1),dv(dv_mixt_pres,1),choklen,mach
141 write(*,*)mfrat,phi,mach,hvinj
143 DO ijkc = 1, region%grid%nCellsTot
144 yc = cofg(ycoord,ijkc)
146 cv(cv_mixt_xmom,ijkc) = minj/rho*0.5_rfreal*
pi/cpreps* &
148 cv(cv_mixt_ymom,ijkc) = -minj/rho*
sin( 0.5_rfreal*
pi*yc/
delta )*rho
150 vm =
sqrt( cv(cv_mixt_xmom,ijkc)*cv(cv_mixt_xmom,ijkc) + &
151 cv(cv_mixt_ymom,ijkc)*cv(cv_mixt_ymom,ijkc) + &
152 cv(cv_mixt_zmom,ijkc)*cv(cv_mixt_zmom,ijkc))/rho
154 cv(cv_mixt_ener,ijkc) = rho*eo
161 region%periInput%meanPgrad = global%moduleVar(1)
162 write(*,*) global%myProcId,
' cprMeanPgrad ', region%periInput%meanPgrad
real(rfreal) function mixtperf_eo_dgpvm(D, G, P, Vm)
subroutine registerfunction(global, funName, fileName)
subroutine peri_cocprinitsolution(region)
subroutine deregisterfunction(global)
CGAL_BEGIN_NAMESPACE void const NT NT NT NT & denom