cupyx.scipy.linalg.lu#
- cupyx.scipy.linalg.lu(a, permute_l=False, overwrite_a=False, check_finite=True)[source]#
LU 分解。
将给定的二维矩阵分解为
P @ L @ U
,其中P
是置换矩阵,L
是具有单位对角线的下三角或梯形矩阵,U
是上三角或梯形矩阵。- 参数:
a (cupy.ndarray) – 输入矩阵,维度为
(M, N)
。permute_l (bool) – 如果为
True
,执行乘法P @ L
。overwrite_a (bool) – 允许覆盖
a
中的数据(可能提高性能)check_finite (bool) – 是否检查输入矩阵仅包含有限数。禁用此选项可能带来性能提升,但如果输入包含无穷大或 NaN,则可能导致问题(崩溃、无法终止)。
- 返回值:
如果
permute_l == False
,则返回(P, L, U)
,否则返回(PL, U)
。P
是一个cupy.ndarray
,存储维度为(M, M)
的置换矩阵。L
是一个cupy.ndarray
,存储维度为(M, K)
的具有单位对角线的下三角或梯形矩阵,其中K = min(M, N)
。U
是一个cupy.ndarray
,存储维度为(K, N)
的上三角或梯形矩阵。PL
是一个cupy.ndarray
,存储维度为(M, K)
的置换后的L
矩阵。- 返回类型:
另请参阅