fftw-ocaml
fftw-ocaml copied to clipboard
Bindings to FFTW3.
Interface to FFTW, version 3
Perquisites
The FFTW, version 3, with its development files (fftw3.h) must be
installed on your system. For example, on Debian or Ubuntu, you need
to install the package libfftw3-dev (see the package
conf-fftw3 for other
distributions — click the “Edit” link).
Compilation
The easier way to install this library is by using opam:
opam install fftw3
If you cloned this repository, you can use Dune to compile it:
dune build @install
If your fftw3 header files or libraries are not where you C compiler
expects to find them and pkg-config does not return the right
location either, you need to tell the discover
script where to find them by setting the
environment variable FFTW3_CFLAGS:
FFTW3_CFLAGS="-I/opt/local/include" LDFLAGS="-L/opt/local/lib"
Of course, replace /opt/local/include (resp. /opt/local/lib) by the
actual paths of your header files (resp. library).
Usage
Fftw3 contains two submodules differing only by precision Fftw3.D for
double precision and Fftw3.S for single precision. Note that the
functions of the single precision module will raise Failure if the
corresponding FFTW3 library was not discovered by the configure
script. See the mli file for more details
or consult the documentation
online.
Examples
Some examples need additional libraries:
If these are not detected by the configure script, the corresponding examples will not be compiled or will have less features.
Bugs
To report bugs, use the Github issues page.
Development
If you want to participate to the development of Fftw3, make a fork of the project and submit a pull request.
Licence
FFtw3 is released under the LGPL with the special exception of the standard library. See the file LICENSE for more details.
Although not required, it will be appreciated if your product mentions it uses these bindings.