Universe Simulator
A Python 3D solar-system simulation with N-body gravity and Velocity-Verlet integration.
The short version
Universe Simulator sits where two of my interests meet: programming and physics. Instead of animating planets on fixed circles, it calculates gravitational interaction between bodies and updates the system step by step.
Inside the project
Selected screens and details.
A closer look at the product in its current form.
How it works
Every orbit is the result of the previous step.
The simulation computes N-body gravitational forces and advances position and velocity with Velocity-Verlet integration. It includes the Sun, planets, the Moon, satellites, a star field, orbit trails, zoom, follow-body controls, and adjustable simulation speed.
Limitations
Accuracy and legibility cannot share the same scale.
Scale is the immediate challenge: accurate astronomical distances and accurate body sizes do not make a readable desktop visualization. The simulator therefore makes visual compromises, and the time step trades accuracy for speed. Those choices became part of understanding the physics rather than a cosmetic afterthought.
What I learned
Numerical error becomes part of the motion.
A tiny error repeated thousands of times becomes an orbit that drifts. This project made integration methods, units, and initial conditions feel concrete—and showed me why complex systems can be deterministic without feeling simple.