org.apache.commons.math.linear

## Interface LUDecomposition

• All Known Implementing Classes:
LUDecompositionImpl

`public interface LUDecomposition`
An interface to classes that implement an algorithm to calculate the LU-decomposition of a real matrix.

The LU-decomposition of matrix A is a set of three matrices: P, L and U such that P×A = L×U. P is a rows permutation matrix that is used to rearrange the rows of A before so that it can be decomposed. L is a lower triangular matrix with unit diagonal terms and U is an upper triangular matrix.

This interface is based on the class with similar name from the JAMA library.

Since:
2.0
MathWorld, Wikipedia
• ### Method Summary

All Methods
Modifier and Type Method and Description
`double` `getDeterminant()`
Return the determinant of the matrix
`RealMatrix` `getL()`
Returns the matrix L of the decomposition.
`RealMatrix` `getP()`
Returns the P rows permutation matrix.
`int[]` `getPivot()`
Returns the pivot permutation vector.
`DecompositionSolver` `getSolver()`
Get a solver for finding the A × X = B solution in exact linear sense.
`RealMatrix` `getU()`
Returns the matrix U of the decomposition.
• ### Method Detail

• #### getL

`RealMatrix getL()`
Returns the matrix L of the decomposition.

L is an lower-triangular matrix

Returns:
the L matrix (or null if decomposed matrix is singular)
• #### getU

`RealMatrix getU()`
Returns the matrix U of the decomposition.

U is an upper-triangular matrix

Returns:
the U matrix (or null if decomposed matrix is singular)
• #### getP

`RealMatrix getP()`
Returns the P rows permutation matrix.

P is a sparse matrix with exactly one element set to 1.0 in each row and each column, all other elements being set to 0.0.

The positions of the 1 elements are given by the `pivot permutation vector`.

Returns:
the P rows permutation matrix (or null if decomposed matrix is singular)
`getPivot()`
• #### getPivot

`int[] getPivot()`
Returns the pivot permutation vector.
Returns:
the pivot permutation vector
`getP()`
• #### getDeterminant

`double getDeterminant()`
Return the determinant of the matrix
Returns:
determinant of the matrix
• #### getSolver

`DecompositionSolver getSolver()`
Get a solver for finding the A × X = B solution in exact linear sense.
Returns:
a solver