Cramér-Rao bounds

API references

doatools.performance.crb.crb_sto_farfield_1d(array, sources, wavelength, p, sigma, n_snapshots=1, return_mode='full')[source]

Computes the stochastic CRB for 1D farfield sources.

Under the stochastic signal model, the source signal is assumed to be complex Gaussian, and the noise signal is assumed complex white Gaussian. The unknown parameters include:

  • Source locations.
  • Real and imaginary parts of the source covariance matrix.
  • Noise variance.

This function only computes the CRB for source locations. Because the unknown parameters do not include array perturbation parameters, all array perturbation parameters are assumed known during the computation.

Parameters:
  • array (ArrayDesign) – Array design.
  • wavelength (float) – Wavelength of the carrier wave.
  • sources (FarField1DSourcePlacement) – Source locations.
  • p (float or ndarray) –

    The power of the source signals. Can be

    1. A scalar if all sources are uncorrelated and share the same power.
    2. A 1D numpy array if all sources are uncorrelated but have different powers.
    3. A 2D numpy array representing the source covariance matrix.
  • sigma (float) – Variance of the additive noise.
  • n_snapshots (int) – Number of snapshots. Default value is 1.
  • return_mode (str) –

    Can be one of the following:

    1. 'full': returns the full CRB matrix.
    2. 'diag': returns only the diagonals of the CRB matrix.
    3. 'mean_diag': returns the mean of the diagonals of the CRB matrix.

    Default value is 'full'.

Returns:

Depending on 'return_mode', can be the full CRB matrix, the diagonals of the CRB matrix, or the mean of the diagonals of the CRB matrix.

References

[1] P. Stoica and A. Nehorai, “Performance study of conditional and unconditional direction-of-arrival estimation,” IEEE Transactions on Acoustics, Speech and Signal Processing, vol. 38, no. 10, pp. 1783-1795, Oct. 1990.

doatools.performance.crb.crb_det_farfield_1d(array, sources, wavelength, P, sigma, n_snapshots=1, return_mode='full')[source]

Computes the deterministic CRB for 1D farfield sources.

Under the deterministic signal model, the source signal is assumed to be deterministic unknown, and the noise signal is assumed complex white Gaussian. The unknown parameters include:

  • Source locations.
  • Real and imaginary parts of the source signals.
  • Noise variance.

This function only computes the CRB for source locations. Because the unknown parameters do not include array perturbation parameters, all array perturbation parameters are assumed known during the computation.

Parameters:
  • array (ArrayDesign) – Array design.
  • wavelength (float) – Wavelength of the carrier wave.
  • sources (FarField1DSourcePlacement) – Source locations.
  • P

    The sample covariance matrix of the source signals. Suppose there are \(T\) snapshots, \(\mathbf{x}(1), \mathbf{x}(2), \ldots, \mathbf{x}(T)\). The sample covariance matrix of the source signals is obtained as follows:

    \[\frac{1}{T} \sum_{t=1}^T \mathbf{x}(t) \mathbf{x}^H(t).\]
  • sigma (float) – Variance of the additive noise.
  • n_snapshots (int) – Number of snapshots. Default value is 1.
  • return_mode (str) –

    Can be one of the following:

    1. 'full': returns the full CRB matrix.
    2. 'diag': returns only the diagonals of the CRB matrix.
    3. 'mean_diag': returns the mean of the diagonals of the CRB matrix.

    Default value is 'full'.

Returns:

Depending on 'return_mode', can be the full CRB matrix, the diagonals of the CRB matrix, or the mean of the diagonals of the CRB matrix.

References

[1] P. Stoica and A. Nehorai, “Performance study of conditional and unconditional direction-of-arrival estimation,” IEEE Transactions on Acoustics, Speech and Signal Processing, vol. 38, no. 10, pp. 1783-1795, Oct. 1990.

doatools.performance.crb.crb_stouc_farfield_1d(array, sources, wavelength, p, sigma, n_snapshots=1, return_mode='full')[source]

Computes the stochastic CRB for 1D farfield sources with the assumption that the sources are uncorrelated.

Under the stochastic signal model, the source signal is assumed to be uncorrelated complex Gaussian, and the noise signal is assumed complex white Gaussian. The unknown parameters include:

  • Source locations.
  • Diagonals of the source covariance matrix.
  • Noise variance.

This function only computes the CRB for source locations. Because the unknown parameters do not include array perturbation parameters, all array perturbation parameters are assumed known during the computation.

Parameters:
  • array (ArrayDesign) – Array design.
  • wavelength (float) – Wavelength of the carrier wave.
  • sources (FarField1DSourcePlacement) – Source locations.
  • p (float or ndarray) –

    The power of the source signals. Can be

    1. A scalar if all sources are uncorrelated and share the same power.
    2. A 1D numpy array if all sources are uncorrelated but have different powers.
    3. A 2D numpy array representing the source covariance matrix. Only the diagonal elements will be used.
  • sigma (float) – Variance of the additive noise.
  • n_snapshots (int) – Number of snapshots. Default value is 1.
  • return_mode (str) –

    Can be one of the following:

    1. 'full': returns the full CRB matrix.
    2. 'diag': returns only the diagonals of the CRB matrix.
    3. 'mean_diag': returns the mean of the diagonals of the CRB matrix.

    Default value is 'full'.

Returns:

Depending on 'return_mode', can be the full CRB matrix, the diagonals of the CRB matrix, or the mean of the diagonals of the CRB matrix.

References

[1] H. L. Van Trees, Optimum array processing. New York: Wiley, 2002.

[2] M. Wang and A. Nehorai, “Coarrays, MUSIC, and the Cramér-Rao Bound,” IEEE Transactions on Signal Processing, vol. 65, no. 4, pp. 933-946, Feb. 2017.

[3] C-L. Liu and P. P. Vaidyanathan, “Cramér-Rao bounds for coprime and other sparse arrays, which find more sources than sensors,” Digital Signal Processing, vol. 61, pp. 43-61, 2017.