Last Modified: March 30, 2017

Computes the single-sided, scaled amplitude spectrum of a time-domain signal.

A value that affects the output coefficients when **window type** is Kaiser, Gaussian, or Dolph-Chebyshev.

If **window type** is any other type of window, this node ignores this input.

This input represents the following information for each type of window:

**Kaiser**—Beta parameter**Gaussian**—Standard deviation**Dolph-Chebyshev**—The ratio,*s*, of the main lobe to the side lobe

This input is available only if you wire one of the following data types to **signal**:

- Waveform
- Waveform in complex double-precision, floating-point numbers
- 1D array of waveforms
- 1D array of waveforms in complex double-precision, floating-point numbers
- 1D array of double-precision, floating-point numbers
- 1D array of complex double-precision, floating-point numbers
- 2D array of double-precision, floating-point numbers
- 2D array of complex double-precision, floating-point numbers

**Default: **NaN—Causes this node to set beta to 0 for a Kaiser window, the standard deviation to 0.2 for a Gaussian window, and *s* to 60 for a Dolph-Chebyshev window

Time-domain window to apply to the signal.

Name | Value | Description |
---|---|---|

Rectangle | 0 | Applies a rectangle window. |

Hanning | 1 | Applies a Hanning window. |

Hamming | 2 | Applies a Hamming window. |

Blackman-Harris | 3 | Applies a Blackman-Harris window. |

Exact Blackman | 4 | Applies an Exact Blackman window. |

Blackman | 5 | Applies a Blackman window. |

Flat Top | 6 | Applies a Flat Top window. |

4 Term B-Harris | 7 | Applies a 4 Term B-Harris window. |

7 Term B-Harris | 8 | Applies a 7 Term B-Harris window. |

Low Sidelobe | 9 | Applies a Low Sidelobe window. |

Blackman Nutall | 11 | Applies a Blackman Nutall window. |

Triangle | 30 | Applies a Triangle window. |

Bartlett-Hanning | 31 | Applies a Bartlett-Hanning window. |

Bohman | 32 | Applies a Bohman window. |

Parzen | 33 | Applies a Parzen window. |

Welch | 34 | Applies a Welch window. |

Kaiser | 60 | Applies a Kaiser window. |

Dolph-Chebyshev | 61 | Applies a Dolph-Chebyshev window. |

Gaussian | 62 | Applies a Gaussian window. |

Force | 64 | Applies a Force window. |

Exponential | 65 | Applies an Exponential window. |

**Default: **Rectangle

The input time-domain signal, usually in volts.

The time-domain record must contain at least three cycles of the signal for a valid estimate.

This input accepts the following data types:

- Waveform
- Waveform in complex double-precision, floating-point numbers
- 1D array of waveforms
- 1D array of waveforms in complex double-precision, floating-point numbers
- Double-precision, floating-point number
- 1D array of double-precision, floating-point numbers
- 1D array of complex double-precision, floating-point numbers
- 2D array of double-precision, floating-point numbers
- 2D array of complex double-precision, floating-point numbers

Length of each set of data.

The node performs computation for each set of data. **sample length** must be greater than zero.

This input is available only if you wire a double-precision, floating-point number to **signal**.

**Default: **100

Settings that define how this node returns results.

Error conditions that occur before this node runs.

The node responds to this input according to standard error behavior.

Standard Error Behavior

Many nodes provide an **error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

**Default: **No error

Sample period of the time-domain signal in seconds.

Set this input to 1/*fs*, where *fs* is the sampling frequency of the time-domain signal.

This input is available only if you wire one of the following data types to **signal**:

- Double-precision, floating-point number
- 1D array of double-precision, floating-point numbers
- 1D array of complex double-precision, floating-point numbers
- 2D array of double-precision, floating-point numbers
- 2D array of complex double-precision, floating-point numbers

**Default: **1

Magnitude of the FFT spectrum of the input signal.

This output can return a cluster or a 1D array of clusters.

Start frequency, in Hz, of the spectrum.

Frequency resolution, in Hz, of the spectrum.

Magnitude of the FFT spectrum.

If the input signal is in volts (V), this output has units of volts-rms (V_{rms}). If the input signal is not in volts, this output has units of the input signal unit-rms. If the results are in decibels and the input signal is in volts, this output has units of dBV.

Phase of the FFT spectrum of the input signal.

This output can return a cluster or a 1D array of clusters.

Start frequency, in Hz, of the spectrum.

Frequency resolution, in Hz, of the spectrum.

Phase, in radians, of the FFT spectrum.

Error information.

The node produces this output according to standard error behavior.

Standard Error Behavior

**error in** input and an **error out** output so that the node can respond to and communicate errors that occur while code is running. The value of **error in** specifies whether an error occurred before the node runs. Most nodes respond to values of **error in** in a standard, predictable way.

To compute the single-sided, scaled amplitude spectrum, this node first uses the following equation to compute the two-sided amplitude spectrum:

$\begin{array}{cc}A\left(i\right)=\frac{X\left(i\right)}{N}& i=0,\text{\hspace{0.17em}}1,\text{\hspace{0.17em}}\mathrm{...},\text{\hspace{0.17em}}N-1\end{array}$

where

*A*is the two-sided amplitude spectrum*X*is the discrete Fourier transform of**signal***N*is the number of points in**signal**

Then, this node uses the following equation to convert the two-sided amplitude spectrum to the single-sided amplitude spectrum:

$B\left(i\right)=\{\begin{array}{cc}A\left(0\right)& i=0\\ \sqrt{2}A\left(i\right)& i=1,\text{\hspace{0.17em}}2,\text{\hspace{0.17em}}\mathrm{...},\text{\hspace{0.17em}}\lfloor \frac{N}{2}-1\rfloor \end{array}$

where *B* is the single-sided amplitude spectrum and
$\lfloor \rfloor $ is the floor operation.

This node computes the magnitude of the single-sided amplitude spectrum *B* as **magnitude** = *B* and the phase as *phase*(*B*).

**Where This Node Can Run: **

Desktop OS: Windows

FPGA: This product does not support FPGA devices