# Solid Rocket Motor

> Use when the task is solid rocket motor design, grain sizing, or ballistics estimation. Size and analyze solid propellant rocket motors from first ballistics: compute the Vieille burn rate from the pressure exponent, solve the chamber pressure equilibrium between propellant burn rate and choked throat discharge, evaluate grain geometry with web thickness and burn area, and derive mass flow, thrust, and total impulse from the characteristic velocity c*. Uses typical AP/HTPB composite propellant parameters and judges the burn neutrality, regressivity, or progressivity of the grain. Produce the motor ballistics summary with the equilibrium chamber pressure, burn time, thrust, and impulse. Trigger: solid rocket motor, grain geometry, burn rate, chamber pressure, total impulse, characteristic velocity, web thickness.

- Skill: `ashfordeou/solid-rocket-motor` (Agent Skill, multi-file: 3 files)
- Install (CLI): `npx skillmds@latest add ashfordeou/solid-rocket-motor`
- Raw SKILL.md: https://api.skillmd.com/api/skills/ashfordeou/solid-rocket-motor/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Productivity
- License: Apache-2.0
- Author: ashfordeOU (https://skillmd.com/u/ashfordeou)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/ashfordeou/solid-rocket-motor

---


# Solid Rocket Motor (propulsion/rocket/solid-rocket-motor)

Use when the task is solid propellant rocket motor design and ballistics:
burn-rate law, chamber pressure equilibrium, grain geometry and web
thickness, mass flow through the throat, thrust, and total impulse.
This leaf is the ballistic core of the rocket pack; it pairs with
propulsion/rocket/nozzle-design (exit flow and thrust terms downstream
of the chamber) and with propulsion/rocket/combustion-chamber-design,
propulsion/rocket/propellant-selection, and propulsion/rocket/rocket-sizing.

## Domain quick reference

- Burn-rate law (Vieille / St. Robert): the regression rate of the
  burning surface is r = a * p^n, with pressure exponent n typically
  0.2 to 0.5 for composite propellants and coefficient a set so that
  rates of 2 to 8 mm/s result at operating pressure.
- Chamber pressure equilibrium: the pressure settles where the mass
  generated by the burning surface, rho_p * A_b * r, equals the choked
  mass flow through the throat, p_c * A_t / c*. Solving gives
  p_c = (rho_p * a * A_b * c* / A_t)^(1/(1-n)). The exponent is
  singular at n = 1: no finite equilibrium exists in that limiting case.
- Grain geometry: the web is the thickness of propellant consumed
  normal to the burning surface; burn time is web / r. For a tubular
  grain the inner-bore burn area is pi * D_inner * L, ignoring end
  faces.
- Burn progression: a burn area that grows as the web burns is
  progressive, one that holds is neutral, one that shrinks is
  regressive. Progressive grains raise pressure and thrust over the
  burn; regressive grains decay; neutral grains hold a plateau.
- Mass flow: m_dot = p_c * A_t / c* (choked throat), equal at
  equilibrium to rho_p * A_b * r.
- Thrust: F = Isp * g0 * m_dot, with g0 = 9.80665 m/s^2.
- Total impulse: I_t = F * t_b, or equivalently Isp * g0 * m_prop.
- Characteristic velocity: c* = sqrt(R * T_c / (gamma *
  (2/(gamma+1))^((gamma+1)/(gamma-1)))); typical AP/HTPB values near
  1550 to 1600 m/s.
- Typical composite propellant (AP/HTPB): ammonium perchlorate oxidizer
  in a hydroxyl-terminated polybutadiene binder, density about 1700 to
  1850 kg/m^3, sea-level specific impulse about 240 to 260 s.
- Units are SI throughout: Pa, m, m^2, m/s, kg/s, K, N, N*s.
- ECSS space-systems standards frame the rocket propulsion context;
  the ballistics relations above are standard engineering methodology,
  summary-only.

## Workflow

1. Collect the propellant data: density rho_p, burn-rate coefficient a
   and exponent n, and the chamber temperature, gamma, and gas constant
   R for the characteristic velocity.
2. Compute the characteristic velocity with characteristic_velocity.
3. Choose the grain geometry and throat area; get the burn area with
   tubular_grain_burn_area (or the equivalent for the chosen geometry)
   and the web thickness.
4. Solve the equilibrium chamber pressure with
   equilibrium_chamber_pressure.
5. Get the operating burn rate with burn_rate at that pressure.
6. Compute the mass flow with mass_flow (or burn_mass_flow as the
   burn-side cross-check) and the thrust with thrust_from_isp.
7. Estimate the burn time with web_burn_time and the total impulse
   with total_impulse, cross-checked by
   total_impulse_from_propellant.
8. Judge the grain with burn_area_verdict from the initial and final
   burn areas (progressive, neutral, or regressive).
9. Confirm the deterministic checks with the contract test
   scripts/test_solid_rocket_motor.py.

## Worked example

A tubular AP/HTPB grain with rho_p = 1800 kg/m^3, a = 2.0e-5 m/s per
Pa^n, n = 0.3, inner-bore burn area A_b = 0.14 m^2, throat area
A_t = 1.0e-4 m^2, and c* = 1600 m/s:

- Equilibrium pressure: p_c = (1800 * 2.0e-5 * 0.14 * 1600 / 1.0e-4)
  ^(1/0.7), about 10.2 MPa.
- Burn rate at equilibrium: r = a * p_c^n, about 2.5 mm/s.
- Mass flow: p_c * A_t / c*, about 0.64 kg/s (the burn side
  rho_p * A_b * r matches within rounding).
- Thrust at Isp = 250 s: F = 250 * 9.80665 * 0.64, about 1.57 kN.
- Burn time for a 20 mm web: t_b = 0.02 / 0.0025, about 7.9 s.
- Total impulse: F * t_b, about 12.4 kN*s, matching
  Isp * g0 * m_prop with the propellant mass rho_p * A_b * web = 5.04 kg.

A grain whose inner bore grows as it burns gives a growing burn area
and is progressive; a sliver or rod geometry that loses surface is
regressive; a star or wagon-wheel geometry cut for constant surface is
neutral.

## Related leaves

- propulsion/rocket/nozzle-design: exit Mach, choked mass flow, exit
  velocity, and thrust with the pressure term downstream of the chamber.
- propulsion/rocket/combustion-chamber-design: chamber geometry and
  structural sizing around the ballistic solution.
- propulsion/rocket/propellant-selection: propellant families and
  their burn-rate and impulse properties.
- propulsion/rocket/rocket-sizing: motor selection and sizing inside
  the full launch vehicle mass and performance loop.

## Pitfalls

- Assuming a neutral grain stays neutral as the web burns: the burn
  area verdict must be re-checked for the geometry - a tubular bore
  that grows with web is progressive, a sliver or rod that loses
  surface is regressive, and only a star or wagon-wheel cut for
  constant surface is neutral.
- Setting the pressure exponent near unity: the equilibrium solution
  p_c = (rho_p * a * A_b * c* / A_t)^(1/(1-n)) is singular at n = 1 -
  no finite chamber pressure exists in that limiting case, and the
  module rejects it rather than returning a huge pressure.
- Balancing the chamber on the throat side alone: equilibrium requires
  the burn-side mass flow rho_p * A_b * r to equal the choked throat
  flow p_c * A_t / c*; the worked example cross-checks both sides
  (about 0.64 kg/s each), so a mismatch between them means an input
  error, not a motor quirk.
- Mixing burn-rate coefficient units: with r = a * p^n the coefficient
  a is expressed per Pa^n (2.0e-5 m/s per Pa^n in the example) - a
  coefficient tabulated in other pressure units shifts the whole
  pressure equilibrium.
- Feeding zero burn area or zero throat area: both raise rejection
  because the equilibrium has no physical content - a zero throat with
  a burning grain would pressurize without bound.
- Reporting thrust without the impulse check: total_impulse from F * t_b
  must match Isp * g0 * m_prop (about 12.4 kN*s both ways in the
  example); the propellant-mass route catches thrust or burn-time
  slips.

## Behavior contract (gate 3)

Run the deterministic contract test (stdlib unittest, offline):

    python3 scripts/test_solid_rocket_motor.py

The test covers the burn-rate law and exponent thresholds, the
characteristic velocity band, the chamber pressure equilibrium
identity (burn-side mass flow equals choked throat mass flow), the
n = 1 limiting case, zero burn area and zero throat area rejection,
mass flow, thrust, total impulse from thrust and from propellant mass,
tubular grain burn area, web burn time, and the burn progression
verdict.

## Compliance

- Standards referenced, not reproduced: ECSS is a free ESA download
  (ecss.nl/standards); solid propellant ballistics is standard
  engineering methodology, summary-only per standards-map.yaml.
- compliance: STANDARDS-REF, gated: false.

