
Relativistic Gravitational Lensing
This is the documentation for the Relativistic Gravitational Lensing Simulator (which was programmed
as an individual computational science project during my physics major at the University of Zurich). Its goal is
to simulate gravitational lensing not in a semiclassical way, but to involve
full general relativity.
For this reason, the Hamiltonian equations of motion for photons in a
Schwarzschild metric around a black hole are established and are then
integrated with a RungeKutta integrator.
The implementation has to cope with several problems, such as numerical
integration at the Schwarzschild radius singularity, interpolation of photon
coordinates to equal time coordinates,
multiprocessing, etc. Additional features such as an anaglyphic,
perspectiveprojected plot viewable with coloured 3D glasses, visualisation
of redshift, image storage, photon statistics
and benchmarking are also realized. See below for a documentation.
The program
Binary: gravlens2.jar
Source code: source.tar.gz
Documents
PDF of the documentation
Animations
Note: The yellow circle around the black hole stands for the Schwarzschild radius while the green circle stands for the photon
sphere.
Lensing at a small black hole ( M = 10000, 50000 Photons )
Lensing at a critically large black hole ( M = 214000, 50000 Photons )
Pulsed source lensing at a small black hole ( M = 20000, 5000 photons, 5 pulses )
Pulsed, moving source lensing at a large black hole Pulsed, moving source lensing at a large black hole ( M = 560000, 5000 photons, 20 pulses, speed = 150000 )
3D animation with equally distributed photons ( M = 200000, 2000 Photons ) Bad quality for unknown reasons, probably it's better to run it in the program.
3D animation with equally distributed photons ( M = 200000, 6000 Photons, 70 Pulses ) Bad quality for unknown reasons, probably it's better to run it in the program.

