public static interface MatrixDecomposition.RankRevealing<N extends Number> extends MatrixDecomposition.Ordered<N>
The defintion that [X] and [Y] should be well conditioned is subject to interpretation. A specific
decomposition algorithm can be more or less good at revealing the rank. Typically the
SingularValue
decomposition is the best.
The requirement to have the diagonal elements of [D] ordered can be very practical, but is not always
strictly necessary in order to just reveal the rank. The method MatrixDecomposition.Ordered.isOrdered()
indicates if the
elements (rows and columns) of the returned matrix factors actually are ordered or not for this
particular implementation.
MatrixDecomposition.Determinant<N extends Number>, MatrixDecomposition.EconomySize<N extends Number>, MatrixDecomposition.Factory<D extends MatrixDecomposition<?>>, MatrixDecomposition.Hermitian<N extends Number>, MatrixDecomposition.Ordered<N extends Number>, MatrixDecomposition.RankRevealing<N extends Number>, MatrixDecomposition.Solver<N extends Number>, MatrixDecomposition.Values<N extends Number>
TYPICAL
Modifier and Type | Method and Description |
---|---|
int |
getRank()
The best (and most expensive) way to get the effective numerical rank is by calculating a
SingularValue decomposition and then find the number of nonnegligible singular values. |
boolean |
isFullRank() |
isOrdered
decompose, isComputed, reconstruct, reset
int getRank()
SingularValue
decomposition and then find the number of nonnegligible singular values.boolean isFullRank()
Copyright © 2018 Optimatika. All rights reserved.