26 integer icase,ichan_num,icrit1,icrit2,ider,iflag
88 q_crit = dsqrt(kappa/r)*
89 & (1+0.5d0*(kappa-1))**(-0.5d0*(kappa+1)/(kappa-1))
90 pspt_crit = (2/(kappa+1)) ** (kappa/(kappa-1))
92 q0 = xflow1*dsqrt(tt1)/pt1/a1
93 q1 = xflow2*dsqrt(tt1)/pt1/a2
97 write(*,*)
'*WARNING in Wye:' 98 write(*,*)
'Critical conditions at 1' 100 q2 = xflow2*dsqrt(tt1)/pt2/a2
101 if(q2.ge.q_crit)
then 104 write(*,*)
'*WARNING in Wye:' 105 write(*,*)
'Critical conditions at 2' 111 call ts_calc(xflow1,tt1,pt1,kappa,r,a1,ts0,icase)
112 pspt0 = (ts0/tt1)**(kappa/(kappa-1))
113 call wpi(w1, pspt0, q0,
114 & dsqrt(tt1),kappa,r)
117 call ts_calc(xflow2,tt1,pt1,kappa,r,a2,ts1,icase)
118 pspt1 = (ts1/tt1)**(kappa/(kappa-1))
119 call wpi(w2, pspt1, q1,
120 & dsqrt(tt1),kappa,r)
127 if(ichan_num.eq.1)
then 129 zeta=0.4d0*(1-w2w1)**2
133 elseif(ichan_num.eq.2)
then 137 if(alpha.le.60.or.hq.le.2.d0/3.d0)
then 138 zeta=0.95d0*((w2w1-2d0*dcos(alpha*pi/180))
142 z2d390=0.95d0*((w2w1-2d0*dcos(90.d0*pi/180))
145 z1p090=0.95*(0.34d0+w2w1**2)
147 z90=z2d390+(3*hq-2.d0)*(z1p090-z2d390)
149 z60=0.95d0*((w2w1-2d0*dcos(60.d0*pi/180))
152 zeta=z60+(alpha/30.d0-2.d0)*(z90-z60)
161 f = pt2 - pt1*pspt1**zeta
163 f = xflow2*dsqrt(tt1)/pt1/a2-q_crit
166 f = xflow2*dsqrt(tt1)/pt2/a2-q_crit
173 call machpi(m1,pspt0,kappa,r)
174 call ts_calc(xflow2,tt2,pt2,kappa,r,a2,ts2,icase)
176 pspt2 = (ts2/tt2)**(kappa/(kappa-1))
177 call machpi(m2,pspt2,kappa,r)
179 write(1,80)
'Inlet: Tt1= ',tt1,
180 &
', pt1= ',pt1,
', M1= ',m1
182 write(1,77)
'mass flow = ',xflow2,
', kappa = ',kappa,
185 write(1,80)
'Outlet: Tt2= ',tt2,
186 &
', pt2= ',pt2,
', M2= ',m2
188 80
format(3x,a,f10.6,a,f10.2,a,f10.6)
189 77
format(3x,a,f10.6,a,f10.2,a,f10.6)
subroutine wpi(W, PI, Q, SQTT, kappa, RGAS)
Definition: wpi.f:23
subroutine ts_calc(xflow, Tt, Pt, kappa, r, A, Ts, icase)
Definition: ts_calc.f:20
subroutine machpi(MACH, PI, kappa, rgas)
Definition: machpi.f:23
real *8 function calc_residual_wye(pt1, Tt1, xflow1, xflow2, pt2, Tt2, ichan_num, A1, A2, A_s, dh1, dh2, alpha, zeta_fac, kappa, R, ider, iflag)
Definition: calc_residual_wye.f:23