Package org.biojava.nbio.structure.jama
Class SingularValueDecomposition
java.lang.Object
org.biojava.nbio.structure.jama.SingularValueDecomposition
- All Implemented Interfaces:
 Serializable
Singular Value Decomposition.
        
For an m-by-n matrix A with m >= n, the singular value decomposition is an m-by-n orthogonal matrix U, an n-by-n diagonal matrix S, and an n-by-n orthogonal matrix V so that A = U*S*V'.
The singular values, sigma[k] = S[k][k], are ordered so that sigma[0] >= sigma[1] >= ... >= sigma[n-1].
The singular value decompostion always exists, so the constructor will never fail. The matrix condition number and the effective numerical rank can be computed from this decomposition.
- See Also:
 
- 
Constructor Summary
ConstructorsConstructorDescriptionConstruct the singular value decomposition. - 
Method Summary
Modifier and TypeMethodDescriptiondoublecond()Two norm condition numbergetS()Return the diagonal matrix of singular valuesdouble[]Return the one-dimensional array of singular valuesgetU()Return the left singular vectorsgetV()Return the right singular vectorsdoublenorm2()Two normintrank()Effective numerical matrix rank 
- 
Constructor Details
- 
SingularValueDecomposition
Construct the singular value decomposition. Provides a data structure to access U, S and V.- Parameters:
 Arg- Rectangular matrix
 
 - 
 - 
Method Details
- 
getU
Return the left singular vectors- Returns:
 - U
 
 - 
getV
Return the right singular vectors- Returns:
 - V
 
 - 
getSingularValues
public double[] getSingularValues()Return the one-dimensional array of singular values- Returns:
 - diagonal of S.
 
 - 
getS
Return the diagonal matrix of singular values- Returns:
 - S
 
 - 
norm2
public double norm2()Two norm- Returns:
 - max(S)
 
 - 
cond
public double cond()Two norm condition number- Returns:
 - max(S)/min(S)
 
 - 
rank
public int rank()Effective numerical matrix rank- Returns:
 - Number of nonnegligible singular values.
 
 
 -