This repository implements a thesis-grade numerical pipeline for CR3BP halo orbits, invariant manifolds, and re-entry mapping.
-
Create a virtual environment and install dependencies:
python3 -m venv .venvsource .venv/bin/activatepip install numpy matplotlib plotly
-
Run validation (Phase 1):
PYTHONPATH=. python3 scripts/phase1_validate.py
-
Solve a 3D halo orbit (Phase 2):
PYTHONPATH=. python3 scripts/phase2_halo_orbit.py
-
Generate manifolds (Phase 3):
PYTHONPATH=. python3 scripts/phase3_manifolds.py
-
Compute Poincaré section (Phase 4):
UTC_EPOCH="2026-02-07T00:00:00Z" PYTHONPATH=. python3 scripts/phase4_poincare.py
-
Plot 3D orbits + manifolds:
PYTHONPATH=. python3 scripts/plot_3d_orbits.py
-
Plot re-entry globe:
PYTHONPATH=. python3 scripts/plot_reentry_globe.py
-
Plot halo family:
PYTHONPATH=. python3 scripts/plot_halo_family.py
Run these in order:
PYTHONPATH=. python3 scripts/phase1_validate.pyPYTHONPATH=. python3 scripts/phase2_halo_orbit.pyPYTHONPATH=. python3 scripts/phase3_manifolds.pyUTC_EPOCH="2026-02-07T00:00:00Z" PYTHONPATH=. python3 scripts/phase4_poincare.pyPYTHONPATH=. python3 scripts/plot_3d_orbits.pyPYTHONPATH=. python3 scripts/plot_reentry_globe.pyPYTHONPATH=. python3 scripts/plot_halo_family.py
Outputs are written to outputs/.
cr3bp/: core library (EOMs, integrator, shooting, manifolds, continuation)scripts/: reproducible runs for each phasenotebooks/: exploratory and results notebooksphase_*.md: phase summariesreport/: LaTeX thesis scaffoldnotebooks/results.ipynb: polished results notebook
report/main.texis a LaTeX scaffold including the Error Budget section.- Build with
pdflatex main.texfromreport/if LaTeX is installed.
- Build with