AERO-320 · Lesson 6 of 12 · 24 min

Quasi-one-dimensional nozzle flow

Two very different nozzles occupy the high-speed group this month. One is the small converging-diverging nozzle of a calibration rig that the National Research Council is lending to the project, used to check pressure transducers before the tunnel campaign. The other is the exhaust nozzle of the Swift 900's turbofan engines, a simple converging duct whose performance at cruise matters directly to fuel burn. Both are described by the same theory: quasi-one-dimensional flow, in which the flow properties are assumed uniform across each cross section and change only along the axis as the area changes. The theory is simple, but it predicts choking, the regimes of nozzle operation and the position of a shock inside a nozzle, and it is the basis of rocket and jet engine performance calculations.

The quasi-one-dimensional assumption

In a real nozzle the flow is three-dimensional: it is faster near the axis than near the walls, and the streamlines curve as the walls do. If the area changes slowly along the nozzle, though, the flow at each station is nearly uniform, and averaging across the section gives the quasi-one-dimensional model. Mass, momentum and energy are conserved between two stations, with the area \(A(x)\) entering the equations explicitly. For isentropic flow the results are the relations of Lesson 2: \(\rho V A\) is constant, the stagnation conditions are constant, and the Mach number at each station follows from the area ratio \(A/A^*\).

The model does well wherever the walls are not steeply curved. It predicts the mass flow of a well-designed nozzle to within about 1 percent and its thrust to within a few percent. It cannot predict the details of flow separation, the boundary layer or the curvature of the sonic line near a sharp throat, and those details are what separate a good nozzle from a mediocre one. For the overall behaviour, though, it is exactly the right tool.

Mass flow and choking

Combine the mass flow \(\dot m = \rho V A\) with the isentropic relations, and the mass flow per unit area becomes a function of Mach number, stagnation pressure and stagnation temperature. It has a maximum at Mach 1. A nozzle can therefore pass at most a certain mass flow for given supply conditions, and it does so when its throat is sonic. Reducing the downstream pressure further cannot increase the flow, because once the throat is sonic, no information about the downstream pressure can travel upstream through it. The nozzle is then choked.

\[\dot m_{\text{max}} = \frac{p_0 A^*}{\sqrt{T_0}}\sqrt{\frac{\gamma}{R}}\Big(\frac{2}{\gamma + 1}\Big)^{(\gamma + 1)/(2(\gamma - 1))}\]

For air the constant collects to about \(0.0404\ \text{kg K}^{1/2}/(\text{N s})\), so the choked mass flow is \(0.0404\,p_0A^*/\sqrt{T_0}\) in SI units. The calibration rig has a throat of 50 cm², a supply of 600 kPa and a temperature of 290 K, and passes 7.12 kg/s. Choking makes mass flow very easy to measure: a sonic nozzle with a known throat area, and known upstream pressure and temperature, is one of the most accurate flowmeters available, and such critical-flow venturis are used to calibrate other meters and to set the bleed flows in the tunnel.

Top: the profile of a converging-diverging nozzle with exit area twice the throat area. Bottom: static pressure divided by stagnation pressure along the nozzle axis for several back pressures. Curve a dips slightly and recovers, all subsonic. Curve b reaches Mach 1 at the throat and recovers to 0.937 at the exit. Curves c and d go supersonic after the throat, jump up at a normal shock in the diverging section and then rise to the exit. Curve e jumps at the exit plane to 0.513. The lowest curve f falls smoothly all the way to 0.094 at the exit, the design condition.
Pressure along a converging-diverging nozzle with A_e/A* = 2 for falling back pressure. Once the throat chokes, lowering the back pressure further moves a normal shock downstream and out of the nozzle.

Operating regimes of a converging-diverging nozzle

Take the calibration nozzle, whose exit area is twice its throat area, and lower the back pressure \(p_b\) gradually from the supply pressure. While \(p_b\) is close to \(p_0\), the flow is subsonic everywhere: it accelerates to the throat and decelerates again, like a venturi. As \(p_b\) falls, the throat Mach number rises until, at \(p_b/p_0 = 0.937\), the throat just becomes sonic and the exit Mach number is 0.306, the subsonic solution of the area-Mach relation for \(A/A^* = 2\).

