Skip to content

Repository files navigation

Rocket

Python package

Tools for rocket vehicle design and analysis.

Installation

Requires a Fortran compiler for RocketCEA (NASA CEA thermochemistry).

# macOS
brew install gcc
# Linux (Debian/Ubuntu)
sudo apt-get install gfortran
# Then install
pip install rocket

Quick Start

fromrocketimportEngineInputs, design_engine, plot_engine_dashboardfromrocket.unitsimportkilonewtons, megapascals# Design from propellant selection (thermochemistry auto-calculated)inputs=EngineInputs.from_propellants(
oxidizer="LOX",
fuel="RP1",
thrust=kilonewtons(100),
chamber_pressure=megapascals(7),
mixture_ratio=2.7,
)
# Compute performance and geometryperformance, geometry=design_engine(inputs)
print(f"Isp (sea level): {performance.isp}")
print(f"Isp (vacuum): {performance.isp_vac}")
print(f"Throat diameter: {geometry.throat_diameter}")
# Visualizeplot_engine_dashboard(inputs, performance, geometry)

Features

  • Type-safe: Runtime type checking with beartype
  • Units handling: Built-in Quantity class prevents unit errors
  • Fast: Numba-accelerated isentropic flow calculations
  • NASA CEA: Accurate thermochemistry via RocketCEA
  • Visualization: Engine cross-sections, performance curves, dashboards
  • Nozzle contours: Rao bell and conical nozzle generation with CSV export

Modules

  • rocket.engine - Engine design and performance analysis
  • rocket.nozzle - Nozzle contour generation
  • rocket.units - Physical quantity handling with units
  • rocket.plotting - Visualization tools
  • rocket.propellants - NASA CEA thermochemistry integration
  • rocket.tanks - Propellant and tank sizing (coming soon)

References

  1. GATech: Bell Nozzles
  2. Design of Liquid Propellant Rocket Engines
  3. Liquid Propellant Rocket Combustion Instability, NASA SP-194

About

openrocketengine is an opensource program used to iterate liquid engine design

Topics

Resources

Stars

34 stars

Watchers

6 watching

Forks

Releases

Packages

Used by

Contributors

Languages