Interface QRPDecomposition<T extends Matrix>
- All Superinterfaces:
DecompositionInterface<T>,QRDecomposition<T>
- All Known Subinterfaces:
QRPDecomposition_F32<T>,QRPDecomposition_F64<T>
- All Known Implementing Classes:
QRColPivDecompositionHouseholderColumn_DDRM,QRColPivDecompositionHouseholderColumn_FDRM
Similar to QRDecomposition but it can handle the rank deficient case by
performing column pivots during the decomposition. The final decomposition has the
following structure:
A*P=Q*R
where A is the original matrix, P is a pivot matrix, Q is an orthogonal matrix, and R is
upper triangular.
-
Method Summary
Modifier and TypeMethodDescriptionCreates the column pivot matrix.int[]Ordering of each column after pivoting.intgetRank()Returns the rank as determined by the algorithm.Methods inherited from interface org.ejml.interfaces.decomposition.DecompositionInterface
decompose, inputModifiedMethods inherited from interface org.ejml.interfaces.decomposition.QRDecomposition
getQ, getR
-
Method Details
-
getRank
int getRank()Returns the rank as determined by the algorithm. This is dependent upon a fixed threshold and might not be appropriate for some applications.- Returns:
- Matrix's rank
-
getColPivots
int[] getColPivots()Ordering of each column after pivoting. The current column i was original at column pivot[i].- Returns:
- Order of columns.
-
getColPivotMatrix
Creates the column pivot matrix.- Parameters:
P- Optional storage for pivot matrix. If null a new matrix will be created.- Returns:
- The pivot matrix.
-