cholesky¶
- cholesky(x: array, /, *, upper: bool = False) array ¶
Returns the lower (upper) Cholesky decomposition of a complex Hermitian or real symmetric positive-definite matrix
x
.If
x
is real-valued, let \(\mathbb{K}\) be the set of real numbers \(\mathbb{R}\), and, ifx
is complex-valued, let \(\mathbb{K}\) be the set of complex numbers \(\mathbb{C}\).The lower Cholesky decomposition of a complex Hermitian or real symmetric positive-definite matrix \(x \in\ \mathbb{K}^{n \times n}\) is defined as
\[x = LL^{H} \qquad \text{L $\in\ \mathbb{K}^{n \times n}$}\]where \(L\) is a lower triangular matrix and \(L^{H}\) is the conjugate transpose when \(L\) is complex-valued and the transpose when \(L\) is real-valued.
The upper Cholesky decomposition is defined similarly
\[x = U^{H}U \qquad \text{U $\in\ \mathbb{K}^{n \times n}$}\]where \(U\) is an upper triangular matrix.
When
x
is a stack of matrices, the function must compute the Cholesky decomposition for each matrix in the stack.Note
Whether an array library explicitly checks whether an input array is Hermitian or a symmetric positive-definite matrix (or a stack of matrices) is implementation-defined.
- Parameters:
x (array) – input array having shape
(..., M, M)
and whose innermost two dimensions form square complex Hermitian or real symmetric positive-definite matrices. Should have a floating-point data type.upper (bool) – If
True
, the result must be the upper-triangular Cholesky factor \(U\). IfFalse
, the result must be the lower-triangular Cholesky factor \(L\). Default:False
.
- Returns:
out (array) – an array containing the Cholesky factors for each square matrix. If
upper
isFalse
, the returned array must contain lower-triangular matrices; otherwise, the returned array must contain upper-triangular matrices. The returned array must have a floating-point data type determined by Type Promotion Rules and must have the same shape asx
.
Notes
Changed in version 2022.12: Added complex data type support.