Epicycle: Engineering Spaceflight Software

Scientific computing and software technology have advanced dramatically. Epicycle reimagines what is possible when a system is built from the ground up using modern software principles and technologies. It combines expressive, high-level interfaces like MATLAB and Python with the performance of compiled languages like C and FORTRAN, while treating differentiability and AI as first-class capabilities within a true scientific computing environment.

Epicycle is architected to span the full range of spaceflight disciplines, from modeling and simulation to parameter optimization, large-scale shooting and collocation methods, and evolving toward navigation. The result is a unified, extensible framework designed to support complex mission analysis and enable new levels of capability across the entire flight dynamics lifecycle.

Reimagining What is Possible
Architecture and Feature Overview

Epicycle is currently released with a core architecture that integrates fundamental astrodynamics models, numerical methods, and solver infrastructure into a unified framework. The system is built with a layered, modular design that maintains loose coupling between components, allowing users to work at the full application level or leverage individual capabilities independently. This architecture provides a stable foundation for mission analysis today, while enabling systematic expansion toward higher-fidelity modeling, advanced optimization, and operational navigation.

The ecosystem is organized into specialized packages spanning core abstractions, time and state representations, coordinate systems, physical models, maneuvers, propagation, and solver infrastructure. An integration layer provides a consistent interface across these components, allowing users to compose mission workflows without rebuilding underlying infrastructure. This structure supports both rapid prototyping and scalable system development, while maintaining clarity and maintainability across complex analyses.

At the framework level, Epicycle provides a flexible foundation for optimal control and estimation. It supports multiple transcription methods, including Sims–Flanagan, Legendre–Gauss–Lobatto, and Hermite–Simpson, with analytic partial derivatives to enable efficient large-scale optimization. The architecture is designed to extend naturally into navigation, supporting both traditional estimation techniques and the use of nonlinear programming solvers to solve estimation problems within the same unified framework.

Example Applications

Geo-Transfer

Transfer orbit solved with parameter optimization.

Hohmann Transfer

The classic transfer solved with parameter optimization

Mars Transfer

Low Thrust Transfer Solved with Sims-Flannagan.

Goddard Rocket Problem

Rocket Launch Solved with Legendre Gauss Lobatto

Venus Transfer

Venus transfer with multiple gravity assists. Optimized with multiple shooting (analytic partials) and monotonic basin hopping.

Classic Orbit Raising

Classic orbit raising solved using hybrid transcriptions. Legendre Guass Radau, and Hermite Simpson (4th order Separated).

What is an Epicycle?

Humankind has been studying planetary motion for millennia. An epicycle is a geometric theory developed by Ptolemy to explain why planets appear to reverse direction and perform small loops in their celestial paths. While this model represented a significant advancement over earlier theories, it was ultimately incorrect—and it would be nearly 1500 years before Kepler developed a more accurate framework for understanding orbital mechanics.

We've come remarkably far in our understanding, yet fundamental questions remain. Either our theories of relativity, quantum mechanics, or both may be incomplete—reminding us that scientific discovery is an ongoing journey.

The Epicycle software is a tribute to the brilliant minds who came before us, celebrating how far we've advanced while embracing the excitement of continuing to push the boundaries of knowledge and make new discoveries.

Video Overview