Fast Fourier transform on hexagonal grids using Birdsong and Rummelt's algorithm
7 Stars
Updated Last
2 Years Ago
Started In
September 2017


This package implements Birdsong and Rummelt's 2016 algorithm for fast Fourier transforms on hexagonal lattices.

The module HexFFT currently exports four functions: hfft2() and ihfft2() which compute the FFT and its inverse, respectively. Alternatively, you can wrap your data in the OffsetHexData type and use the standard fft() and ifft() methods. Note that transforms along individual dimensions (i.e. fft(data, dim)) are not implemented.

The current implementation is ca. 10 times slower than Base.fft() for comparable rectangular grids. However significant optimization should be possible by preallocating and reusing temporary arrays.