fips.linalg.KroneckerOperator.sqrt#
- KroneckerOperator.sqrt()[source]#
Return a square root \(R\) with \(R R^T\) equal to the operator, through the factors.
When the rows are the whole product, in any order, \(R = D P (L_1 \otimes \dots \otimes L_K) P^T\), where \(L_k\) is the lower Cholesky factor of \(C_k\): since \(P\) is then a permutation, \(R R^T = S\). It is applied through the factors, as the operator is, and never formed. For a strict subset of the product, \(P^T P\) is not the identity, so the dense matrix is factored (
LinearOperator.sqrt()).- Returns:
\(R\), square.
- Return type:
- Raises:
numpy.linalg.LinAlgError – If a factor is not positive-definite or a standard deviation is zero.