TSA Bispectrum (Waveform) VI
- Updated2025-12-08
- 6 minute(s) read
Computes the single-sided bispectrum of a univariate time series using the fast Fourier transform (FFT) or the autoregressive (AR) model based method. The bispectrum is a type of third-order spectrum, which is related to the third moment (skewness) of a time series. The resulting bispectrum can detect the asymmetric nonlinearities in the input time series. Wire data to the Xt input to determine the polymorphic instance to use or manually select the instance.

Inputs/Outputs
initialize? (F)
—
initialize? specifies whether the input block of data is the first block. The default is FALSE, which means the input block of data is not the first block.
frequency bins
—
frequency bins specifies the number of frequency bins for which this VI computes the bispectrum. The resulting bispectrum S(f,f) is a square 2D array with the size (frequency bins/2+1). The default is -1, which means this VI calculates an appropriate value for the frequency bins. Refer to the Details section for information about how this VI calculates the frequency bins value.
Xt
—
Xt specifies the univariate time series.
method
—
method specifies to compute the bispectrum with the fast Fourier transform (FFT) based or autoregressive (AR) model based method. The default is FFT.
window info
—
window info specifies the information of the sliding window that divides the time series into subsequences.
error in (no error)
—
error in describes error conditions that occur before this node runs. This input provides standard error in functionality.
dB on? (T)
—
dB on? specifies whether this VI returns the S(f,f) in decibels or in a linear scale. If dB on? is TRUE, this VI returns the S(f,f) in decibels. If dB on? is FALSE, this VI returns the S(f,f) in a linear scale. The default is TRUE.
averaging parameters
—
averaging parameters specifies how this VI computes the averaging.
AR setting
—
AR setting specifies the settings for the autoregressive (AR) model. This option is valid only when the method is AR Model.
S(f,f)
—
S(f,f) returns the magnitude of the single-sided bispectrum S(f1, f2).
freq bins
—
freq bins returns the frequency bins at which this VI estimates the bispectrum.
averaging done?
—
averaging done? returns whether the averaging process is complete. averaging done? returns TRUE when the number of averages this VI completes is greater than or equal to the number of averages specified in averaging parameters. Otherwise, averaging done? returns FALSE. averaging done? is always TRUE if the selected averaging mode is No averaging.
unit
—
unit returns the engineering unit of the PSD. You can specify an engineering unit for a time series by using the TSA Scale to EU VI.
error out
—
error out contains error information. This output provides standard error out functionality. |
TSA Bispectrum Details
This VI computes the single-sided bispectrum of a univariate time series using the FFT based method according to the following equation:
S(f1, f2) = A[X(f1)X(f2)X*(f1+f2)]
A[X] denotes the averaging value of X. X(f) is the Fourier transform of the time series Xt according to the following equation.

where N is the number of frequency bins and fs is the sampling rate. Before computing the bispectrum, this VI adjusts the value of the window length, length, and the value of frequency bins according to the following table.
| signal block size | length | adjusted length | frequency bins | adjusted frequency bins |
|---|---|---|---|---|
| <=1024 | -1 | signal block size | -1 | signal block size |
| >1024 | -1 | 1024 | -1 | 1024 |
| arbitrary | arbitrary | no change | -1 | length |
| arbitrary | -1 | signal block size | <signal block size | signal block size |
| arbitrary | -1 | signal block size | >=signal block size | no change |
| arbitrary | arbitrary | no change | >=length | no change |
| arbitrary | arbitrary | no change | <length | length |
This VI computes the bispectrum of a univariate time series using the AR model based method according to the following equation:
S(f1, f2) = bA[X(f1)X(f2)X*(f1+f2)]
b is the third moment of estimated noise series of AR model.

s² is the noise variance of the estimated AR model of the time series and a is an array that contains the coefficients of the AR model. a=[1, a1, a2,… ,an], where n is AR order. Before computing the bispectrum, this VI wraps a to an N-point series a'.
Examples
Refer to the following VIs for examples of using the TSA Bispectrum VI:
- Bispectrum Analysis VI: labview\examples\Time Series Analysis\TSAGettingStarted
- Beam Crack Detection VI: labview\examples\Time Series Analysis\TSAApplications
initialize? (F)
—
frequency bins
—
Xt
—
method
—
window info
—
overlap (%)
—
error in (no error)
—
averaging mode
—
number of averages
—
S(f,f)
—
freq bins
—
averaging done?
—
unit
—
error out
—