dpnp.linalg.cholesky
- dpnp.linalg.cholesky(a, /, *, upper=False)[source]
Cholesky decomposition.
Return the lower or upper Cholesky decomposition,
L * L.H
orU.H * U
, of the square matrixa
, whereL
is lower-triangular,U
is upper-triangular, and.H
is the conjugate transpose operator (which is the ordinary transpose ifa
is real-valued).a
must be Hermitian (symmetric if real-valued) and positive-definite. No checking is performed to verify whethera
is Hermitian or not. In addition, only the lower or upper-triangular and diagonal elements ofa
are used. OnlyL
orU
is actually returned.For full documentation refer to
numpy.linalg.cholesky
.- Parameters:
a ((..., M, M) {dpnp.ndarray, usm_ndarray}) -- Hermitian (symmetric if all elements are real), positive-definite input matrix.
upper ({bool}, optional) -- If
True
, the result must be the upper-triangular Cholesky factor. IfFalse
, the result must be the lower-triangular Cholesky factor. Default:False
.
- Returns:
L -- Lower or upper-triangular Cholesky factor of a.
- Return type:
(..., M, M) dpnp.ndarray
Examples
>>> import dpnp as np >>> A = np.array([[1.0, 2.0],[2.0, 5.0]]) >>> A array([[1., 2.], [2., 5.]]) >>> L = np.linalg.cholesky(A) >>> L array([[1., 0.], [2., 1.]]) >>> np.dot(L, L.T.conj()) # verify that L * L.H = A array([[1., 2.], [2., 5.]])
The upper-triangular Cholesky factor can also be obtained:
>>> np.linalg.cholesky(A, upper=True) array([[ 1.+0.j, -0.-2.j], [ 0.+0.j, 1.+0.j]]