pmusicComputes Psuedospectrum using MUSIC algorithmCalling Sequence
[S,w] = pmusic(x,p)
[S,w] = pmusic(x,p,w)
[S,w] = pmusic(x,p,nfft)
[S,w] = pmusic(x,p,nfft,fs)
[S,w] = pmusic(x,p,f,fs)
[S,f] = pmusic(...,'corr')
[S,f] = pmusic(x,p,nfft,fs,nwin,noverlap)
[...] = pmusic(...,freqrange)
[...,v,e] = pmusic(...)
Parametersx: int|double - vector|matrixInput signal. In case of a matrix, each row of x represents a
seperate observation of the signal. If 'corr' flag is specified,
then x is the correlation matrix.
If w is not specified in the input, it is determined by the
algorithm. If x is real valued, then range of w is [0, pi].
Otherwise, the range of w is [0, 2pi)p: int|double - scalar|vectorp(1) is the dimension of the signal subspace
p(2), if specified, represents a threshold that is multiplied by
the smallest estimated eigenvalue of the signal's correlation matrix.w: int|double - vectorw is the vector of normalized frequencies over which the
pseuspectrogram is to be computed.nfft: int - scalar (Default = 256)Length of the fft used to compute pseudospectrum. The length of S
(and hence w/f) depends on the type of values in x and nfft.
If x is real, length of s is (nfft/2 + 1) {Range of w = [0, pi]} if
nfft is even and (nfft+1)/2 {Range of w = [0, pi)} otherwise.
If x is complex, length of s is nfft.fs: int|double - scalar (Default = 1)Sampling rate. Used to convert the normalized frequencies (w) to
actual values (f) and vice-versa.nwin: int|double - scalar (int only)|vector (Default = 2*p(1)) If nwin is scalar, it is the length of the rectangular window.
Otherwise, the vector input is considered as the window coefficients.
Not used if 'corr' flag present.noverlap: int - scalar (Default = nwin-1) number of points by which successive windows overlap. noverlap not
used if x is a matrixfreqrange: stringThe range of frequencies over which the pseudospetrogram is
computed. Three possible values - 'onesided', 'twosided', 'centered'
'corr' flag
Presence indicates that the primary input x is actually a
correlation matrix
Description[S,w] = pmusic(x,p) implements the MUSIC (Multiple Signal Classification) algorithm and returns S, the pseudospectrum estimate of the input signal x, and a vector w of normalized frequencies (in rad/sample) at which the pseudospectrum is evaluated. The pseudospectrum is calculated using estimates of the eigenvectors of a correlation matrix associated with the input data x, where x is specified as either: A row or column vector representing one observation of the signal
A rectangular array for which each row of x represents a separate observation of the signal (for example, each row is one output of an array of sensors, as in array processing), such that x'*x is an estimate of the correlation matrixExamplesSee alsopburg| peig | periodogram | pmtm | prony | pwelch | rooteig | rootmusicAuthorsAyush BaidReferences[1] Petre Stoica and Randolph Moses, Introduction To SpectralAnalysis, Prentice-Hall, 1997, pg. 15[2] S. J. Orfanidis, Optimum Signal Processing. An Introduction.2nd Ed., Macmillan, 1988.