# Simulation: ray of light near black hole

## Main Question or Discussion Point

Caveat 1: I'm not sure if this message should be posted here, or in the Programming forum.
Caveat 2: I have a BS in Physics, obtained more than a decade ago, but never actually worked in the field. So I'm a bit rusty. OK, more than a bit.

I am writing a program to simulate the trajectory of photons near a black hole - static, no spin, no charge. Mass of black hole is M.
Think of it as a raytracer - camera is at a finite distance from black hole, outside the event horizon. Photons are shooting from the camera (opposite from reality - it's the raytracer metaphor), initially shooting at the minimum distance R from the center of the black hole (assuming they move in a straight line), and I need to find out the trajectory of the photons infinitely far past the black hole. Essentially, all I need is the deviation angle, since I'm dealing with the photons at an infinite distance after passing near the black hole.

So I guess I need the deviation angle at infinite as a function of M (black hole mass) and R (minimum distance between photon and center of black hole if the photon would move in a straight line ignoring gravity).

If there are several ways to calculate this, I need a formula that's simple and cheap from a computational perspective.

Related Special and General Relativity News on Phys.org
Jorrie
Gold Member
If there are several ways to calculate this, I need a formula that's simple and cheap from a computational perspective.
The low field approximation for the deflection angle of light is simple enough:

$$\Delta \phi \cong \frac{4M}{R}$$

with c=G=1 and R the radial distance of closest approach from the center of mass M. It may be good enough for R > ~1000 M, depending on the accuracy you want.

AFAIK, there is no such simple solution for light passing closer to a black hole. There may be good approximations, but I think if you want to be accurate, you'll have to numerically integrate the relativistic orbital equation for light:

$$\frac{d^2 u}{d\theta^2} = 3Mu^2-u$$

where u = 1/r and $\theta$ is the polar angle of the orbit. This is not "cheap from a computational perspective".

pervect
Staff Emeritus
If you want the full treatment of trajectories around a black hole, try http://www.fourmilab.ch/gravitation/orbits/.

(You may have to take some limits to get light trajectories, though, the website is oriented towards particle trajectories).

The formula that Jorrie gives is just an approximation - it's unclear how exact you want your solution to be.

You can find a complete discussion in "Gravitation" by MTW, including the derivation of the approximation Jorrie gives.

Other GR textbooks may also have this information (but I know for sure that you can find it in MTW).

You will find that the equations of motion result from two conserved quanttiies, an "energy at infinity", and an "angular momentum". The existence of these two conserved quantities can be derived from the symmetries of the problem and Noether's theorem (if you're familiar with it).

Well, OK, I can renounce the requirement for quick computation. The program doesn't have to run in real time after all.
But I do want some precision even for photons passing pretty close to the event horizon. There's a background image, and a black hole between it and the camera. I want to calculate the distortions to the image introduced by the black hole. This requires to shoot some rays of light pretty close to the event horizon - and some other rays pretty far, depending on where the pixels are.
I'm surprised there's no reasonably simple solution for photons passing near the event horizon of a static black hole.

Whatever formulas I end up using, they must provide some way to detect the situation when the photon is captured by the black hole - the formula must do something weird, such as division by zero or whatever, to allow the program to detect a lost photon.

By the way, are the trajectories still symmetrical? I mean, does it matter whether the photon shoots from the camera towards the object, or from the object towards the camera? In normal situations, the trajectory is the same, but I'm not sure what happens near a black hole. I've a feeling that a rotating black hole may break the assumption of symmetry (due to frame dragging), but what about a static one?

Jorrie
Gold Member
Whatever formulas I end up using, they must provide some way to detect the situation when the photon is captured by the black hole - the formula must do something weird, such as division by zero or whatever, to allow the program to detect a lost photon.
There is a rather simple formula from MTW that tells you the angle $\delta$ that the trajectory of an infalling photon must have from the radial in order to just avoid capture by the hole:

$$\sin \delta > \frac{ 3\sqrt{3}M\sqrt{1-2M/r}}{r}$$

where r is the Schwarzschild radial coordinate of your camera ('shooting' the photon).

By the way, are the trajectories still symmetrical?
If you mean between incoming or outgoing rays (to/from your camera), then yes, they are symmetrical for a Schwarzschild black hole.

Last edited: