[API](/solutions/geotoolkit/geotoolkit_js/apis/readme) / [geotoolkit](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit) / [seismic](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.seismic) / [analysis](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.seismic#analysis) / [transforms](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.seismic#transforms) / [FFT](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.seismic#fft) / FFT

# Class: FFT

[transforms](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.seismic#transforms).[FFT](/solutions/geotoolkit/geotoolkit_js/apis/modules/geotoolkit.seismic#fft).FFT

Defines a class capable of computing the forward and backward Fast Fourier Transform
Ported from the Saddleback Geosolution's Java implementation of the FFT.
This implementation uses radix 2, 4 and 8 butterflies.

## Hierarchy

- [`AbstractFFTSpectra`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra)
↳ **`FFT`**
↳↳ [`RealFFT`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.realfft.realfft)


## Table of contents

Constructors
- [new FFT(real, imag, sampleRate, length)](/solutions/geotoolkit/GeoToolkit_JS/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft.md#new fft(real, imag, samplerate, length))


Methods
| [getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getclassname) | [getFDSampleRate](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfdsamplerate) | [getFFTAmplitude](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftamplitude) |
|  --- | --- | --- |
| [getFFTAmplitudeSmooth](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftamplitudesmooth) | [getFFTPhaseDegrees](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftphasedegrees) | [getFFTPhaseInDegreesUnWrapped](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftphaseindegreesunwrapped) |
| [getFFTPhaseInRadiansUnWrapped](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftphaseinradiansunwrapped) | [getFFTPhaseRadians](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftphaseradians) | [getFFTPower](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftpower) |
| [getFFTPowerInDb](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftpowerindb) | [getFFTPowerInDbNormalized](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftpowerindbnormalized) | [getFFTPowerInDbSmoothed](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftpowerindbsmoothed) |
| [getFFTPowerSmoothed](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getfftpowersmoothed) | [getHalfLength](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#gethalflength) | [getImaginaryComponents](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getimaginarycomponents) |
| [getLength](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getlength) | [getLog2Length](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getlog2length) | [getNumberNonZeroSamples](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getnumbernonzerosamples) |
| [getNyquist](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getnyquist) | [getNyquistLength](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getnyquistlength) | [getRealComponents](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getrealcomponents) |
| [getSampleRate](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getsamplerate) | [inverseTransform](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#inversetransform) | [setData](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#setdata) |
| [setDataUnsafe](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#setdataunsafe) | [setSampleRate](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#setsamplerate) | [transform](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#transform) |
| [getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft#getclassname-1) |


## Contents

Constructors
#### new FFT(real, imag, sampleRate, length)

• **new FFT**(`real?`, `imag?`, `sampleRate?`, `length?`)

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `real` | `Float32Array` | The real component of the signal |
| `Optional` `imag` | `Float32Array` | The imaginary component of th signal |
| `Optional` `sampleRate` | `number` | The data sampling rate in milliseconds |
| `Optional` `length` | `number` | The desired length of the transform, must be a power of 2 |


#### Inherited from

AbstractFFTSpectra.constructor

Methods
#### getClassName

▸ **getClassName**(): `string`

#### Returns

`string`

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getclassname)

#### getFDSampleRate

▸ **getFDSampleRate**(): `number`

Returns the Frequency Domain sample rate. This is the frequency domain sample spacing.

#### Returns

`number`

FrequencySampleRate Frequency Domain sampling rate in milliseconds (ms)

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFDSampleRate](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfdsamplerate)

#### getFFTAmplitude

▸ **getFFTAmplitude**(): `Float32Array`

Computes the Amplitude spectrum of the input signal.*

#### Returns

`Float32Array`

amplitudes - array containing the amplitude spectrum

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTAmplitude](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftamplitude)

#### getFFTAmplitudeSmooth

▸ **getFFTAmplitudeSmooth**(`hzLength`): `Float32Array`

Computes the Amplitude spectrum of the input signal and
smoothes the output to hzLength (in frequency).

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `hzLength` | `number` | int operator length in hz/samples |


#### Returns

`Float32Array`

amplitudes - array containing the amplitude spectrum

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTAmplitudeSmooth](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftamplitudesmooth)

#### getFFTPhaseDegrees

▸ **getFFTPhaseDegrees**(): `Float32Array`

Computes the phase spectrum of the input signal in degrees.

#### Returns

`Float32Array`

phases - array containing the phase spectrum of the input signal in degrees.

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPhaseDegrees](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftphasedegrees)

#### getFFTPhaseInDegreesUnWrapped

▸ **getFFTPhaseInDegreesUnWrapped**(): `Float32Array`

Computes the phase spectrum in unwrapped degrees in the range(0-&gt;360).

#### Returns

`Float32Array`

phases - array containing the unwrapped phase spectrum in degrees

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPhaseInDegreesUnWrapped](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftphaseindegreesunwrapped)

#### getFFTPhaseInRadiansUnWrapped

▸ **getFFTPhaseInRadiansUnWrapped**(): `Float32Array`

Computes the phase spectrum in unwrapped radians in the range(-pi to +pi).

#### Returns

`Float32Array`

phases - array containing the unwrapped phase spectrum in radians

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPhaseInRadiansUnWrapped](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftphaseinradiansunwrapped)

#### getFFTPhaseRadians

▸ **getFFTPhaseRadians**(): `Float32Array`

Computes the phase spectrum in radians of the input signal.<br><br>
This is the phase spectrum of the input signal in range of 0 to 2*pi.

#### Returns

`Float32Array`

phases - array containing the phase spectrum in radians

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPhaseRadians](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftphaseradians)

#### getFFTPower

▸ **getFFTPower**(): `Float32Array`

Computes the power spectrum (amplitude squared) of the FFT.

#### Returns

`Float32Array`

powers - array containing the power spectrum

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPower](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftpower)

#### getFFTPowerInDb

▸ **getFFTPowerInDb**(): `Float32Array`

Computes the power spectrum (amplitude squared) of the FFT.
This is the the power spectrum in dB-down, based on the maximum power
value associated with (0(Zero) db down).

#### Returns

`Float32Array`

powersDb - array container the power spectrum in dB

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPowerInDb](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftpowerindb)

#### getFFTPowerInDbNormalized

▸ **getFFTPowerInDbNormalized**(`pReference`): `Float32Array`

Computes the normalized power spectrum (amplitude squared) of the FFT.<br><br>

This is the the power spectrum in dB-down, based on the reference power
value supplied in the parameter nFactor.

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `pReference` | `number` | float reference value |


#### Returns

`Float32Array`

powersDbNorm - array containing the power spectrum in dB

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPowerInDbNormalized](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftpowerindbnormalized)

#### getFFTPowerInDbSmoothed

▸ **getFFTPowerInDbSmoothed**(`hzLength`): `Float32Array`

Computes the smoothed &amp; normalized dB power spectrum
(amplitude squared) of the FFT.
This is the the power spectrum in dB-down, based on the maximum power
value associated with (0(Zero) db down).

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `hzLength` | `number` | int operator length in hz/samples |


#### Returns

`Float32Array`

powersDbSmoothed - array containing the power specturm in db and smoothed.

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPowerInDbSmoothed](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftpowerindbsmoothed)

#### getFFTPowerSmoothed

▸ **getFFTPowerSmoothed**(`hzLength`): `Float32Array`

Computes the smoothed power spectrum (amplitude squared) of the FFT.

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `hzLength` | `number` | int operator length in hz/samples |


#### Returns

`Float32Array`

powerSmoothed - array containing the smoothed power spectrum

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getFFTPowerSmoothed](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getfftpowersmoothed)

#### getHalfLength

▸ **getHalfLength**(): `number`

Returns half of the length of the calculated FFT (power-of-2)

#### Returns

`number`

halfLength The half-length of the FFT

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getHalfLength](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#gethalflength)

#### getImaginaryComponents

▸ **getImaginaryComponents**(`getReference`): `Float32Array`

Gets the imaginary signal component

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `getReference` | `boolean` | If true then the reference to signal will be returned. |


#### Returns

`Float32Array`

realComponent The real signal component

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getImaginaryComponents](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getimaginarycomponents)

