Last Modified: January 12, 2018

Computes the averaged cross power spectrum of two signals.

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 of the main lobe to the side lobe,*s*, expressed in decibels

**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 dB 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: **Hanning

A Boolean that specifies whether the node restarts the selected averaging process.

True | Restarts the averaging process. |

False | Does not restart the averaging process. |

When you call this node for the first time, the averaging process restarts automatically. A typical case when you restart averaging is when a major input change occurs in the middle of the averaging process.

**Default: **False

First input signal.

This input accepts a waveform or a 1D array of double-precision, floating-point numbers.

Second input signal.

This input accepts a waveform or a 1D array of double-precision, floating-point numbers.

Settings that define how this node computes the averaging.

The mode this node uses to compute the averaging.

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

No averaging | Does not use averaging. |

Vector averaging | Uses vector averaging. |

RMS averaging | Uses RMS averaging. |

Peak hold | Uses peak hold averaging. |

**Default: **No averaging

Weighting mode for RMS and vector averaging.

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

Linear | Uses linear weighting. |

Exponential | Uses exponential weighting. |

**Default: **Exponential

Number of averages to use for RMS and vector averaging.

If **weighting mode** is Exponential, the averaging process is continuous. If **weighting mode** is Linear, the averaging process stops after this node computes the specified number of averages.

**Default: **10

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

Averaged cross power spectrum of the input signals.

Start frequency, in Hz, of the spectrum.

Frequency resolution, in Hz, of the spectrum.

Averaged cross power spectrum of the signals.

A Boolean that indicates whether the number of averages this node completed is greater than or equal to the specified number of averages.

True | The number of averages this node completed is greater than or equal to the specified number of averages. |

False | The number of averages this node completed is less than the specified number of averages. |

** averaging done** is True if **averaging mode** is No averaging.

Number of averages this node completed.

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.

The cross power,
${S}_{xy}\left(f\right)$, of the signals *x*(*t*) and *y*(*t*) is defined as

${S}_{xy}\left(f\right)=X*\left(f\right)Y\left(f\right)$

where

*X**(*f*) is the complex conjugate of*X*(*f*)*X*(*f*)=*F*{*x*(*t*)}*Y*(*f*)=*F*{*y*(*t*)}

This node uses the FFT or DFT routine to compute the cross power spectrum, which is given by

${S}_{xy}=\frac{1}{{n}^{2}}F*\left\{X\right\}F\left\{Y\right\}$

where *S*_{xy} represents the complex sequence **cross spectrum** and *n* is the number of samples that can accommodate input sequences **signal x** and **signal y**.

The largest cross power that this node can compute by the FFT is 2^{23} (8,388,608 or 8M).

Some textbooks define the cross power spectrum as
${S\prime}_{xy}\left(f\right)=X\left(f\right)Y*\left(f\right)$. If you prefer this definition of cross power to the one specified in this node, take the complex conjugate of the output sequence **cross spectrum**, because this node operates on the real and imaginary portions separately.

When the number of samples in the inputs **signal x** and **signal y** are equal and are a valid power of 2, such that
$n=m={2}^{k}$ for *k* = 1, 2, 3,..., 23, this node makes direct calls to the FFT routine to compute the complex cross power sequence. This technique is efficient in both execution time and memory management because this node performs the operations in place.

When the number of samples in the inputs **signal x** and **signal y** are not equal, this node first resizes the smaller sequence by padding it with zeros to match the size of the larger sequence. If this size is a valid power of 2, such that
$\mathrm{max}(n,m)={2}^{k}$ for *k* = 1, 2, 3,..., 23, this node computes the cross power spectrum using the FFT. Otherwise, this node uses the slower DFT to compute the cross power spectrum. Thus, the size of the complex output sequence is defined by
$\text{size}=\mathrm{max}(n,m)$.

**Where This Node Can Run: **

Desktop OS: Windows

FPGA: Not supported

Web Server: Not supported in VIs that run in a web application