Package: dsp
Estimate power spectrum or powerdensity spectrum
The dsp.SpectrumEstimator
computes the power
spectrum or the powerdensity spectrum of a signal, using the Welch
algorithm and the Periodogram method. The spectrum can be expressed
in Watts or in decibels. This object can also estimate the maxhold
and minhold spectra of the signal.
To implement the spectrum estimation object:
Define and set up your spectrum estimator object. See Construction.
Call step
to implement the estimator
according to the properties of dsp.SpectrumEstimator
.
The behavior of step
is specific to each object in
the toolbox.
SE = dsp.SpectrumEstimator
returns
a System object™, SE
, that computes the frequency
power spectrum or the powerdensity spectrum of real or complex signals.
This System object uses the periodogram method and Welch's
averaged, modified periodogram method.
SE = dsp.SpectrumEstimator('
returns
a PropertyName
',PropertyValue
,...)Spectrum Estimator
System object, SE
,
with each specified property name set to the specified value. You
can specify additional namevalue pair arguments in any order as (Name1,Value1
, ..., NameN,ValueN
).

Sample rate of input Specify the sample rate of the input in, hertz, as a finite
numeric scalar. The default value is 

Spectrum type Specify the spectrum type as one of 

Number of spectral averages Specify the number of spectral averages as a positive, integer
scalar. The Spectrum Estimator computes the current power spectrum
or powerdensity spectrum estimate by averaging the last 

Source of the FFT length value Specify the source of the FFT length value as one of 

FFT Length Specify the length of the FFT that the Spectrum Estimator uses
to compute spectral estimates as a positive, integer scalar. This
property applies when you set the 

Window function Specify a window function for the spectral estimator as one
of 

Side lobe attenuation of window Specify the side lobe attenuation of the window as a real, positive
scalar, in decibels (dB). This property applies when you set the 

Frequency range of the spectrum estimate Specify the frequency range of the spectrum estimator as one
of If you set the If you set the If you set the The default value is 

Power units Specify the units used to measure power as one of 

Reference load Specify the load that the spectrum estimator uses as a reference
to compute power values as a real, positive scalar in ohms. The default
value is 

Output maxhold spectrum Set this property to 

Output minhold spectrum Set this property to 
clone  Create spectrum estimator object with same property values 
getFrequencyVector  Get the vector of frequencies at which the spectrum is estimated 
getRBW  Get the resolution bandwidth of the spectrum 
isLocked  Locked status for input attributes and nontunable properties 
reset  Reset the internal states of the spectrum estimator 
step  Estimate the power spectrum or powerdensity spectrum of a signal 
Let x
be the input frame. We first multiply x
by
the window, and scale it by the window power. We then take FFT of
the signal, calling it Y
, and take the square magnitude
using Z = Y*conj(Y)
. We average the last N Z
s
and scale the answer by the sample rate.
For further information refer to the Algorithms section in Spectrum Analyzer, which uses the same algorithm.
[1] Hayes, Monson H. Statistical Digital Signal Processing and Modeling. Hoboken, NJ: John Wiley & Sons, 1996
[2] Kay, Steven M. Modern Spectral Estimation: Theory and Application. Englewood Cliffs, NJ: Prentice Hall, 1999
[3] Stoica, Petre and Randolph L. Moses. Spectral Analysis of Signals. Upper Saddle River, NJ: Prentice Hall, 2005
[4] Welch, P. D. "The use of fast Fourier transforms for the estimation of power spectra: A method based on time averaging over short modified periodograms," IEEE Transactions on Audio and Electroacoustics, Vol. 15, 1967, pp. 70–73.