fips.Covariance.sqrt#

Covariance.sqrt()[source]#

Return a square root \(L\), with \(L L^T = S\).

A diagonal covariance gives the diagonal of standard deviations, a block diagonal one the root of each block, and a Kronecker one whose rows are its whole grid a root applied through its factors. Any other form, a Kronecker one on a subset of its grid among them, gives the lower Cholesky factor of its dense matrix. \(L\) maps independent unit variables, one per label, to the covariance’s space: L @ w with w standard normal is a draw from \(N(0, S)\).

Returns:

\(L\), with the covariance’s space on both axes.

Return type:

Operator

Raises:

numpy.linalg.LinAlgError – If the covariance is not positive-definite.

See also

sample

A draw, made without forming \(L\) where a form has a cheaper root.