riecovest.covariance_estimation.est_covariance_manifold

riecovest.covariance_estimation.est_covariance_manifold(ambient_dim, rank, cost, manifold, start_value=None)

Generic function for estimating a signal and noise covariance matrix on a Riemannian manifold.

Assumes that the signal covariance matrix is low-rank and the noise covariance matrix is full-rank. Specifically that the signal covariance matrix is returned in the form of X, where R_x = X @ X^H.

Parameters:
  • ambient_dim (int) – Dimension of the covariance matrices.

  • rank (int) – Rank of the signal covariance matrix.

  • cost (function) – Cost function to minimize. Must be compatible with pymanopt.function.jax.

  • manifold – Riemannian manifold to optimize over. Must be compatible with pymanopt.manifolds.

  • start_value (tuple of ndarrays, optional) – Initial value for the optimization. If None, the optimization starts from a random point.

Returns:

  • Rx (ndarray of shape (ambient_dim, ambient_dim)) – Estimated signal covariance matrix.

  • Rv (ndarray of shape (ambient_dim, ambient_dim)) – Estimated noise covariance matrix.