Orbital Trajectory Simulator

High-Fidelity Dynamics Modeling for Mission Planning

Project Overview

**Key Technologies:** Python (NumPy, SciPy), C++ (OOP), Numerical Methods, Astrodynamics Principles

The Orbital Trajectory Simulator is a powerful, custom-built tool designed to propagate the state vector of a spacecraft over time, accounting for complex gravitational and non-gravitational disturbances. This project served as a comprehensive application of classical mechanics and computational methods to solve a real-world astrodynamics challenge.

Technical Deep Dive

The core of the simulator uses the second-order differential equation describing the motion of a spacecraft: $$ \ddot{\mathbf{r}} = - \frac{\mu}{r^3} \mathbf{r} + \mathbf{a}_{\text{dist}} $$ where $\mu$ is the standard gravitational parameter, $\mathbf{r}$ is the position vector, and $\mathbf{a}_{\text{dist}}$ includes all perturbing accelerations.

Core Implementation Details:

  • **Numerical Integration:** Implemented a variable time-step **Dormand-Prince (Runge-Kutta 8(5,3))** algorithm in C++ for exceptional accuracy and efficiency in propagation.
  • **Perturbations Model:** Included models for J2 (Earth oblateness), atmospheric drag using the Jacchia-Roberts density model, and solar radiation pressure.
  • **Propulsion:** Developed modules for high-thrust impulsive maneuvers (Hohmann transfers) and low-thrust continuous electric propulsion modeling.
  • **Visualization:** Used Matplotlib (Python) for generating 3D visualizations of the orbital path and ground track.

Project Results & Verification

The simulator was validated against known Two-Line Element (TLE) data and NASA's SPICE kernels. Over a 7-day propagation period for a Geostationary Transfer Orbit (GTO), the simulation maintained an orbital position error below **$1.5 \text{ km}$**, demonstrating high operational fidelity suitable for preliminary mission design.