Skip to content

Commit

Permalink
Friendlier homepage with usage instructions (#86)
Browse files Browse the repository at this point in the history
* Friendlier homepage with usage instructions

* newlines
  • Loading branch information
antoine-levitt authored and stevengj committed Jan 25, 2019
1 parent 49b3928 commit 914f30c
Showing 1 changed file with 30 additions and 8 deletions.
38 changes: 30 additions & 8 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,9 +1,36 @@
# FFTW.jl

[![Travis](https://travis-ci.org/JuliaMath/FFTW.jl.svg?branch=master)](https://travis-ci.org/JuliaMath/FFTW.jl)
[![AppVeyor](https://ci.appveyor.com/api/projects/status/hofbdbyt287qn49s/branch/master?svg=true)](https://ci.appveyor.com/project/ararslan/fftw-jl/branch/master)
[![Coveralls](https://coveralls.io/repos/github/JuliaMath/FFTW.jl/badge.svg?branch=master)](https://coveralls.io/github/JuliaMath/FFTW.jl?branch=master)

[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://JuliaMath.github.io/FFTW.jl/stable)
[![](https://img.shields.io/badge/docs-latest-blue.svg)](https://JuliaMath.github.io/FFTW.jl/latest)

This package provides Julia bindings to the [FFTW](http:https://www.fftw.org/) library for
fast Fourier transforms (FFTs), as well as functionality useful for signal processing.
These functions were formerly a part of Base Julia.

## Usage and documentation

```julia
]add FFTW
using FFTW
fft([0; 1; 2; 1])
```
returns
```
4-element Array{Complex{Float64},1}:
4.0 + 0.0im
-2.0 + 0.0im
0.0 + 0.0im
-2.0 + 0.0im
```

The documentation of generic FFT functionality can be found in the [AbstractFFTs.jl package](https://juliamath.github.io/AbstractFFTs.jl/latest/api.html#Public-Interface-1). Additional functionalities supported by the FFTW library are documented in the present package.

## MKL

Alternatively, the FFTs in Intel's Math Kernel Library (MKL) can be used
by setting an environment variable `JULIA_FFTW_PROVIDER` to `MKL` and running
`Pkg.build("FFTW")`. If Julia was built with MKL, then Julia's MKL will be
Expand All @@ -15,6 +42,9 @@ Note however that MKL provides only a subset of the functionality provided by FF
Intel's [documentation](https://software.intel.com/en-us/mkl-developer-reference-c-using-fftw3-wrappers)
for more information about potential differences or gaps in functionality.


## License

The FFTW library will be downloaded on versions of Julia where it is no longer distributed
as part of Julia.
Note that FFTW is licensed under GPLv2 or higher (see
Expand All @@ -29,11 +59,3 @@ If you distribute a derived or combined work, i.e. a program that links to and i
with the FFTW library, then that distribution falls under the terms of the GPL.
If you just distribute source code that links to FFTW.jl, and users have to download FFTW
or MKL to provide the backend, then the GPL probably doesn't have much effect on you.

[![Travis](https://travis-ci.org/JuliaMath/FFTW.jl.svg?branch=master)](https://travis-ci.org/JuliaMath/FFTW.jl)
[![AppVeyor](https://ci.appveyor.com/api/projects/status/hofbdbyt287qn49s/branch/master?svg=true)](https://ci.appveyor.com/project/ararslan/fftw-jl/branch/master)
[![Coveralls](https://coveralls.io/repos/github/JuliaMath/FFTW.jl/badge.svg?branch=master)](https://coveralls.io/github/JuliaMath/FFTW.jl?branch=master)

Documentation:
[![](https://img.shields.io/badge/docs-stable-blue.svg)](https://JuliaMath.github.io/FFTW.jl/stable)
[![](https://img.shields.io/badge/docs-latest-blue.svg)](https://JuliaMath.github.io/FFTW.jl/latest)

0 comments on commit 914f30c

Please sign in to comment.