Skip to content

thisMagpie/fftw

master
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Travis CLI

Gemnasium

Install FFTW

Install on Linux (debian, fedora or opensuse compatible)

git clone http://github.com/thismagpie/fftw
cd fftw
./installer

This installs to the home directory so root access is only needed to install system required libraries but not fftw3 or the fftw gem itself.

Install on OSX

Follow the instructions on installing nmatrix

git clone http://github.com/thismagpie/fftw
cd fftw
./installer

Conventions and Style for the FFTW Gem

  • Do not repeat code.

Common names

 R       : real type, aka fftw_real
 E       : real type for local variables (possibly extra precision)
 C       : complex type
 sz      : size
 vecsz   : vector size
 is, os  : input/output stride
 ri, ii  : real/imag input (complex data)
 ro, io  : real/imag output (complex data)
 I, O    : real input/output (real data)
 A       : assert
 CK      : check
 S       : solver, defined internally to each solver file
 P       : plan, defined internally to each solver file
 k       : codelet
 X(...)  : used for mangling of external names (see below)
 K(...)  : floating-point constant, in E precision

Conventions in FFTW3

If a name is used often and must have the form fftw_foo to avoid namespace pollution, #define FOO fftw_foo and use the short name: Use foo instead.

foo is lowercase so that it does not look like a DOS program.

Exception: typedef struct foo_s {...} foo; instead of:

typedef struct foo {...} foo;

for C++ compatibility.

Donate with Pledgie