org.ejml.simple
Class SimpleSVD<T extends SimpleMatrix>

java.lang.Object
  extended by org.ejml.simple.SimpleSVD<T>

public class SimpleSVD<T extends SimpleMatrix>
extends Object

Wrapper around SVD for simple matrix. See SingularValueDecomposition for more details.

SVD is defined as the following decomposition:

A = U * W * V T

where A is m by n, and U and V are orthogonal matrices, and W is a diagonal matrix

Author:
Peter Abeles

Constructor Summary
SimpleSVD(DenseMatrix64F mat, boolean compact)
           
 
Method Summary
 double getSingleValue(int index)
          Returns the specified singular value.
 SingularValueDecomposition getSVD()
          Returns the underlying decomposition that this is a wrapper around.
 T getU()
           Returns the orthogonal 'U' matrix.
 T getV()
           Returns the orthogonal 'V' matrix.
 T getW()
          Returns a diagonal matrix with the singular values.
 int nullity()
          The nullity of the decomposed matrix.
 SimpleMatrix nullSpace()
          Computes the null space from an SVD.
 double quality()
           Computes the quality of the computed decomposition.
 int rank()
          Returns the rank of the decomposed matrix.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SimpleSVD

public SimpleSVD(DenseMatrix64F mat,
                 boolean compact)
Method Detail

getU

public T getU()

Returns the orthogonal 'U' matrix.

Returns:
An orthogonal m by m matrix.

getW

public T getW()
Returns a diagonal matrix with the singular values. The singular values are ordered from largest to smallest.

Returns:
Diagonal matrix with singular values along the diagonal.

getV

public T getV()

Returns the orthogonal 'V' matrix.

Returns:
An orthogonal n by n matrix.

quality

public double quality()

Computes the quality of the computed decomposition. A value close to or less than 1e-15 is considered to be within machine precision.

This function must be called before the original matrix has been modified or else it will produce meaningless results.

Returns:
Quality of the decomposition.

nullSpace

public SimpleMatrix nullSpace()
Computes the null space from an SVD. For more information see SingularOps.nullSpace(org.ejml.alg.dense.decomposition.SingularValueDecomposition, org.ejml.data.DenseMatrix64F).

Returns:
Null space vector.

getSingleValue

public double getSingleValue(int index)
Returns the specified singular value.

Parameters:
index - Which singular value is to be returned.
Returns:
A singular value.

rank

public int rank()
Returns the rank of the decomposed matrix.

Returns:
Rank

nullity

public int nullity()
The nullity of the decomposed matrix.

Returns:
Nullity

getSVD

public SingularValueDecomposition getSVD()
Returns the underlying decomposition that this is a wrapper around.

Returns:
SingularValueDecomposition


Copyright © 2012. All Rights Reserved.