cupyx.scipy.linalg.lu_factor(a, overwrite_a=False, check_finite=True)[source]#

LU decomposition.

Decompose a given two-dimensional square matrix into P * L * U, where P is a permutation matrix, L lower-triangular with unit diagonal elements, and U upper-triangular matrix.

  • a (cupy.ndarray) – The input matrix with dimension (M, N)

  • overwrite_a (bool) – Allow overwriting data in a (may enhance performance)

  • check_finite (bool) – Whether to check that the input matrices contain only finite numbers. Disabling may give a performance gain, but may result in problems (crashes, non-termination) if the inputs do contain infinities or NaNs.


(lu, piv) where lu is a cupy.ndarray storing U in its upper triangle, and L without unit diagonal elements in its lower triangle, and piv is a cupy.ndarray storing pivot indices representing permutation matrix P. For 0 <= i < min(M,N), row i of the matrix was interchanged with row piv[i]

Return type: