# Why is compressible flow near the choke point so efficient?

Imagine a steady state, one-dimensional, compressible flow in a horizontal pipe of constant cross sectional area. This flow can be isothermal, adiabatic (Fanno), or diabatic (Rayleigh). As an example, the relevant macroscopic energy balance for Fanno flow is: $$\Delta h=-\Delta (KE)$$
In other words, Fanno flow converts enthalpy into kinetic energy. Below are Fanno lines for a real gas (steam) for different flow rates at the same pipe ID and inlet conditions.

The lines clearly indicate the "efficiency" with which enthalpy is converted to kinetic energy. At low velocity (left upper portion of lines), almost no enthalpy is converted while the entropy generation is large (the line is nearly horizontal). Near Mach 1 (the rightmost maximum entropy point for each curve) the enthalpy conversion is high and entropy generation is nearly zero (the line is nearly vertical). This happens whether you are originally subsonic (the upper branch) or supersonic (the lower branch). Another way of saying no entropy generation occurs is that the viscous losses (friction) are zero. This would imply that the molecules no longer impart (as much?) force upon each other near the choke point. This seems absurd.

In isothermal flow, you also find that as you near the choke point (interestingly, below Mach 1!), the flow approaches frictionless.

As I understand it, these examples are physically realizable flow regimes (if obviously very short in length scale). Why is compressible flow so efficient near the choke point? Is something at the molecular scale really going on or is it simply a poor mathematical model at these velocities?

UPDATE: Obviously, in the supersonic regime (lower branch), the reverse process takes place, i.e. kinetic energy is converted into enthalpy. Still, my question holds since this conversion is nearly perfect as you approach Mach 1.

-

My first impulse is that this is an effect of the slowing down of pressure transmission in the direction of motion. Pressure waves travel at the speed of sound, so that the back propagating pressure profile will move arbitrarily slowly near mach one, and this might be making the process close to perfectly adiabatic. – Ron Maimon Mar 28 '12 at 7:53
@RonMaimon but if that is part of the answer then why does the same flattening of dS/dH occur for supersonic flow decelerating to Mach 1? – kleingordon Mar 29 '12 at 4:07
In either cases, the pressure waves running backwards/forwards are asymptoting to zero velocity because the flow is the same as the speed of sound. This might mean that the process becomes more perfectly adiabatic at this point, because slow. I am not sure. This is just an impulse, I didn't sit down and think about it. – Ron Maimon Mar 29 '12 at 4:54
I still don't have a full answer, but something to keep in mind is that the flow never becomes "frictionless" - even near the choke point the fluid is still experiencing the Fanning friction with the wall of the pipe - the solutions you plot assume that the Fanning friction coefficient is constant for the whole flow. So, perhaps a way to refine the question is to ask why the frictional heating doesn't raise the entropy near the choke point. I do think Ron's observation is ultimately responsible, although an elaboration would be nice. – kleingordon Mar 29 '12 at 8:06
@kleingordon I agree that the flow always experiences friction since you can only asymptotically approach isentropic flow.  I am interested in why the relative effect of friction decreases as velocities approach Mach 1 from either side.  Also, the Fanno flow model doesn't have to assume any particular friction factor nor that it's constant across the flow.  These curves can be developed strictly from the mass and energy balance w/o reference to the momentum balance (4 equations in 4 unknowns).  You only need the momentum balance when you are interested in the length traversed by the flow. – Jason Waldrop Mar 29 '12 at 14:09
show 1 more comment

## 1 Answer

Instead of thinking about the efficiency of the acceleration, think about the flow itself; the flow is in its maximum entropy state at the throat. Any additional dissipative force would shift the choking location, but it would still occur at Mach 1.

-

I'm glad you posted an answer to keep the activity alive on this one. He can chime in to correct me if necessary, but my feeling is that @JasonWaldrop is looking for intuition for why the maximum entropy state occurs at Mach 1 (for the adiabatic case), from a microscopic point of view. – kleingordon May 4 '12 at 9:17
Okay, so why is Mach 1 the maximum entropy state. I think it's that the thermal boundary layer is fully developed at the throat in adiabatic flow; that is, while there is still momentum transfer, there is no heat transfer (thermal equilibrium == maximum entropy). – Ghillie Dhu May 7 '12 at 16:18
To clarify slightly: I am interested in why the conversion of enthalpy into kinetic energy becomes more efficient (my definition of efficiency as: less relative entropy production per unit production of kinetic energy) as you approach the choke point (Mach 1 for Fanno flow).  Maybe another way of saying it that reinforces @kleingordon post is "What is occurring at the microscopic level in terms of reducing production of disorder when the flow is near the choke point?" – Jason Waldrop May 7 '12 at 16:49
Just thinking out loud (sts): At the microscopic level, entropy is defined by Boltzmann's equation $S = k * \ln{\Omega}$. Boltzmann's constant ($k$) is, well, constant; for $S$ to increase, $\Omega$ must increase. I've only worked with microstates for stationary gas, so I don't know offhand why the number of microstates consistent with the macrostate is maximum at Mach 1. – Ghillie Dhu May 9 '12 at 16:03
{"extraction_info": {"found_math": true, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 4, "mathjax_display_tex": 1, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0}, "config": {"markdown_headings": true, "markdown_code": true, "boilerplate_config": {"ratio_threshold": 0.18, "absolute_threshold": 10, "end_threshold": 15, "enable": true}, "remove_buttons": true, "remove_image_figures": true, "remove_link_clusters": true, "table_config": {"min_rows": 2, "min_cols": 3, "format": "plain"}, "remove_chinese": true, "remove_edit_buttons": true, "extract_latex": true}, "english_confidence": 0.9376446604728699, "perplexity_flag": "middle"}