OpenFOAM supersonic nozzle simulation
An OpenFOAM v2606 study of choking, supersonic expansion, back-pressure response, shocks, and thrust in a planar converging-diverging nozzle.

Software compatibility
Cases are prepared for the OpenCFD OpenFOAM v2606 distribution. No ANSYS Fluent, COMSOL, STAR-CCM+, or OpenFOAM Foundation v14 files are included.
Project definition
Problem statement
Nozzle Mach number, pressure, temperature, shock position, and thrust change nonlinearly with area ratio and back pressure. Compressible CFD also depends on grid resolution, time advancement, outlet treatment, and numerical dissipation.
Project objectives
- Generate a declared planar converging-diverging nozzle and downstream numerical duct.
- Verify choking and supersonic design expansion on three mesh levels.
- Simulate underexpanded, overexpanded, downstream-duct-shock, and internal-shock regimes.
- Compare exit Mach, pressure, and temperature with one-dimensional ideal-gas theory.
- Calculate mass flow, gross thrust, shock position, stability, and numerical limitations.
Project structure
Project components
Nozzle generator
Writes the smooth area distribution as native structured OpenFOAM blocks with inlet, throat, exit, and duct stations.
Compressible solver
Runs transient inviscid calorically perfect-air cases with rhoCentralFoam and Courant control.
Theory calculator
Calculates area-Mach, isentropic, critical, normal-shock, and ideal thrust reference quantities.
Flow analyser
Extracts streamwise Mach, pressure, temperature, density, mass flow, shock location, stagnation state, and thrust.
Verification
Checks strict meshes, refinement, temporal stability, conservation, area-ratio response, and analytical error.
Methodology
Project workflow
- 01Generate
Python creates one consistent OpenFOAM case from the declared mesh, area ratio, and back pressure.
- 02Check
Every case must pass all OpenFOAM geometry and topology checks.
- 03Solve
rhoCentralFoam advances each compressible case with maximum Courant number 0.1.
- 04Extract
Fields are converted into raw JSON, CSV profiles, summary values, PNG plots, and SVG plots.
- 05Compare
Mach, pressure, temperature, shock behaviour, mass flow, and thrust are compared with theory and across cases.
Demonstration scenario
The design nozzle is solved on three meshes, then run at four back pressures and three exit-area ratios. The student explains choking, expansion, shock movement, exit-state error, conservation, thrust, and why the pressure result remains less accurate than the Mach result.
Engineering
Tools and method
- Tools
- The project uses OpenFOAM v2606, Python 3, Matplotlib for subject analysis, simulation, and results.
- Case format
- Native OpenCFD OpenFOAM v2606 dictionaries, fields, blockMesh geometry, and solver logs.
- Gas model
- Two-dimensional planar, inviscid, calorically perfect air with gamma 1.4 and gas constant 287.05 J/kg K.
- Numerics
- rhoCentralFoam with Kurganov fluxes, van Leer reconstruction, explicit time advancement, and Courant control.
- Analysis
- Python calculates ideal states, field profiles, mesh and stability evidence, seven tests, and 17 repeatable figures.
Testing
Evaluation
Evaluation measures
- All nine meshes pass strict checkMesh checks
- Fine-grid exit Mach 2.19597, only 0.056 percent below ideal theory
- Fine-grid exit pressure 20.54 kPa, 9.35 percent above ideal theory
- Internal shock near x = 0.815 m at 150 kPa back pressure with exit Mach 0.411
- Exit Mach errors below 0.3 percent at area ratios 1.5, 2.0, and 2.5
- Gross thrust from 35.34 N to 147.36 N across the back-pressure study
- Seven automated tests passing
Project boundaries
- Only OpenCFD OpenFOAM v2606 cases are delivered.
- The model is two-dimensional planar, inviscid, nonreacting, and calorically perfect. It is not axisymmetric.
- Boundary layers, wall heat transfer, combustion, real-gas effects, structures, materials, and manufacturing are excluded.
- The downstream duct is a numerical extension for observing shocks.
- Small stagnation-pressure recovery values above one and mass-flow spread are numerical limitations.
- The project is not a rocket-engine or propulsion-system approval.
Included
- 01Programmatic planar converging-diverging nozzle geometry
- 02Nine completed rhoCentralFoam cases with strict mesh checks
- 03Three design meshes with 1,536, 4,480, and 9,600 cells
- 04Underexpanded, overexpanded, downstream-shock, and internal-shock operating cases
- 05Ideal-gas area-Mach, pressure, temperature, and thrust comparisons
- 0617 labelled figures in PNG and SVG with raw JSON and CSV results
- 07Three actual NASA literature images with source and licence records
- 08Complete project files, models, calculations, and analysis material in a private GitHub repository
- 0980-page project documentation in PDF and editable Word formats
- 109-page setup and usage guide
Project record
No information is collected on this page.
- Permanent project ID
- GP-AE-0S9SET7
- Catalogued
- 22 Aug 2026
- Completed
- 23 Aug 2026
- Verified
- 23 Aug 2026
- Demonstration
- Included in repository
Handover
After purchase
- 01Payment is confirmed
The project is marked unavailable and cannot be purchased again.
- 02Repository access is granted
The buyer's submitted GitHub account receives access to the private repository.
- 03The purchase record is delivered
The certification sheet is prepared from the reviewed buyer details and sent privately by email.