Nozzle Design (propulsion/rocket/nozzle-design)
Use when the task is rocket nozzle design from the chamber conditions:
isentropic area ratio, exit Mach number, choked mass flow, exit
velocity, and ideal thrust with the expansion verdict.
Domain quick reference
- The isentropic area-Mach relation links A/A* to the exit Mach
number; the supersonic branch (M > 1) is monotonic.
- A choked throat fixes the mass flow from the chamber pressure and
temperature alone, independent of the downstream pressure.
- Ideal thrust combines the momentum term mdot * ve with the pressure
term (Pe - Pa) * Ae.
- Overexpanded means Pe < Pa (the pressure term subtracts);
underexpanded means Pe > Pa; Pe = Pa is optimum.
- Units: every pressure in Pa (chamber P0, exit static Pe, ambient Pa),
temperature in K, areas in m^2, mass flow in kg/s, velocity in m/s,
thrust in N.
- ECSS space-systems standards frame the rocket propulsion context.
Workflow
- Collect the chamber pressure P0, chamber temperature T0, gamma,
and specific gas constant R.
- Pick the target area ratio and solve the exit Mach number with
exit_mach_from_area_ratio.
- Compute the choked mass flow with mass_flow.
- Compute the exit velocity with exit_velocity.
- Assemble the thrust with ideal_thrust and judge the expansion with
optimum_expansion.
Pitfalls
- Inverting the expansion verdict: overexpanded means Pe < Pa, and the
pressure term (Pe - Pa) * Ae is negative.
- Mixing pressure units (Pa vs MPa) across the chamber, exit, and
ambient inputs.
- Taking the subsonic root of the area-Mach relation instead of the
supersonic branch.
- Letting the exit pressure exceed the chamber pressure.
- Dropping the pressure term when the nozzle is not matched to the
ambient.
Behavior contract (gate 3)
The area ratio, mass flow, exit velocity, thrust, and expansion logic
is exercised by the gate 3 contract test:
scripts/test_nozzle_design_logic.py against
scripts/nozzle_design_logic.py (stdlib unittest, offline). Run:
python3 skills/propulsion/rocket/nozzle-design/scripts/test_nozzle_design_logic.py
Compliance
- Standards referenced, not reproduced: ECSS is a free ESA download
(ecss.nl/standards); isentropic nozzle flow is standard compressible
flow methodology, summary-only per standards-map.yaml.
- compliance: STANDARDS-REF, gated: false.
1---2name: nozzle-design3description: Use when you must design a rocket engine nozzle from the chamber conditions: compute the exit Mach number for a target area ratio, the choked mass flow through the throat, the exit velocity and the exit static pressure, and the ideal thrust with the pressure term. Produces the nozzle area ratio, exit Mach number, mass flow, exit velocity, and thrust, plus the expansion verdict against the ambient pressure, all in consistent SI units (Pa, K, kg/s, m/s, N). Trigger: nozzle design, area ratio, exit mach, mass flow, ideal thrust, expansion ratio, choked throat.4license: Apache-2.05---67# Nozzle Design (propulsion/rocket/nozzle-design)89Use when the task is rocket nozzle design from the chamber conditions:10isentropic area ratio, exit Mach number, choked mass flow, exit11velocity, and ideal thrust with the expansion verdict.1213## Domain quick reference1415- The isentropic area-Mach relation links A/A* to the exit Mach16 number; the supersonic branch (M > 1) is monotonic.17- A choked throat fixes the mass flow from the chamber pressure and18 temperature alone, independent of the downstream pressure.19- Ideal thrust combines the momentum term mdot * ve with the pressure20 term (Pe - Pa) * Ae.21- Overexpanded means Pe < Pa (the pressure term subtracts);22 underexpanded means Pe > Pa; Pe = Pa is optimum.23- Units: every pressure in Pa (chamber P0, exit static Pe, ambient Pa),24 temperature in K, areas in m^2, mass flow in kg/s, velocity in m/s,25 thrust in N.26- ECSS space-systems standards frame the rocket propulsion context.2728## Workflow29301. Collect the chamber pressure P0, chamber temperature T0, gamma,31 and specific gas constant R.322. Pick the target area ratio and solve the exit Mach number with33 exit_mach_from_area_ratio.343. Compute the choked mass flow with mass_flow.354. Compute the exit velocity with exit_velocity.365. Assemble the thrust with ideal_thrust and judge the expansion with37 optimum_expansion.3839## Pitfalls4041- Inverting the expansion verdict: overexpanded means Pe < Pa, and the42 pressure term (Pe - Pa) * Ae is negative.43- Mixing pressure units (Pa vs MPa) across the chamber, exit, and44 ambient inputs.45- Taking the subsonic root of the area-Mach relation instead of the46 supersonic branch.47- Letting the exit pressure exceed the chamber pressure.48- Dropping the pressure term when the nozzle is not matched to the49 ambient.5051## Behavior contract (gate 3)5253The area ratio, mass flow, exit velocity, thrust, and expansion logic54is exercised by the gate 3 contract test:55scripts/test_nozzle_design_logic.py against56scripts/nozzle_design_logic.py (stdlib unittest, offline). Run:57python3 skills/propulsion/rocket/nozzle-design/scripts/test_nozzle_design_logic.py5859## Compliance6061- Standards referenced, not reproduced: ECSS is a free ESA download62 (ecss.nl/standards); isentropic nozzle flow is standard compressible63 flow methodology, summary-only per standards-map.yaml.64- compliance: STANDARDS-REF, gated: false.