#### getLength

▸ **getLength**(): `number`

Returns the length of the calculated FFT (power-of-2).

#### Returns

`number`

length The length of calculated FFT

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getLength](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getlength)

#### getLog2Length

▸ **getLog2Length**(): `number`

Returns the base 2 logarithm of the transform length

#### Returns

`number`

logLength Log base 2 of the transform length

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getLog2Length](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getlog2length)

#### getNumberNonZeroSamples

▸ **getNumberNonZeroSamples**(): `number`

Returns the number of non zero samples that were input inot the last FFT.
This is the number of live samples (less than or equal to a power-of-2);

#### Returns

`number`

nonZero The Number of non-zero samples for input signal

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getNumberNonZeroSamples](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getnumbernonzerosamples)

#### getNyquist

▸ **getNyquist**(): `number`

Returns the nyquist frequency for the input signal.
This is the calculated nyquist frequency based on the supplied sample rate.
This is also known as the folding frequency

#### Returns

`number`

nyquist The nyquist frequency

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getNyquist](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getnyquist)

#### getNyquistLength

▸ **getNyquistLength**(): `number`

Returns the sample number of frequency that equals nyquist frequency.

#### Returns

`number`

frequency The Nyquist frequency

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getNyquistLength](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getnyquistlength)

#### getRealComponents

▸ **getRealComponents**(`getReference`): `Float32Array`

Gets the real signal component

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `getReference` | `boolean` | If true then the reference to signal will be returned. |


#### Returns

`Float32Array`

realComponent The real signal component

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getRealComponents](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getrealcomponents)

#### getSampleRate

▸ **getSampleRate**(): `number`

Returns the input sample rate of the signal in Milliseconds.
This is the sample rate set before calculation.

#### Returns

`number`

sampleRate Sample rate of input signal in milliseconds (ms)

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getSampleRate](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getsamplerate)

#### inverseTransform

▸ **inverseTransform**(): `void`

Performs the inverse transform

#### Returns

`void`

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[inverseTransform](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#inversetransform)

#### setData

▸ **setData**(`real?`, `imag?`, `sampleRate?`, `length?`): [`FFT`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft)

Sets the real and imaginary result array

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `Optional` `real` | `number`[] | `Float32Array` | The real component of the signal |
| `Optional` `imag` | `number`[] | `Float32Array` | The imaginary component of the signal |
| `Optional` `sampleRate` | `string` | `number` | The data sampling rate in milliseconds |
| `Optional` `length` | `string` | `number` | The desired length of the transform, must be a power of 2 |


#### Returns

[`FFT`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft)

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[setData](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#setdata)

#### setDataUnsafe

▸ **setDataUnsafe**(`real`, `imag`): [`FFT`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft)

Sets the real and imaginary arrays directly

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `real` | `Float32Array` | The imaginary component of the signal |
| `imag` | `Float32Array` | The real component of the signal |


#### Returns

[`FFT`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft)

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[setDataUnsafe](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#setdataunsafe)

#### setSampleRate

▸ **setSampleRate**(`sampleRate`): [`FFT`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft)

Sets the input sample rate of the signal in Milliseconds.

#### Parameters

| Name  | Type  | Description  |
|  --- | --- | --- |
| `sampleRate` | `number` | Sample rate of input signal in milliseconds (ms) |


#### Returns

[`FFT`](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.fft.fft)

this

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[setSampleRate](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#setsamplerate)

#### transform

▸ **transform**(): `void`

Performs the transform

#### Returns

`void`

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[transform](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#transform)

#### getClassName

▸ `Static` **getClassName**(): `string`

#### Returns

`string`

#### Inherited from

[AbstractFFTSpectra](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra).[getClassName](/solutions/geotoolkit/geotoolkit_js/apis/classes/geotoolkit.seismic.analysis.transforms.abstractfftspectra.abstractfftspectra#getclassname-1)