Sensor spatial covariance matrix
the sensor spatial covariance matrix,
xcov = sensorcov(
narrowband plane wave signals arriving at a sensor array. The sensor
array is defined by the sensor positions specified in the
The signal arrival directions are specified by azimuth and elevation
angles in the
ang argument. In this syntax, the
noise power is assumed to be zero at all sensors, and the signal power
is assumed to be unity for all signals.
in addition, the spatial noise covariance matrix,
xcov = sensorcov(
This value represents the noise power on each sensor as well as the
correlation of the noise between sensors. In this syntax, the signal
power is assumed to be unity for all signals. This syntax can use
any of the input arguments in the previous syntax.
Covariance Matrix for Two Signals Without Noise
Create a covariance matrix for a 3-element, half-wavelength-spaced uniform line array. Use the default syntax, which assumes no noise power and unit signal power.
N = 3; d = 0.5; elementPos = (0:N-1)*d; xcov = sensorcov(elementPos,[30 60])
xcov = 3×3 complex 2.0000 + 0.0000i -0.9127 - 1.4086i -0.3339 + 0.7458i -0.9127 + 1.4086i 2.0000 + 0.0000i -0.9127 - 1.4086i -0.3339 - 0.7458i -0.9127 + 1.4086i 2.0000 + 0.0000i
The diagonal terms of the matrix represent the sum of the two signal powers.
Covariance Matrix for Two Independent Signals with 10 dB SNR
Create a spatial covariance matrix for a 3-element, half-wavelength-spaced uniform line array. Assume there are two incoming signals with unit power and there is additive noise with –10 dB power.
N = 3; d = 0.5; elementPos = (0:N-1)*d; xcov = sensorcov(elementPos,[30 35],db2pow(-10))
xcov = 3×3 complex 2.1000 + 0.0000i -0.2291 - 1.9734i -1.8950 + 0.4460i -0.2291 + 1.9734i 2.1000 + 0.0000i -0.2291 - 1.9734i -1.8950 - 0.4460i -0.2291 + 1.9734i 2.1000 + 0.0000i
The diagonal terms represent the two signal powers plus noise power at each sensor.
Covariance Matrix for Two Correlated Signals with 10 dB SNR
Compute the covariance matrix for a 3-element half-wavelength spaced line array when there is some correlation between two signals. The correlation can model, for example, multipath propagation caused by reflection from a surface. Assume an additive noise power value of –10 dB.
N = 3; d = 0.5; elementPos = (0:N-1)*d; scov = [1, 0.8; 0.8, 1]; xcov = sensorcov(elementPos,[30 35],db2pow(-10),scov)
xcov = 3×3 complex 3.7000 + 0.0000i -0.4124 - 3.5521i -3.4111 + 0.8028i -0.4124 + 3.5521i 3.6574 + 0.0000i -0.4026 - 3.4682i -3.4111 - 0.8028i -0.4026 + 3.4682i 3.5321 + 0.0000i
ncov — Noise spatial covariance matrix
0 (default) | non-negative real-valued scalar | 1-by-N non-negative real-valued
vector | N-by-N positive definite,
Noise spatial covariance matrix specified as a non-negative,
real-valued scalar, a non-negative, 1-by-N real-valued
vector or an N-by-N, positive
definite, complex-valued matrix. In this argument, N is
the number of sensor elements. Using a non-negative scalar results
in a noise spatial covariance matrix that has identical white noise
power values (in watts) along its diagonal and has off-diagonal values
of zero. Using a non-negative real-valued vector results in a noise
spatial covariance that has diagonal values corresponding to the entries
ncov and has off-diagonal entries of zero.
The diagonal entries represent the independent white noise power values
(in watts) in each sensor. If
ncov is N-by-N matrix,
this value represents the full noise spatial covariance matrix between
all sensor elements.
Complex Number Support: Yes
scov — Signal covariance matrix
1 (default) | non-negative real-valued scalar | 1-by-M non-negative real-valued
vector | N-by-M positive semidefinite,
Signal covariance matrix specified as a non-negative, real-valued
scalar, a 1-by-M non-negative,
real-valued vector or an M-by-M positive
semidefinite, matrix representing the covariance matrix between M signals.
The number of signals is specified in
a nonnegative scalar, it assigns the same power (in watts) to all
incoming signals which are assumed to be uncorrelated. If
a 1-by-M vector, it assigns the separate power
values (in watts) to each incoming signal which are also assumed to
be uncorrelated. If
scov is an M-by-M matrix,
then it represents the full covariance matrix between all incoming
Example: [1 0 ; 0 2]
Complex Number Support: Yes
xcov — Sensor spatial covariance matrix
complex-valued N-by-N matrix
Sensor spatial covariance matrix returned as a complex-valued, N-by-N matrix. In this matrix, N represents the number of sensor elements of the array.
 Van Trees, H.L. Optimum Array Processing. New York, NY: Wiley-Interscience, 2002.
 Johnson, Don H. and D. Dudgeon. Array Signal Processing. Englewood Cliffs, NJ: Prentice Hall, 1993.
 Van Veen, B.D. and K. M. Buckley. “Beamforming: A versatile approach to spatial filtering”. IEEE ASSP Magazine, Vol. 5 No. 2 pp. 4–24.
C/C++ Code Generation
Generate C and C++ code using MATLAB® Coder™.
Usage notes and limitations:
Does not support variable-size inputs.
Introduced in R2013a