Search Results for

    Show / Hide Table of Contents

    Class SingularValueDecomposition

    Singular Value Decomposition of arbitrary matrix A Computes U/S/V of A = U * S * V^T

    Useful Properties: S = square-roots of eigenvalues of A U = eigenvectors of A * A^T V = eigenvectors of A^T * A U * V^T = rotation matrix closest to A V * Inv(S) * U^T = psuedoinverse of A

    U and/or V are rotation matrices but may also contain reflections Detection: det(U) or det(v) == -1 Removal: if ( det(U) == -1 ) { U *= -1; S *= -1 } if ( det(V) == -1 ) { V *= -1; S *= -1 } (right? seems to work)

    Inheritance
    Object
    SingularValueDecomposition
    Inherited Members
    Object.ToString()
    Object.Equals(Object)
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetHashCode()
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: g3
    Assembly: cs.temp.dll.dll
    Syntax
    public class SingularValueDecomposition

    Constructors

    SingularValueDecomposition(Int32, Int32, Int32)

    Declaration
    public SingularValueDecomposition(int numRows, int numCols, int maxIterations)
    Parameters
    Type Name Description
    Int32 numRows
    Int32 numCols
    Int32 maxIterations

    Methods

    GetSingularValues(Double[])

    Declaration
    public void GetSingularValues(double[] singularValues)
    Parameters
    Type Name Description
    Double[] singularValues

    GetU(Double[])

    Declaration
    public void GetU(double[] uMatrix)
    Parameters
    Type Name Description
    Double[] uMatrix

    GetV(Double[])

    Declaration
    public void GetV(double[] vMatrix)
    Parameters
    Type Name Description
    Double[] vMatrix

    Solve(Double[], Int32)

    Declaration
    public uint Solve(double[] input, int sortType = -1)
    Parameters
    Type Name Description
    Double[] input
    Int32 sortType
    Returns
    Type Description
    UInt32
    In This Article
    Back to top ViRGIS VR GIS