Calculate the MUSIC Covariance Matrix for each Given Cell Range and Doppler Bin
Source:R/SeaSondeRCS_MUSIC.R
seasonder_MUSICComputeCov.Rd
This function computes the Multiple Signal Classification (MUSIC) covariance matrix for each cell range and Doppler bin from SeaSonde Cross Spectra (CS) data. The MUSIC algorithm is used in direction finding and spectral estimation.
Value
A SeaSondeRCS object updated with a computed 3x3 complex covariance matrix for each cell range and Doppler bin.
The covariance matrix is stored in the MUSIC data field. Each matrix element \(C_{ij}\) is calculated
based on auto-spectra (for diagonal elements) or cross-spectra (for off-diagonal elements).
- Diagonal elements (\(i = j\)) are derived from auto-spectra SSA{i}
.
- Off-diagonal elements (\(i \neq j\)) are derived from cross-spectra CSij
.
- Auto-spectra values for the third antenna (SSA3
) are taken as absolute values to comply
with CODAR's recommendation to handle negative values indicating noise or interference.
Details
The MUSIC algorithm estimates the direction of arrival (DOA) of signals, requiring the computation of a
covariance matrix from sensor data. This function constructs the covariance matrix by iterating through
the auto-spectra (SSA{i}
) and cross-spectra (CSij
) fields of the cross-spectra data.
For diagonal elements (\(i = j\)), the matrix uses data from the auto-spectra field corresponding to
the antenna index (SSA1
, SSA2
, or SSA3
). Negative values in SSA3
, which
indicate noise or interference, are converted to their absolute values before use, as per the
Cross Spectra File Format Version 6 guidelines.
Off-diagonal elements (\(i \neq j\)) are derived from cross-spectra fields, such as CS12
or CS23
.
If the row index is greater than the column index, the conjugate of the value is used.