Skip to content
mrbell edited this page Nov 22, 2012 · 5 revisions

GFFT - Generalized Fast Fourier Transformations for Python

GFFT is a Python package for performing Fast Fourier Transformations even in the case where the data is not defined on a regularly spaced grid. This is commonly the case in applications such as radio interferometry and medical imaging. GFFT does this using a procedure known as gridding.

GFFT is in beta at the moment. The code is a big mess and the interface isn't the most intuitive thing in the world, but it works (so far as we've tested it). Use it and let us know what you think or if you have any problems. Hopefully it's useful for you. Please note that the interface and large parts of the code will probably change (for the better) in the near future.

GFFT is licensed under the GPLv3. Please visit http://www.gnu.org/licenses/gpl.html for more information.

Dependencies

GFFT is a Python function, so Python will obviously be required. The software has been tested using Python 2.7, but will probably work fine with any Python 2.X version. At the moment we do not support Python 3, although a cross- compatible version is planned. Other dependent packages include:

Installation

  1. Install all dependencies.

  2. Enter the GFFT directory that you have unpacked or downloaded from a repository and type

    python setup.py install

You may need to change the setup.py file to point to your GSL library location. Just change the include_gsl_dir and lib_gsl_dir variables at the top of the file. This command will require super user priveledges (and therefore should be run using e.g. sudo). If you do not have such preveledges, instead you can run

python setup.py install --user

and the package will be installed in your local python package directory (e.g. on Linux this is ~/.local/lib/python2.X/site-packages).

  1. That's it! You're done. Leave the directory containing the source code, then enter your favorite python environment and type "import gfft" to test. If error messages pop up then something has gone wrong. Otherwise, you should be OK.
Clone this wiki locally