Dear all, I am currently doing a project about the light trajectory near Schwarzschild black hole. I wrote down a couple of differential equation and I have created a C++ program hoping to solve the orbit of light. However, the program results turn out to be quite weird. The differential equation needed to be solved: Where r is the radial position and phi is the azimuthal angle, L is the angular momentum of the photon. The first thing I noticed is that sometimes, depending on initial conditions, the results sometimes turns out to be negative in r, even if r is positive, the change in r is so small that it remains in order of 10^-5, and the change in phi is also small. Nevertheless the program always produce diverging results in r. I think I may be misunderstanding the physical picture of the equation. I would like to ask does the equation describing the motion of a photon launching at a arbitrary position? Furthermore, what is the typical value of L in the Geometrized unit system? Furthermore, I know that the impact parameter b is related to L and energy of photon e by b=L/e, is there any ways to simplify the above differential equation so that I could get a differential equation only depends on b? Thank you!