WIP: Refactored LiveFT educational tool

So the travel and time around the SAS2024 conference allowed me finally to work on some software that was in dire need of attention. One of these software pieces was a tool that I’ve been using for years to educate people on what Fourier Transforms do, and how they let you easily see how real-space shapes and lattices scatter. It has been gaining following of people who use it for their educational lectures as well. Some people also like it to get a bit of an intuitive feel for how FTs work.

Fig 0: The LiveFT interface, with the laptop camera image on the left hand side, and the intensity of the 2D Fourier Transform on the right. The Fourier transform shows the diffraction spots multiplied with the oscillations of the form factor of the individual “atoms” in the image.

After a little refactoring, this code is now updated and in much better shape. Everything works again in Python 3.12, and (by leveraging PyTorch), it now has a framerate of 30 FPS on my M1 MacBook. it’s a far cry from the 2-4 FPS I was getting long ago.

While the current version needs to be launched using a Python environment, we’ll hopefully soon have a compiled version again for you, to make it even easier to launch. There will be a short publication coming out on this to advertise the software a bit further, and I will be recording a new demo video of it soon so you can see how it can be used in a lecture. The new repository can be found here, and, as always, contributions are very welcome.