Efficient and easy Fast Fourier Transform (FFT) for Python.
Project description
This package provides C++ classes and their Python wrapper classes written in Cython useful to perform Fast Fourier Transform (FFT) with different libraries, in particular
pfft and p3dfft are specialized in computing FFT efficiently on several cores of big clusters. The data is split in pencils and can be distributed on several processes.
Fluidfft provides classes to use in a transparent way all these libraries with an unified API. These classes are not limited to just performing Fourier transforms. They are also an elegant solution to efficiently perform operations on data in real and spectral spaces (gradient, divergence, rotational, sum over wavenumbers, computation of spectra, etc.) and easily deal with the data distribution (gather the data on one process, scatter the data to many processes) without having to know the internal organization of every FFT library.
Fluidfft hides the internal complication of (distributed) FFT libraries and allows the user to find (by benchmarking) and to choose the most efficient solution for a particular case. Fluidfft is therefore a very useful tool to write HPC applications using FFT, as for example pseudo-spectral simulation codes. In particular, fluidfft is used in the Computational Fluid Dynamics (CFD) framework fluidsim.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file fluidfft-0.2.5.tar.gz
.
File metadata
- Download URL: fluidfft-0.2.5.tar.gz
- Upload date:
- Size: 105.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | bc5c78f3f015d48fdf0e35c43e3a699848ca6ec7e2a7b3dff2f8a3b9a944b676 |
|
MD5 | bf1ad39ca5dfef7fc389f0925c9c06dd |
|
BLAKE2b-256 | 3e237ef84fef5c2bd9374ba873c6fc21c3ca943f562a4863e133eb4248118bfe |