Root MUSIC algorithm
W
= rootmusic(X
,P
)
[W
,POW
]
= rootmusic(X
,P
)
[F
, POW
]
= rootmusic(...,Fs
)
[W
,POW
]
= rootmusic(...,'corr')
returns
the frequencies in radians/sample for the W
= rootmusic(X
,P
)P
complex
exponentials (sinusoids) that make up the signal X
.
The input X
is specified either as:
A row or column vector representing one realization of 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 matrix
[
returns
the estimated absolute value squared amplitudes of the sinusoids at
the frequencies W
,POW
]
= rootmusic(X
,P
)W
.
The second input argument, P
is the number
of complex sinusoids in X
. You can specify P
as
either:
A positive integer. In this case, the signal subspace
dimension is P
.
A two-element vector. In this case, P(2)
,
the second element of P
, represents a threshold
that is multiplied by λ_{min}, the smallest
estimated eigenvalue of the signal's correlation matrix. Eigenvalues
below the threshold λ_{min}*P(2)
are
assigned to the noise subspace. In this case, P(1)
specifies
the maximum dimension of the signal subspace.
The extra threshold parameter in the second entry in P
provides
you more flexibility and control in assigning the noise and signal
subspaces.
The length of the vector W
is the computed
dimension of the signal subspace. For real-valued input data X
,
the length of the corresponding power vector POW
is
given by
length(POW) = 0.5*length(W)
For complex-valued input data X
, POW
and W
have
the same length.
[
returns
the vector of frequencies F
, POW
]
= rootmusic(...,Fs
)F
calculated in Hz.
You supply the sampling frequency Fs
in Hz. If
you specify Fs
with the empty vector []
,
the sampling frequency defaults to 1 Hz.
[
forces the input argument W
,POW
]
= rootmusic(...,'corr')X
to
be interpreted as a correlation matrix rather than a matrix of signal
data. For this syntax, you must supply a square matrix for X
,
and all of its eigenvalues must be nonnegative. You can place the 'corr'
string
anywhere after the P
input argument.
Note
You can use the output of |
If the input signal, x
is real and an odd
number of sinusoids, p
is specified, the following
error message is displayed:
Real signals require an even number p of complex sinusoids.