Below that pressure the nozzle is choked. The flow goes supersonic downstream of the throat, but it cannot continue isentropically to the exit, because the isentropic supersonic exit pressure is far lower than the back pressure. Instead a normal shock forms in the diverging section, the flow behind it becomes subsonic, and the subsonic diffuser downstream of the shock raises the pressure to match \(p_b\). As \(p_b\) falls further the shock moves downstream, and at \(p_b/p_0 = 0.513\) it sits exactly in the exit plane. Below that, the shock leaves the nozzle and becomes a pattern of oblique shocks in the jet: the nozzle is overexpanded. At \(p_b/p_0 = 0.094\) the exit pressure equals the back pressure, the exit Mach number is 2.197, and the nozzle is perfectly expanded, its design condition. Below that, it is underexpanded and the jet expands outside the nozzle through the Prandtl-Meyer fans of Lesson 5.

Finding the shock position

When a shock stands inside the diverging section, its position is set by the back pressure. Upstream of the shock the flow is the isentropic supersonic solution. Across the shock the stagnation pressure falls by the normal-shock ratio, and so the sonic reference area of the downstream flow increases in the inverse proportion, because \(p_0A^*\) is the same for both flows at the same mass flow. The subsonic flow from the shock to the exit is then isentropic with the new \(A^*\). For a guessed shock position the program computes the exit pressure this would give, and it adjusts the guess by bisection until the exit pressure equals the measured back pressure. With \(p_b/p_0 = 0.70\), the shock stands where the area ratio is 1.51 and the Mach number just ahead of it is 1.86.

\[p_{01}A_1^* = p_{02}A_2^*\quad\Rightarrow\quad \frac{A_e}{A_2^*} = \frac{A_e}{A_1^*}\,\frac{p_{02}}{p_{01}}\]
A converging-diverging nozzle with exit area twice the throat area: the back pressures that bound the regimes, the shock position for a given back pressure found by bisection, the choked mass flow, and whether the engine's converging core nozzle is choked at cruise.
# Quasi-one-dimensional nozzle flow: choking, the operating regimes and the shock position
import math
G, R = 1.4, 287.05
def A_Astar(M): return (1 / M) * ((2 / (G + 1)) * (1 + (G - 1) / 2 * M * M)) ** ((G + 1) / (2 * (G - 1)))
def p_p0(M): return (1 + (G - 1) / 2 * M * M) ** (-G / (G - 1))
def mach(ratio, sup):
    lo, hi = (1.0, 10.0) if sup else (1e-6, 1.0)
    for _ in range(100):
        mid = (lo + hi) / 2
        big = A_Astar(mid) > ratio
        if (big and not sup) or (not big and sup): lo = mid
        else: hi = mid
    return (lo + hi) / 2
def p0_normal(M):
    p21 = 1 + 2 * G / (G + 1) * (M**2 - 1); r21 = (G + 1) * M**2 / ((G - 1) * M**2 + 2)
    return r21 ** (G / (G - 1)) * (1 / p21) ** (1 / (G - 1))
def mdot_choked(p0, T0, At):
    return At * p0 / math.sqrt(T0) * math.sqrt(G / R) * (2 / (G + 1)) ** ((G + 1) / (2 * (G - 1)))
Ae = 2.0                                   # exit-to-throat area ratio of the test nozzle
Msub, Msup = mach(Ae, False), mach(Ae, True)
p1, p3 = p_p0(Msub), p_p0(Msup)            # back pressure ratios that bound the regimes
pe_shock = p3 * (1 + 2 * G / (G + 1) * (Msup**2 - 1))   # normal shock standing at the exit
print(f"A_e/A* = {Ae}: subsonic exit M {Msub:.4f} (pb/p0 = {p1:.4f}), design supersonic exit M {Msup:.4f} (pb/p0 = {p3:.4f})")
print(f"normal shock at the exit when pb/p0 = {pe_shock:.4f}")
def exit_pressure(As):                     # shock at area ratio As: back pressure that puts it there
    M1 = mach(As, True); pr = p0_normal(M1)           # total pressure falls across the shock
    Me = mach(Ae * pr, False)                          # new A* is larger by 1/pr
    return p_p0(Me) * pr
