A hands-on educational repository for learning aerospace engineering, orbital mechanics, and rocket science through executable Python simulations. Built from first principles with real physics.
Project site (notebooks + docs): svonstrauss.github.io/rocket-basics
Run dashboards in your browser (Binder): Dashboard Hub
Perfect for: Students, developers curious about aerospace, or anyone who's ever wondered "how does a rocket actually get to orbit?"
| Concept | Where It's Taught | Real-World Application |
|---|---|---|
| Orbital Mechanics | Module 1 & 2 | How satellites stay in orbit |
| Rocket Equation | Module 3 | Why rockets need so much fuel |
| Delta-V Budgets | Module 2 & 3 | Planning missions to Mars |
| G-Forces & Safety | Module 4 | Keeping astronauts safe |
| Numerical Integration | Module 1 | Simulating trajectories accurately |
| Perturbation Theory | Module 2 | Why satellite orbits drift |
| Module | Focus | Key Concepts |
|---|---|---|
| Module 1 | Foundations | Newton's Laws, RK4 Integration, Kepler's Equations |
| Module 2 | Orbital Mechanics | J2 Perturbations, Hohmann Transfers, Lambert's Problem |
| Module 3 | Propulsion & Systems | Tsiolkovsky Equation, Mass Ratios, Staging |
| Module 4 | Human Factors | G-Force Limits, Vibration Analysis, Space Policy |
| Module 5 | Astrophysics & ML | Telemetry, Anomaly Detection, Forecasting |
| Module 6 | Capstone Mission | Mission planning, trade studies, portfolio deliverables |
Learn: How rockets fight gravity and drag to reach orbit
cd src/Module_01_Foundations/Projects/Rocket_Ascent_Simulator
pip install -r requirements.txt
python simulation.pyPhysics Concepts:
- Newton's 2nd Law: F = ma for multi-body forces
- Atmospheric drag: D = Β½ΟvΒ²CdA
- Runge-Kutta 4 integration for accurate trajectories
- Thrust-to-weight ratio and gravity turn maneuvers
Learn: The mathematics of orbital paths (circles, ellipses, parabolas, hyperbolas)
cd src/Module_01_Foundations/Projects/Conic_Orbit_Visualizer
pip install -r requirements.txt
python visualizer.pyPhysics Concepts:
- Vis-viva equation: vΒ² = ΞΌ(2/r - 1/a)
- Orbital period: T = 2Οβ(aΒ³/ΞΌ)
- Eccentricity and orbit shape
- Real missions: ISS, GPS, Voyager, Artemis
Learn: How GPS, Starlink, and other constellations work
cd src/Module_02_Orbital_Mechanics/Projects/Starlink_Propagator
pip install -r requirements.txt
python propagator.pyPhysics Concepts:
- J2 perturbation from Earth's oblate shape
- Nodal regression: why orbits precess
- Walker Delta constellation patterns
- Ground track coverage analysis
Real Systems Compared: GPS (USA), GLONASS (Russia), Galileo (EU), BeiDou (China), Starlink, OneWeb
Learn: How to plan a mission to Mars
cd src/Module_02_Orbital_Mechanics/Projects/Starship_Trajectory_Planner
pip install -r requirements.txt
python mission_planner.py # Animated Hohmann transfer
python porkchop/plotter.py # Launch window analysisPhysics Concepts:
- Hohmann transfer orbits
- Synodic period and phase angles
- Delta-V budgets for interplanetary missions
- Porkchop plots for launch window optimization
Learn: Why rocket design involves difficult trade-offs
cd src/Module_03_Propulsion/Projects/Starship_Trade_Simulator
pip install -r requirements.txt
python trade_simulator.pyPhysics Concepts:
- Tsiolkovsky rocket equation: Ξv = IspΒ·gβΒ·ln(mβ/m_f)
- Mass ratio and staging
- Reusability vs. payload capacity trade-offs
Vehicles Compared: Starship (SpaceX), SLS (NASA), Ariane 6 (ESA), Long March 5 (CNSA), H3 (JAXA)
Learn: How engineers keep astronauts safe during launch and reentry
cd src/Module_04_Human_Factors/Projects/Crew_Safety_Simulator
pip install -r requirements.txt
python simulator.pyPhysics Concepts:
- Damped harmonic oscillators (crew seat modeling)
- Human G-force tolerance limits (NASA standards)
- Vibration frequency analysis
- Comparative vehicle profiles
Vehicles Analyzed: Crew Dragon, Soyuz, Apollo, Space Shuttle, New Shepard, Shenzhou
Learn: How rocket propellants change mission capability (Isp + density + Ξv)
cd src/Module_03_Propulsion/Projects/Propellant_Explorer
pip install -r requirements.txt
streamlit run app.pyRun in browser (Binder): Launch Propellant Explorer
Learn: How real spacecraft-style data analysis works (time series, missing data, anomaly detection, forecasting)
cd src/Module_05_Astrophysics_ML/Projects/Telemetry_Lab
pip install -r requirements.txt
streamlit run app.pyRun in browser (Binder): Launch Telemetry Lab
- Python 3.10+ with NumPy, Matplotlib, SciPy
- Streamlit + Plotly for interactive dashboards
- Quarto for the GitHub Pages website
- C++/OpenGL for advanced 3D visualization (optional)
rocket-basics/
βββ src/
β βββ Module_01_Foundations/ # Newton's laws, numerical methods
β βββ Module_02_Orbital_Mechanics/ # Kepler, perturbations, transfers
β βββ Module_03_Propulsion/ # Rocket equation, staging
β βββ Module_04_Human_Factors/ # Safety, policy
β βββ Module_05_Astrophysics_ML/ # Telemetry + anomaly detection + forecasting
β βββ Module_06_Capstone/ # Capstone planning notebooks
β βββ Dashboard_Hub/ # Streamlit hub linking dashboards + simulations
β βββ shared/ # OpenGL Earth viewer (advanced)
βββ README.md
# Clone the repo
git clone https://github.com/svonstrauss/rocket-basics.git
cd rocket-basics
# Run your first simulation
cd src/Module_01_Foundations/Projects/Conic_Orbit_Visualizer
pip install -r requirements.txt
python visualizer.pyEach project includes:
- README.md - Overview and usage instructions
- EXPLANATION.md - Detailed physics and math derivations
- Commented code - Learn by reading the implementation
Found a bug? Want to add a new simulation? PRs are welcome!
MIT License - Use freely for learning and teaching.
"The rocket worked perfectly, except for landing on the wrong planet." β Wernher von Braun
Built with physics, math, and a passion for making space accessible to everyone.