Computes the LU decomposition of one or more square matrices.
The input is a tensor of shape `[..., M, M]` whose inner-most 2 dimensions form square matrices.
The input has to be invertible.
The output consists of two tensors LU and P containing the LU decomposition of all input submatrices `[..., :, :]`. LU encodes the lower triangular and upper triangular factors.
For each input submatrix of shape `[M, M]`, L is a lower triangular matrix of shape `[M, M]` with unit diagonal whose entries correspond to the strictly lower triangular part of LU. U is a upper triangular matrix of shape `[M, M]` whose entries correspond to the upper triangular part, including the diagonal, of LU.
P represents a permutation matrix encoded as a list of indices each between `0` and `M-1`, inclusive. If P_mat denotes the permutation matrix corresponding to P, then the L, U and P satisfies P_mat * input = L * U.
Public Methods
static <T, U extends Number> Lu <T, U> | |
static <T> Lu <T, Integer> | |
Output <T> |
lu
()
A tensor of shape `[..., M, M]` whose strictly lower triangular part denotes the
lower triangular factor `L` with unit diagonal, and whose upper triangular part
denotes the upper triangular factor `U`.
|
Output <U> |
p
()
Permutation of the rows encoded as a list of indices in `0..M-1`.
|
Inherited Methods
Public Methods
public static Lu <T, U> create ( Scope scope, Operand <T> input, Class<U> outputIdxType)
Factory method to create a class wrapping a new Lu operation.
Parameters
scope | current scope |
---|---|
input | A tensor of shape `[..., M, M]` whose inner-most 2 dimensions form matrices of size `[M, M]`. |
Returns
- a new instance of Lu
public static Lu <T, Integer> create ( Scope scope, Operand <T> input)
Factory method to create a class wrapping a new Lu operation using default output types.
Parameters
scope | current scope |
---|---|
input | A tensor of shape `[..., M, M]` whose inner-most 2 dimensions form matrices of size `[M, M]`. |
Returns
- a new instance of Lu
public Output <T> lu ()
A tensor of shape `[..., M, M]` whose strictly lower triangular part denotes the lower triangular factor `L` with unit diagonal, and whose upper triangular part denotes the upper triangular factor `U`.
public Output <U> p ()
Permutation of the rows encoded as a list of indices in `0..M-1`. Shape is `[..., M]`.