Design a complete satellite mission — from launch insertion to disposal — in your own codebase.
This is the real thing. Over 4–6 weeks you will build, in your OWN git repository, a mission-design toolkit that ties together everything in the course: propagation, orbital elements, maneuvers, targeting, and perturbations. It is graded like professional work — against a rubric, an automated acceptance-test harness, and an AI review of your code and report.
Orbit propagation (analytic + numerical)State ↔ classical elementsManeuver & Δv planningLambert targetingJ₂ + drag perturbation modelingSoftware engineering: tests, structure, docs
Design a mission for an Earth-observation satellite: insert it into a Sun-synchronous orbit, plan the maneuvers to reach its operational orbit, model J₂ + drag over the mission lifetime, schedule station-keeping burns, and end with a compliant disposal. Your tool must produce a full mission report with Δv budget, ground-track coverage, and a lifetime decay analysis.
Milestone schedule
Week 1Core propagation engine + repo setup
- ›Initialize a git repo with a clean package structure, README, and requirements.txt.
- ›Implement a numerical two-body + J₂ propagator with a test suite.
- ›Implement rv ↔ COE conversion with round-trip tests.
Deliverable: Repo with a passing test suite for propagation and coordinate conversion.
Week 2Maneuvers & Sun-synchronous design
- ›Add Hohmann / plane-change / phasing maneuver planners with a Δv accounting module.
- ›Compute the inclination for a Sun-synchronous orbit at your chosen altitude.
- ›Design the insertion → operational-orbit maneuver sequence.
Deliverable: Maneuver module + a documented Δv budget for reaching the operational orbit.
Week 3Targeting, ground tracks & coverage
- ›Add a Lambert targeter and validate it against an independent propagation.
- ›Generate ground tracks and compute revisit / coverage for the operational orbit.
Deliverable: Ground-track + coverage analysis with figures.
Week 4+Lifetime, station-keeping, disposal & report
- ›Model J₂ + drag decay over the mission lifetime; schedule station-keeping burns.
- ›Design a compliant end-of-life disposal (deorbit or graveyard).
- ›Write the final mission report and polish the codebase (docs, tests, CLI/notebook).
Deliverable: Complete mission report + final tagged release of the repository.
Correctness35%
Physics and numerics are right; passes the acceptance-test harness.
Completeness25%
All mission phases delivered: insertion → ops → keeping → disposal.
Code quality20%
Clear structure, tests, documentation, reproducible from the repo.
Analysis & report15%
Δv budget, coverage, and lifetime analysis are sound and well presented.
Going beyond5%
Stretch work: extra perturbations, optimization, interactive visuals.