org.jquantlib.math.matrixutilities
Class SVD
- java.lang.Object
-
- org.jquantlib.math.matrixutilities.SVD
-
public class SVD extends java.lang.ObjectSingular Value DecompositionFor 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.data[S.addr.op(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:
- JAMA
-
-
Constructor Summary
Constructors Constructor and Description SVD(Matrix A)Construct the singular value decomposition
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method and Description doublecond()Two norm condition numberdoublenorm2()Two normintrank()Effective numerical matrix rankMatrixS()Return the diagonal matrix of singular valuesArraysingularValues()Return the one-dimensional array of singular valuesMatrixU()Return the left singular vectorsMatrixV()Return the right singular vectors
-
-
-
Constructor Detail
-
SVD
public SVD(Matrix A)
Construct the singular value decomposition- Parameters:
A- is a rectangular matrix
-
-
Method Detail
-
U
public Matrix U()
Return the left singular vectors- Returns:
- U
-
V
public Matrix V()
Return the right singular vectors- Returns:
- V
-
singularValues
public Array singularValues()
Return the one-dimensional array of singular values- Returns:
- diagonal of S.
-
S
public Matrix S()
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.
-
-
DataMelt 3.0 © DataMelt by jWork.ORG