Function

vDSP_fft_zopt(_:_:_:_:_:_:_:_:)

Computes an out-of-place single-precision complex discrete Fourier transform of the input vector, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

Declaration

func vDSP_fft_zopt(_ __Setup: FFTSetup, _ __A: UnsafePointer<DSPSplitComplex>, _ __IA: vDSP_Stride, _ __C: UnsafePointer<DSPSplitComplex>, _ __IC: vDSP_Stride, _ __Buffer: UnsafePointer<DSPSplitComplex>, _ __Log2N: vDSP_Length, _ __Direction: FFTDirection)

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 must equal or exceed the value supplied as parameter Log2N of this transform function.

__A

Complex input vector.

__IA

Stride between elements in A. The value of IA should be 1 for best performance.

__C

Complex output vector.

__IC

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

__Buffer

A temporary vector used for storing interim results. The minimum size of temporary memory for each part (real and imaginary) is the lesser of the size of N elements or 16,384 bytes. For best performance, the buffer addresses should be 16-byte aligned or better.

__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

This performs the following operation:

mathematical formula

where F is Direction, C is A, j is the square root of -1, and N is two raised to the power of Log2N.

See also functions vDSP_create_fftsetup and vDSP_destroy_fftsetup.

See Also

1D Fast Fourier Transforms (Out-of-Place Complex)

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

Computes an out-of-place single-precision complex discrete Fourier transform of the input vector, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

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

Computes an out-of-place double-precision complex discrete Fourier transform of the input vector, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

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

Computes an out-of-place double-precision complex discrete Fourier transform of the input vector, either from the time domain to the frequency domain (forward) or from the frequency domain to the time domain (inverse).

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

Computes an out-of-place radix-3 complex Fourier transform, either forward or inverse. The number of input and output values processed equals 3 times the power of 2 specified by parameter Log2N; single precision.

Deprecated
func vDSP_fft3_zopD(FFTSetupD, UnsafePointer<DSPDoubleSplitComplex>, vDSP_Stride, UnsafePointer<DSPDoubleSplitComplex>, vDSP_Stride, vDSP_Length, FFTDirection)

Computes an out-of-place radix-3 complex Fourier transform, either forward or inverse. The number of input and output values processed equals 3 times the power of 2 specified by parameter Log2N; double precision.

Deprecated
func vDSP_fft5_zop(FFTSetup, UnsafePointer<DSPSplitComplex>, vDSP_Stride, UnsafePointer<DSPSplitComplex>, vDSP_Stride, vDSP_Length, FFTDirection)

Computes an out-of-place radix-5 complex Fourier transform, either forward or inverse. The number of input and output values processed equals 5 times the power of 2 specified by parameter Log2N; single precision.

Deprecated
func vDSP_fft5_zopD(FFTSetupD, UnsafePointer<DSPDoubleSplitComplex>, vDSP_Stride, UnsafePointer<DSPDoubleSplitComplex>, vDSP_Stride, vDSP_Length, FFTDirection)

Computes an out-of-place radix-5 complex Fourier transform, either forward or inverse. The number of input and output values processed equals 5 times the power of 2 specified by parameter Log2N; double precision.

Deprecated

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.

Learn more about using Apple's beta software