target = 0.70                              # measured back pressure ratio pb/p0
lo, hi = 1.0001, Ae
for _ in range(80):
    mid = (lo + hi) / 2
    if exit_pressure(mid) > target: lo = mid
    else: hi = mid
print(f"pb/p0 = {target}: shock stands where A/A* = {mid:.3f} (upstream M {mach(mid, True):.3f})")
# mass flow through a choked throat
p0, T0, At = 600e3, 290.0, 0.0050          # Pa, K, m2
print(f"\nchoked mass flow: {mdot_choked(p0, T0, At):.3f} kg/s for p0 = {p0 / 1e3:.0f} kPa, T0 = {T0:.0f} K, A* = {At * 1e4:.0f} cm2")
# convergent core nozzle of the engine at cruise: choked if p0/pb exceeds the critical ratio
crit = (1 + (G - 1) / 2) ** (G / (G - 1))
p0n, pb = 46.0e3, 17.87e3
print(f"core nozzle p0/pb = {p0n / pb:.2f} against critical {crit:.3f}: {'choked' if p0n / pb > crit else 'not choked'}")
pe = p0n / crit
print(f"exit pressure {pe / 1e3:.2f} kPa, above ambient by {(pe - pb) / 1e3:.2f} kPa (gives pressure thrust)")
Output
A_e/A* = 2.0: subsonic exit M 0.3059 (pb/p0 = 0.9372), design supersonic exit M 2.1972 (pb/p0 = 0.0939)
normal shock at the exit when pb/p0 = 0.5134
pb/p0 = 0.7: shock stands where A/A* = 1.510 (upstream M 1.863)

choked mass flow: 7.120 kg/s for p0 = 600 kPa, T0 = 290 K, A* = 50 cm2
core nozzle p0/pb = 2.57 against critical 1.893: choked
exit pressure 24.30 kPa, above ambient by 6.43 kPa (gives pressure thrust)

Converging nozzles and jet engines

Most jet engines on subsonic aircraft, including the turbofans of the Swift 900, use simple converging nozzles. With no diverging section, the exit is the throat, and the exit Mach number can never exceed 1. If the nozzle pressure ratio \(p_0/p_b\) is below the critical value of 1.893, the exit is subsonic and its pressure equals ambient. Above it, the exit is choked, the exit pressure is fixed at \(0.528p_0\), and the remaining expansion happens outside the nozzle. The thrust then includes a pressure term, \((p_e - p_b)A_e\), in addition to the momentum term.

\[F = \dot m V_e + (p_e - p_b)A_e - \dot m V_\infty\]

At cruise the Swift 900's core nozzle sees a stagnation pressure of about 46 kPa against an ambient of 17.9 kPa, a ratio of 2.57. The nozzle is choked, and its exit pressure is 24.3 kPa, 6.4 kPa above ambient. The pressure thrust recovers part of the energy that a converging-diverging nozzle would convert into velocity, but not all of it. For pressure ratios below about 3, the loss from using a converging nozzle is a percent or two of thrust, small enough that the simplicity, low weight and short length of the converging nozzle win. Supersonic aircraft, with nozzle pressure ratios of 10 or more, need variable converging-diverging nozzles. In the core of a real engine the gas is hot and \(\gamma\) is about 1.33 rather than 1.4; the program keeps 1.4 for simplicity, which shifts the critical ratio from 1.85 to 1.89.

Rocket nozzles and the area ratio trade

A rocket engine, with chamber pressures of several megapascals, is the extreme case of a converging-diverging nozzle. Its thrust coefficient depends on the area ratio and on the ambient pressure. A large area ratio expands the gas to a low pressure and gives high thrust in a vacuum, but at sea level it would be grossly overexpanded, and the flow might separate inside the nozzle. Launch vehicle first stages use moderate area ratios and accept underexpansion at altitude; upper stages, which operate in near-vacuum, use very large ratios. The quasi-one-dimensional relations give the first estimate of all of these trade-offs, and the same ideas govern the small nozzles of satellite thrusters.

Worked problem

Choked flow through a bleed orifice

A sonic bleed orifice in the inlet model has an effective area of 2.0 cm² and draws air from a region where the stagnation pressure is 150 kPa and the stagnation temperature 290 K. Find the bleed mass flow.

