Skip to content

openrocketengine is an opensource program used to iterate liquid engine design

License

Notifications You must be signed in to change notification settings

cmflannery/rocket

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

164 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

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

from rocket import EngineInputs, design_engine, plot_engine_dashboard
from rocket.units import kilonewtons, 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 geometry
performance, 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}")

# Visualize
plot_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

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages