Table Of Contents

Cross Spectrum (Complex » Continuous) (G Dataflow)

Version:
    Last Modified: March 15, 2017

    Computes the averaged cross power spectrum of two signals.

    connector_pane_image
    datatype_icon

    window parameter

    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

    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

    datatype_icon

    window type

    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

    datatype_icon

    restart averaging

    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

    datatype_icon

    signal x

    First input signal.

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

    datatype_icon

    signal y

    Second input signal.

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

    datatype_icon

    averaging parameters

    Settings that define how this node computes the averaging.

    datatype_icon

    averaging mode

    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

    datatype_icon

    weighting mode

    Weighting mode for RMS and vector averaging.

    Name Description
    Linear Uses linear weighting.
    Exponential Uses exponential weighting.

    Default: Exponential

    datatype_icon

    number of averages

    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

    datatype_icon

    error in

    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.

    error in does not contain an error error in contains an error
    If no error occurred before the node runs, the node begins execution normally.

    If no error occurs while the node runs, it returns no error. If an error does occur while the node runs, it returns that error information as error out.

    If an error occurred before the node runs, the node does not execute. Instead, it returns the error in value as error out.

    Default: No error

    datatype_icon

    dt

    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 a 1D array of double-precision, floating-point numbers to signal x or signal y.

    Default: 1

    datatype_icon

    cross spectrum

    Averaged cross power spectrum of the input signals.

    datatype_icon

    f0

    Start frequency, in Hz, of the spectrum.

    datatype_icon

    df

    Frequency resolution, in Hz, of the spectrum.

    datatype_icon

    spectrum

    Averaged cross power spectrum of the signals.

    datatype_icon

    averaging done

    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.

    datatype_icon

    averages completed

    Number of averages this node completed.

    datatype_icon

    error out

    Error information.

    The node produces this output 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.

    error in does not contain an error error in contains an error
    If no error occurred before the node runs, the node begins execution normally.

    If no error occurs while the node runs, it returns no error. If an error does occur while the node runs, it returns that error information as error out.

    If an error occurred before the node runs, the node does not execute. Instead, it returns the error in value as error out.

    Algorithm for Calculating the Cross Power Spectrum

    The cross power, S x y ( f ) , of the signals x(t) and y(t) is defined as

    S x y ( f ) = X * ( f ) Y ( f )

    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 x y = 1 n 2 F * { X } F { Y }

    where Sxy 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 223 (8,388,608 or 8M).

    spd-note-note
    Note  

    Some textbooks define the cross power spectrum as S x y ( f ) = X ( f ) Y * ( f ) . 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.

    How the Number of Samples Affects this Node

    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 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 size = max ( n , m ) .

    Where This Node Can Run:

    Desktop OS: Windows

    FPGA: This product does not support FPGA devices


    Recently Viewed Topics