Show solution
  1. \(\dot m = 0.0404\times 150{,}000\times 2.0\times 10^{-4}/\sqrt{290}\).
  2. \(= 0.0404\times 30/17.03 = 0.0712\ \text{kg/s}\).

Answer: About 71 grams per second. Because the orifice is choked, the bleed flow does not depend on the pressure in the bleed plenum, which makes it easy to set and measure.

Worked problem

Exit conditions at the design point

The calibration nozzle (A_e/A* = 2) is supplied at 600 kPa and 290 K and runs at its design condition. Find the exit Mach number, pressure, temperature and velocity.

Show solution
  1. Supersonic solution: \(M_e = 2.197\) and \(p_e/p_0 = 0.0939\), so \(p_e = 56.3\ \text{kPa}\).
  2. \(T_e = 290/(1 + 0.2\times 2.197^2) = 290/1.965 = 147.6\ \text{K}\).
  3. \(V_e = 2.197\sqrt{1.4\times 287\times 147.6} = 2.197\times 243.5 = 535\ \text{m/s}\).

Answer: The jet leaves at 535 m/s and 147.6 K, cold enough that moisture in the supply air would condense. That is why supersonic tunnels and rigs dry their air.

Common mistakes

  • MistakeExpecting lower back pressure to always increase the mass flow.

    InsteadOnce the throat is sonic the nozzle is choked and the mass flow is fixed by the supply conditions and throat area.

  • MistakeAssuming a converging nozzle can produce supersonic exit flow.

    InsteadThe exit Mach number of a converging nozzle cannot exceed 1.

  • MistakeUsing the original A* downstream of a shock in the nozzle.

    InsteadThe shock reduces p₀, so the downstream A* is larger by p₀₁/p₀₂.

  • MistakeIgnoring the pressure thrust of a choked nozzle.

    InsteadInclude (p_e − p_b)A_e when the exit pressure exceeds ambient.

Summary and key terms

  • Quasi-one-dimensional theory treats the flow as uniform across each section of a slowly varying duct.
  • The mass flow per unit area is greatest at Mach 1, so a nozzle chokes when its throat becomes sonic and further lowering the back pressure cannot raise the flow.
  • A converging-diverging nozzle passes through subsonic, choked-with-internal-shock, overexpanded, perfectly expanded and underexpanded regimes as the back pressure falls.
  • A shock inside the nozzle sits where the exit pressure computed with the reduced stagnation pressure matches the back pressure.
  • Converging nozzles choke above a pressure ratio of 1.89 and then produce pressure thrust.
Quasi-one-dimensional flow
Duct flow treated as uniform across each section, varying only along the axis.
Choked flow
Flow in which the throat is sonic, so the mass flow cannot increase further.
Critical pressure ratio
The ratio p₀/p_b of about 1.89 at which a converging nozzle chokes.
Overexpanded nozzle
A nozzle whose exit pressure is below the back pressure.
Underexpanded nozzle
A nozzle whose exit pressure is above the back pressure.
Pressure thrust
The thrust term (p_e − p_b)A_e from an exit pressure above ambient.
Critical-flow venturi
A choked nozzle used to measure mass flow accurately.

Practice problems

Work each problem on paper first, then reveal the answer to check.

  1. Find the choked mass flow of air through a 10 cm² throat with p₀ = 200 kPa and T₀ = 300 K.

    Show answer

    0.0404 × 200,000 × 0.001/17.32 = 0.467 kg/s.

  2. For A_e/A* = 2, what back pressure ratio puts the normal shock at the exit?

    Show answer

    0.513.

  3. Using the program, where does the shock stand for p_b/p₀ = 0.80?

    Show answer

    Closer to the throat, at an area ratio of about 1.3.

  4. Is a converging nozzle with p₀/p_b = 1.6 choked?

    Show answer

    No; 1.6 is below the critical ratio of 1.89.

  5. Why must supersonic tunnels dry their air?

    Show answer

    The static temperature falls far below the dew point in the test section, so moisture would condense into fog.

  6. Explain why the downstream A* increases across a shock.

    Show answer

    Mass flow is proportional to p₀A*/√T₀; T₀ is unchanged and p₀ falls, so A* must rise.

Lesson quiz · 5 questions

Score 60% or more to complete this lesson.

Take the quiz