Function

# vDSP_fft_zrip(_:_:_:_:_:)

Computes an in-place single-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

## Parameters

`__Setup`

Points to a structure initialized by a prior call to the FFT setup data function, `vDSP_create_fftsetup`. The value supplied as parameter `Log2n` of the setup function `Log2N` of this transform function.

`__C`

Complex input/output vector.

`__IC`

Stride between elements in `C`. The value of `IC` should be 1 for best performance.

`__Log2N`

The base 2 exponent of the number of elements to process. For example, to process 1024 elements, specify 10 for parameter `Log2N`.

`__Direction`

A forward/inverse directional flag, which must specify `kFFTDirection_Forward` (+1) or `kFFTDirection_Inverse` (-1).

## Discussion

Forward transforms read real input and write packed complex output. Inverse transforms read packed complex input and write real output. As a result of packing the frequency-domain data, time-domain data and its equivalent frequency-domain data have the same storage requirements. You can find more details on the packing format in vDSP Programming Guide in vDSP Programming Guide.

where F is `Direction`, C is `C`, and N is two raised to the power of `Log2N`.

See also functions `vDSP_create_fftsetup` and `vDSP_destroy_fftsetup`.

### 1D Fast Fourier Transforms (In-Place Real)

`func vDSP_fft_zripD(FFTSetupD, UnsafePointer<DSPDoubleSplitComplex>, vDSP_Stride, vDSP_Length, FFTDirection)`

Computes an in-place double-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

`func vDSP_fft_zript(FFTSetup, UnsafePointer<DSPSplitComplex>, vDSP_Stride, UnsafePointer<DSPSplitComplex>, vDSP_Length, FFTDirection)`

Computes an in-place single-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse). Usesa temporary buffer to improve performance.

`func vDSP_fft_zriptD(FFTSetupD, UnsafePointer<DSPDoubleSplitComplex>, vDSP_Stride, UnsafePointer<DSPDoubleSplitComplex>, vDSP_Length, FFTDirection)`

Computes an in-place double-precision real discrete Fourier transform, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

Beta Software

This documentation contains preliminary information about an API or technology in development. This information is subject to change, and software implemented according to this documentation should be tested with final operating system software.