|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.ejml.alg.dense.decomposition.svd.SvdImplicitQrDecompose
public class SvdImplicitQrDecompose
Computes the Singular value decomposition of a matrix using the implicit QR algorithm for singular value decomposition. It works by first by transforming the matrix to a bidiagonal A=U*B*VT form, then it implicitly computing the eigenvalues of the BTB matrix, which are the same as the singular values in the original A matrix.
Based off of the description provided in:
David S. Watkins, "Fundamentals of Matrix Computations," Second Edition. Page 404-411
| Constructor Summary | |
|---|---|
SvdImplicitQrDecompose(boolean compact,
boolean computeU,
boolean computeV)
|
|
| Method Summary | |
|---|---|
boolean |
decompose(DenseMatrix64F orig)
Computes the decomposition of the input matrix. |
double[] |
getSingularValues()
Returns the singular values. |
DenseMatrix64F |
getU(boolean transpose)
Returns the orthogonal 'U' matrix. |
DenseMatrix64F |
getV(boolean transpose)
Returns the orthogonal 'V' matrix. |
DenseMatrix64F |
getW(DenseMatrix64F W)
Returns a diagonal matrix with the singular values. |
boolean |
inputModified()
Is the input matrix to DecompositionInterface.decompose(org.ejml.data.Matrix64F) is modified during
the decomposition process. |
boolean |
isCompact()
If true then compact matrices are returned. |
int |
numberOfSingularValues()
The number of singular values in the matrix. |
int |
numCols()
Number of columns in the decomposed matrix. |
int |
numRows()
Number of rows in the decomposed matrix. |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Constructor Detail |
|---|
public SvdImplicitQrDecompose(boolean compact,
boolean computeU,
boolean computeV)
| Method Detail |
|---|
public double[] getSingularValues()
SingularValueDecomposition
getSingularValues in interface SingularValueDecomposition<DenseMatrix64F>public int numberOfSingularValues()
SingularValueDecomposition
numberOfSingularValues in interface SingularValueDecomposition<DenseMatrix64F>public boolean isCompact()
SingularValueDecomposition
isCompact in interface SingularValueDecomposition<DenseMatrix64F>public DenseMatrix64F getU(boolean transpose)
SingularValueDecompositionReturns the orthogonal 'U' matrix.
Internally the SVD algorithm might compute U transposed or it might not. To avoid an unnecessary double transpose the option is provided to select if the transpose is returned.
getU in interface SingularValueDecomposition<DenseMatrix64F>transpose - If the returned U is transposed.
public DenseMatrix64F getV(boolean transpose)
SingularValueDecompositionReturns the orthogonal 'V' matrix.
Internally the SVD algorithm might compute V transposed or it might not. To avoid an unnecessary double transpose the option is provided to select if the transpose is returned.
getV in interface SingularValueDecomposition<DenseMatrix64F>transpose - If the returned V is transposed.
public DenseMatrix64F getW(DenseMatrix64F W)
SingularValueDecomposition
getW in interface SingularValueDecomposition<DenseMatrix64F>W - If not null then the W matrix is written to it. Modified.
public boolean decompose(DenseMatrix64F orig)
DecompositionInterfaceDecompositionInterface.inputModified() will return true and the matrix should not be
modified until the decomposition is no longer needed.
decompose in interface DecompositionInterface<DenseMatrix64F>orig - The matrix which is being decomposed. Modification is implementation dependent.
public boolean inputModified()
DecompositionInterfaceDecompositionInterface.decompose(org.ejml.data.Matrix64F) is modified during
the decomposition process.
inputModified in interface DecompositionInterface<DenseMatrix64F>public int numRows()
SingularValueDecomposition
numRows in interface SingularValueDecomposition<DenseMatrix64F>public int numCols()
SingularValueDecomposition
numCols in interface SingularValueDecomposition<DenseMatrix64F>
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||