installation.rst 1.41 KB
Newer Older
Martin Reinecke's avatar
Martin Reinecke committed
1 2 3 4
Installation
============


Martin Reinecke's avatar
Martin Reinecke committed
5
In the following, we assume a Debian-based Linux distribution. For other
Martin Reinecke's avatar
Martin Reinecke committed
6 7
distributions, the "apt" lines will need slight changes.

Philipp Arras's avatar
Philipp Arras committed
8
NIFTy5 and its mandatory dependencies can be installed via::
Martin Reinecke's avatar
Martin Reinecke committed
9

Martin Reinecke's avatar
fixes  
Martin Reinecke committed
10
    sudo apt-get install git python3 python3-pip python3-dev
Martin Reinecke's avatar
Martin Reinecke committed
11
    pip3 install --user git+https://gitlab.mpcdf.mpg.de/ift/NIFTy.git@NIFTy_5
Martin Reinecke's avatar
Martin Reinecke committed
12

Martin Reinecke's avatar
fixes  
Martin Reinecke committed
13 14 15 16
Plotting support is added via::

    pip3 install --user matplotlib

17 18 19 20
Since Jan. 2019 we use Numpy's FFT implementation in order to minimize
dependencies. However, on some problems like FFTs of non-prime length arrays,
the library FFTW performs a lot better. If you use NIFTy for large problems
involving FFTs, you may wish to use the FFTW support. It is added via::
Martin Reinecke's avatar
fixes  
Martin Reinecke committed
21 22 23 24

    sudo apt-get install libfftw3-dev
    pip3 install --user pyfftw

25
To actually use FFTW in your NIFTy calculations, you need to call::
Martin Reinecke's avatar
fixes  
Martin Reinecke committed
26 27 28 29 30

    nifty5.fft.enable_fftw()

at the beginning of your code.

Martin Reinecke's avatar
Martin Reinecke committed
31 32 33 34 35
(Note: If you encounter problems related to `pyFFTW`, make sure that you are
using a pip-installed `pyFFTW` package. Unfortunately, some distributions are
shipping an incorrectly configured `pyFFTW` package, which does not cooperate
with the installed `FFTW3` libraries.)

Martin Reinecke's avatar
Martin Reinecke committed
36
Support for spherical harmonic transforms is added via::
Martin Reinecke's avatar
Martin Reinecke committed
37

Martin Reinecke's avatar
Martin Reinecke committed
38
    pip3 install --user git+https://gitlab.mpcdf.mpg.de/ift/pyHealpix.git
Martin Reinecke's avatar
Martin Reinecke committed
39 40 41 42

MPI support is added via::

    sudo apt-get install openmpi-bin libopenmpi-dev
Martin Reinecke's avatar
Martin Reinecke committed
43
    pip3 install --user mpi4py