Inspiration

Black holes are the most extreme predictions of Einstein’s General Relativity. Their core feature, the singularity, marks the point where classical physics no longer works and quantum gravity is needed. I was inspired to explore whether computational models, coded in Python, could simulate the geometry of spacetime around a black hole and show how close we can get to the singularity before the theory breaks down.

What it does

The project simulates the paths (geodesics) of photons and particles around black holes described by the Schwarzschild and Kerr metrics. It visualizes effects like the bending of light, the photon sphere, and the formation of a black hole shadow. While the singularity itself cannot be modeled, the project demonstrates the limits of our tools as we move toward it.

How I want to build it

I will use Python 3 with scientific libraries:

NumPy for numerical calculations,

SciPy for solving differential equations,

Matplotlib for plotting trajectories and shadows,

SymPy for symbolic work with the Schwarzschild and Kerr metrics.

The development will be done in Jupyter Notebooks, tracked with GitHub, and sometimes run in Google Colab for extra computing power.

Challenges I ran into

The singularity at 𝑟=0 r=0 cannot be simulated because GR itself breaks down there.

Near the photon sphere (𝑟=3𝑀), photon paths are extremely sensitive to small changes, which made the numerical solvers hard to stabilize.

Extending from Schwarzschild to Kerr spacetime added complexity, since spin introduces new constants of motion.

Accomplishments that I’m proud of writing a working geodesic solver for Schwarzschild spacetime [theoritacly].

Producing visualizations of photon orbits and the black hole shadow.

Beginning the extension of the framework to Kerr black holes.

Showing how abstract GR equations can be turned into working code and visualizations.

What I learned

How to translate the equations of General Relativity into numerical simulations.

The physical meaning of horizons, photon spheres, and black hole shadows.

The trade-off between numerical accuracy, stability, and computation time.

That simulations not only confirm theory but also show where it stops being valid.

What’s next for Can Python GR Models Approximate Black Hole Singularities?

Completing the Kerr solver to handle rotating black holes.

Adding ray tracing through an accretion disk to generate realistic images.

Linking the Python framework with community tools like the Einstein Toolkit.

Exploring whether small quantum corrections could be added to extend the models beyond GR.

Built With

Share this project:

Updates