pwelch
Welch’s power spectral density estimate
Syntax
Description
returns
the power spectral density (PSD) estimate, pxx
= pwelch(x
)pxx
,
of the input signal, x
, found using Welch's overlapped
segment averaging estimator. When x
is a vector,
it is treated as a single channel. When x
is
a matrix, the PSD is computed independently for each column and stored
in the corresponding column of pxx
. If x
is
real-valued, pxx
is a one-sided PSD estimate.
If x
is complex-valued, pxx
is
a two-sided PSD estimate. By default, x
is divided
into the longest possible segments to obtain as close to but not exceed
8 segments with 50% overlap. Each segment is windowed with a Hamming
window. The modified periodograms are averaged to obtain the PSD estimate.
If you cannot divide the length of x
exactly
into an integer number of segments with 50% overlap, x
is
truncated accordingly.
uses
the input vector or integer, pxx
= pwelch(x
,window
)window
, to divide
the signal into segments. If window
is a vector, pwelch
divides
the signal into segments equal in length to the length of window
.
The modified periodograms are computed using the signal segments multiplied
by the vector, window
. If window
is
an integer, the signal is divided into segments of length window
.
The modified periodograms are computed using a Hamming window of length window
.
uses pxx
= pwelch(x
,window
,noverlap
) noverlap
samples
of overlap from segment to segment. noverlap
must
be a positive integer smaller than window
if window
is
an integer. noverlap
must be a positive integer
less than the length of window
if window
is
a vector. If you do not specify noverlap
, or
specify noverlap
as empty, the default number
of overlapped samples is 50% of the window length.
[
returns a frequency vector, pxx
,f
] = pwelch(___,fs
)f
, in cycles per unit time. The
sample rate, fs
, is the number of samples per unit time. If
the unit of time is seconds, then f
is in cycles/sec (Hz).
For real–valued signals, f
spans the interval
[0,fs
/2] when nfft
is even and
[0,fs
/2) when nfft
is odd. For
complex-valued signals, f
spans the interval
[0,fs
). fs
must be the fifth input
to pwelch
. To input a sample rate and still use the default
values of the preceding optional arguments, specify these arguments as empty,
[]
.
[
returns the two-sided Welch PSD estimates at the frequencies specified in the
vector, pxx
,f
] = pwelch(x
,window
,noverlap
,f
,fs
)f
. The vector f
must contain
at least two elements, because otherwise the function interprets it as
nfft
. The frequencies in f
are in
cycles per unit time. The sample rate, fs
, is the number of
samples per unit time. If the unit of time is seconds, then
f
is in cycles/sec (Hz).
[___,
returns
the pxxc
] = pwelch(___,'ConfidenceLevel',probability
)probability
× 100%
confidence intervals for the PSD estimate in pxxc
.
[___] = pwelch(___,
returns the PSD estimate if spectrumtype
)spectrumtype
is specified as
'psd'
and returns the power spectrum if
spectrumtype
is specified as
'power'
.
pwelch(___)
with no output
arguments plots the Welch PSD estimate in the current figure window.
Examples
Input Arguments
Output Arguments
More About
References
[1] Hayes, Monson H. Statistical Digital Signal Processing and Modeling. New York: John Wiley & Sons, 1996.
[2] Stoica, Petre, and Randolph Moses. Spectral Analysis of Signals. Upper Saddle River, NJ: Prentice Hall, 2005.