Compressible Flow β CAE Glossary
What is Compressible Flow
What is the difference between compressible flow and ordinary fluid analysis? Is it something completely different from water flow?
The biggest difference is that "density is not constant." Liquids like water are incompressible even under pressure, so density Ο can be treated as a constant. This is incompressible flow. But when a gas like air flows at high speed, density, pressure, and temperature vary significantly. At that point, you cannot reproduce the physics without treating density as an unknown. This is compressible flow.
Definition and Mach Number
At what speed do we need to account for compressibility? Is there some standard criterion?
The criterion is Mach number $\mathrm{Ma} = U / a$. Here $U$ is flow speed and $a$ is sound speed. As a rule of thumb, Ma < 0.3 means density variation is less than 5%, so incompressible treatment is adequate. When Ma > 0.3, compressibility effects become significant. Flow is typically classified by Mach number.
How exactly is flow classified by Mach number?
Roughly, it divides into four regimes.
- Subsonic: Ma < 1 β Commercial aircraft cruising (Ma β 0.8) falls in this range
- Transonic: Ma β 0.8β1.2 β Troublesome region where subsonic and supersonic coexist locally
- Supersonic: 1.2 < Ma < 5 β Flight regime of fighter jets and missiles
- Hypersonic: Ma > 5 β Atmospheric reentry and hypersonic vehicles
For example, a commercial aircraft wing at cruise Ma=0.85 locally reaches Ma>1 on the upper surface. A shock wave forms there.
Shock and Expansion Waves
I hear the term "shock wave" often, but what exactly is this phenomenon? What happens in the flow?
When supersonic flow hits an obstacle or the channel narrows and decelerates rapidly, pressure, temperature, and density jump discontinuously across an extremely thin surface. This is a shock wave. The thickness of a shock wave is only a few mean free pathsβmicrometer order. In continuum mechanics, it is treated as essentially a discontinuity surface.
What changes when flow passes through a shock wave? Is energy conserved?
Across a shock wave, mass, momentum, and energy are conserved (Rankine-Hugoniot relations). But entropy increases, so stagnation pressure (total pressure) decreases irreversibly. In other words, energy "quality" degrades. This is why minimizing stagnation pressure loss from shock waves (wave drag) is a major design challenge in aircraft.
Conversely, when supersonic flow expands in a fan-like manner and accelerates, this is called an expansion wave. This is an isentropic process with no stagnation pressure loss. Prandtl-Meyer expansion is a classic example.
Rankine-Hugoniot relations for normal shock waves:
$$\frac{p_2}{p_1} = \frac{2\gamma \mathrm{Ma}_1^2 - (\gamma - 1)}{\gamma + 1}$$ $$\frac{\rho_2}{\rho_1} = \frac{(\gamma + 1)\mathrm{Ma}_1^2}{(\gamma - 1)\mathrm{Ma}_1^2 + 2}$$ $$\frac{T_2}{T_1} = \frac{p_2}{p_1} \cdot \frac{\rho_1}{\rho_2}$$Here $\gamma$ is the specific heat ratio (for air, $\gamma = 1.4$), and subscripts 1 and 2 denote upstream and downstream of the shock, respectively.
Density-Based and Pressure-Based Solvers
I hear that when solving compressible flow in CFD, there are "density-based solvers" and "pressure-based solvers." What is the difference?
The main difference is "which variables are chosen as primary unknowns for the equation system."
- Density-based: Conservation variables $(\rho, \rho u, \rho v, \rho w, \rho E)$ are advanced directly in time. The Euler or Navier-Stokes equations are discretized in conservation form, making shock waves sharp and well-captured. Methods like Roe's scheme and HLLC schemeβRiemann solversβare typical.
- Pressure-based: Uses SIMPLE-type algorithms to solve a pressure correction equation. Originally developed for incompressible flow, but modern solvers incorporate density update equations to handle compressible flow. Often more stable than density-based in low Mach number compressible flow.
In practice, how do you choose between them? For example, in ANSYS Fluent?
In Fluent, you select "Density-Based" or "Pressure-Based" from Solver Type. The practical guideline is:
- Ma > 1 with dominant shock waves β Density-based is stable and high-accuracy
- Low-speed compressible (Ma < 0.3) or incompressible mixing β Pressure-based is efficient
- Transonic (Ma β 0.8β1.2) with mixed shock and low-speed regions β Either works, but density-based tends to resolve shocks better
In OpenFOAM, rhoCentralFoam is density-based, while rhoSimpleFoam and rhoPimpleFoam are pressure-based compressible solvers.
Aerospace CFD in Practice
I imagine aerospace has a lot of compressible flow analysis. What are the key points to watch in practice?
Three critical points stand out when handling compressible flow in aerospace CFD.
1. Mesh Resolution: To capture the position and structure of shock waves correctly, mesh must be sufficiently refined near shocks. Either use adaptive mesh refinement (AMR) or pre-emptively place dense mesh where shock formation is expected.
2. Numerical Scheme Selection: Central difference schemes easily exhibit non-physical oscillations (Gibbs phenomenon) near shocks. TVD (Total Variation Diminishing) or WENO schemes suppress oscillations. But excessive numerical dissipation blurs shocksβbalancing this is difficult.
3. Boundary Conditions: At supersonic inlet, specify all five variables (Ο, u, v, w, p). At supersonic outlet, information propagates only upstream, so do not specify outlet conditions (extrapolate). Mishandling this causes non-physical reflected waves and computation failure.
Does hypersonic add even more complexity? Like atmospheric reentry cases?
In hypersonic (Ma > 5), shock-downstream temperatures reach thousands of Kelvin, violating the assumption of constant specific heat ratio $\gamma$. Molecular vibrational modes excite, molecules dissociate (Nβ β 2N, Oβ β 2O), and ionization occurs. Instead of the perfect gas equation $p = \rho R T$, chemical equilibrium or non-equilibrium thermochemical models are needed. NASA's US3D and DLR's TAU code are leading solvers in this area.
Governing Equations
Compressible Navier-Stokes equations (conservation form):
$$\frac{\partial \rho}{\partial t} + \nabla \cdot (\rho \mathbf{u}) = 0$$ $$\frac{\partial (\rho \mathbf{u})}{\partial t} + \nabla \cdot (\rho \mathbf{u} \otimes \mathbf{u} + p\mathbf{I}) = \nabla \cdot \boldsymbol{\tau}$$ $$\frac{\partial (\rho E)}{\partial t} + \nabla \cdot [(\rho E + p)\mathbf{u}] = \nabla \cdot (\boldsymbol{\tau} \cdot \mathbf{u}) + \nabla \cdot (k \nabla T)$$Here $E = e + |\mathbf{u}|^2/2$ is total energy per unit mass, $\boldsymbol{\tau}$ is the viscous stress tensor, and $k$ is thermal conductivity. Closure requires the ideal gas equation $p = \rho R T$. The decisive difference from incompressible flow is that density $\rho$ is an unknown and the energy equation is strongly coupled to the velocity field.
Definition of Mach number:
$$\mathrm{Ma} = \frac{U}{a} = \frac{U}{\sqrt{\gamma R T}}$$Sound speed $a$ depends on medium temperature and specific heat ratio. At standard atmosphere (T = 288.15 K), air sound speed is approximately 340 m/s.
Related Terms
- Mach Number β Ratio of flow speed to sound speed. The most important dimensionless number quantifying compressibility
- Reynolds Number β Ratio of inertial to viscous forces. Important for turbulence transition even in compressible flow
- Roe Scheme β A canonical approximate Riemann solver widely used in density-based solvers
- Riemann Problem β Initial value problem for conservation laws with discontinuous initial data. Shock waves, contact discontinuities, and expansion waves appear in solutions
- Euler Equations β Fundamental equations for inviscid compressible flow
Precise understanding of CAE terminology is the foundation of team communication. β Project NovaSolver supports learning by practitioners.
Share challenges you face with compressible flow simulations
Project NovaSolver aims to solve the problems CAE engineers face dailyβsetup complexity, computational cost, result interpretation. Your practical experience drives better tool development.
Contact (Coming Soon)Related Topics
detail
error