PrimeFFT class

Performs FFTs (Fast Fourier Transforms) of a particular size.

The size must be a prime number greater than 2, eg 3, 5, 7, 11 etc. This implementation works by delegating to an FFT of either size - 1 (which is composite, so can be handled by CompositeFFT), or by padding it up to a power of two (which can be handled by Radix2FFT), using Rader's algorithm. If size - 1 only has small prime factors, then not padding is faster, but if size - 1 has large prime factors, then padding is faster. This decision is made by primePaddingHeuristic.

Inheritance

Constructors

PrimeFFT(int size, bool padToPow2)
Constructs an FFT object with the given size.

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
size → int
The size of the FFTs that this object can do.
no setterinherited

Methods

frequency(int index, double samplesPerSecond) → double
Returns the frequency that the given index of FFT output represents.
inherited
indexOfFrequency(double freq, double samplesPerSecond) → double
Returns the index in the FFT output that corresponds to the given frequency. This is the inverse of frequency.
inherited
inPlaceFft(Float64x2List complexArray) → void
In-place FFT.
inherited
inPlaceInverseFft(Float64x2List complexArray) → void
In-place inverse FFT.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
realFft(List<double> reals) → Float64x2List
Real-valued FFT.
inherited
realInverseFft(Float64x2List complexArray) → Float64List
Real-valued inverse FFT.
inherited
toString() → String
A string representation of this object.
override

Operators

operator ==(Object other) → bool
The equality operator.
inherited