|
SuanShu, a Java numerical and statistical library | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||
java.lang.Objectcom.numericalmethod.suanshu.matrix.doubles.factorization.svd.SVD
public class SVD
The SVD decomposition of a matrix.
Given a tall matrix A of dimension m x n, where m >= n
we find orthogonal matrices U and V such that
U' %*% A %*% V = D
Alternatively,
U %*% D %*% V' = A
U is orthogonal and has dimension m x n.
V is orthogonal and has dimension n x n.
D is a diagonal matrix of dimension n x n.
| Nested Class Summary | |
|---|---|
static class |
SVD.Method
the methods available to compute eigenvalues and eigenvectors |
| Field Summary | |
|---|---|
double |
epsilon
a precision parameter: when a number |x| ≤ ε, it is considered 0 |
| Constructor Summary | |
|---|---|
SVD(Matrix A,
boolean doUV)
Construct an instance of the SVD decomposition. |
|
SVD(Matrix A,
boolean doUV,
SVD.Method method,
double epsilon)
Construct an instance of the SVD decomposition. |
|
| Method Summary | |
|---|---|
DiagonalMatrix |
D()
Get a copy of D as in
U' %*% A %*% V = D
U %*% D %*% V' = A
|
double[] |
singularValues()
Get an array of the normalized, hence positive, singular values. |
Matrix |
U()
Get a copy of U as in
U' %*% A %*% V = D
U %*% D %*% V' = A
|
Matrix |
Ut()
Get a copy of U.t() as in
U.t() %*% A %*% V = D
U %*% D %*% V' = A
|
Matrix |
V()
Get a copy of V as in
U' %*% A %*% V = D
U %*% D %*% V' = A
|
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Field Detail |
|---|
public final double epsilon
| Constructor Detail |
|---|
public SVD(Matrix A,
boolean doUV,
SVD.Method method,
double epsilon)
A - a matrixdoUV - true if only the singular values are wanted; U and V are not computedmethod - choose one of the algorithms in SVD.Methodepsilon - a precision parameter: when a number |x| ≤ ε, it is considered 0
public SVD(Matrix A,
boolean doUV)
A - a matrixdoUV - true if only the singular values are wanted; U and V are not computed| Method Detail |
|---|
public double[] singularValues()
SVDDecompositionD if this class is constructed with normalization off.
singularValues in interface SVDDecompositionpublic DiagonalMatrix D()
SVDDecompositionD as in
U' %*% A %*% V = D
U %*% D %*% V' = A
D in interface SVDDecompositionDpublic Matrix U()
SVDDecompositionU as in
U' %*% A %*% V = D
U %*% D %*% V' = A
U in interface SVDDecompositionUpublic Matrix Ut()
SVDDecompositionU.t() as in
U.t() %*% A %*% V = D
U %*% D %*% V' = A
Ut in interface SVDDecompositionU.t()public Matrix V()
SVDDecompositionV as in
U' %*% A %*% V = D
U %*% D %*% V' = A
V in interface SVDDecompositionV
|
SuanShu, a Java numerical and statistical library | |||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||