# FFT2D

Advanced Analysis Library Only

AnalysisLibErrType FFT2D (void *timeDomainSignal, int numberOfRows, int numberOfColumns, int numberOfRowsForFFT, int numberOfColumnsForFFT, int shift, void *fft);

## Purpose

Computes the Fast Fourier Transform (FFT) of a 2D time-domain signal.

## Parameters

Input
Name | Type | Description
timeDomainSignal | numeric array | The real time-domain signal.
numberOfRows | integer | The number of rows in timeDomainSignal.
numberOfColumns | integer | The number of columns in timeDomainSignal.
numberOfRowsForFFT | integer | The number of rows on which to perform the FFT. If numberOfRowsForFFT does not equal numberOfRows, this function truncates timeDomainSignal or pads timeDomainSignal with zeros to create a numberOfRowsForFFT by numberOfColumnsForFFT matrix for which it calculates the FFT. If numberOfRowsForFFT is less than 1, this function uses numberOfRows for this parameter.
numberOfColumnsForFFT | integer | The number of columns on which to perform the FFT. If numberOfColumnsForFFT does not equal numberOfColumns, this function truncates timeDomainSignal or pads timeDomainSignal with zeros to create a numberOfRowsForFFT by numberOfColumnsForFFT matrix for which it calculates the FFT. If numberOfColumnsForFFT is less than 1, this function uses numberOfColumns for this parameter.
shift | integer | Specifies whether to shift the DC component to the center of the FFT result. shift must be one of the following values: FALSE (0): Ordinary FFT. The first element of fft is the DC component. TRUE (1): DC-centered FFT.
Output
Name | Type | Description
fft | numeric array | The FFT of the time-domain signal.

## Return Value

Name | Type | Description
status | AnalysisLibErrType | A value that specifies the type of error that occurred. Refer to analysis.h for definitions of these constants.