This applet is inspired by problem 2 of the Hundred-digit challenge. Basically, it tracks the path of a photon in a room of circular/cylindrical mirrors. The red lines are the path of the beam and the blue circles the intersection points. Try starting with a small beam to better see what's going on.

Note that this is not necessarily a solution to that problem as it does all calculations to only 64 bits of accuracy and the problem is (intentionally) very sensitive to initial conditions. It is, however, a fun visualization.

Move the sliders to change the scale (left), time/lenght (bottom) and cylinder size (right) and drag on the surface of the applet itself to change the angle of the laser.


The code is at ReflectionLattice.java.