covmats.get_linop_eigen_factorization#

covmats.get_linop_eigen_factorization(linop: LinearOperator, size: int, n_pc: int, random_state: int | RandomState | Generator | None = None) Tuple[ndarray[tuple[Any, ...], dtype[float64]], ndarray[tuple[Any, ...], dtype[float64]]][source]#

Compute Eigenmodes of the covariance.

Parameters:
  • linop (LinearOperator) – The covariance matrix as a linear operator to factorize.

  • size (int) – Input vector size for the linear operator.

  • n_pc (int) – Number of principal component in the matrix.

  • random_state (Optional[Union[int, np.random.Generator, np.random.RandomState]]) – Pseudorandom number generator state used to generate resamples. If random_state is None (or np.random), the numpy.random.RandomState singleton is used. If random_state is an int, a new RandomState instance is used, seeded with random_state. If random_state is already a Generator or RandomState instance then that instance is used.

Raises:

NotImplementedError – If a method difference from arpack is used for decomposition.

Returns:

Eigen values and eigen vectors.

Return type:

Tuple[NDArrayFloat, NDArrayFloat]