Extreme Optimization™: Complexity made simple.

Numerical Components
for .NET

  • Home
  • Features
    • Math Library
    • Vector and Matrix Library
    • Statistics Library
    • Performance
    • Usability
  • Documentation
    • Introduction
    • Math Library User's Guide
    • Vector and Matrix Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Resources
    • Downloads
    • QuickStart Samples
    • Sample Applications
    • Frequently Asked Questions
    • Technical Support
  • Blog
  • Order
  • Company
    • About us
    • Testimonials
    • Customers
    • Press Releases
    • Careers
    • Contact us
Introduction
Deployment Guide
Using Parallelism
Expand Mathematics Library User's GuideMathematics Library User's Guide
Expand Vector and Matrix Library User's GuideVector and Matrix Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand ReferenceReference
  • Home
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Statistics Library User's Guide
    • Reference
  • Reference
    • Extreme.Mathematics Namespace
    • Extreme.Mathematics.Algorithms Namespace
    • Extreme.Mathematics.Calculus Namespace
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations Namespace
    • Extreme.Mathematics.Curves Namespace
    • Extreme.Mathematics.Curves.Nonlinear Namespace
    • Extreme.Mathematics.EquationSolvers Namespace
    • Extreme.Mathematics.Generic Namespace
    • Extreme.Mathematics.Generic.LinearAlgebra Namespace
    • Extreme.Mathematics.Generic.LinearAlgebra.Providers Namespace
    • Extreme.Mathematics.LinearAlgebra Namespace
    • Extreme.Mathematics.LinearAlgebra.Complex Namespace
    • Extreme.Mathematics.LinearAlgebra.Complex.Decompositions Namespace
    • Extreme.Mathematics.LinearAlgebra.IO Namespace
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers Namespace
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners Namespace
    • Extreme.Mathematics.LinearAlgebra.Providers Namespace
    • Extreme.Mathematics.LinearAlgebra.Sparse Namespace
    • Extreme.Mathematics.Optimization Namespace
    • Extreme.Mathematics.Optimization.LineSearches Namespace
    • Extreme.Mathematics.SignalProcessing Namespace
    • Extreme.Statistics Namespace
    • Extreme.Statistics.Distributions Namespace
    • Extreme.Statistics.IO Namespace
    • Extreme.Statistics.Multivariate Namespace
    • Extreme.Statistics.Random Namespace
    • Extreme.Statistics.Tests Namespace
    • Extreme.Statistics.TimeSeriesAnalysis Namespace
  • Extreme.Mathematics.Generic.LinearAlgebra Namespace
    • BandVector(T) Class
    • BandVector(T).BandVectorEnumerator Structure
    • CholeskyDecomposition(T) Class
    • ColumnCollection(T) Structure
    • ConstantVector(T) Class
    • Decomposition(T) Class
    • DenseMatrix(T) Class
    • DenseVector(T) Class
    • GenericKernel(T) Class
    • GenericKernel(T).Specialization Class
    • ILinearStorage(T) Interface
    • IndexValuePair(T) Structure
    • LinearOperator(T) Class
    • LUDecomposition(T) Class
    • MatrixView(T) Class
    • QRDecomposition(T) Class
    • RowCollection(T) Structure
    • RowColumnValueTriplet(T) Structure
    • SingularValueDecomposition(T) Class
    • SymmetricEigenvalueDecomposition(T) Class
    • SymmetricMatrix(T) Class
    • TriangularMatrix(T) Class
  • SingularValueDecomposition(T) Class
    • Members
    • Constructors
    • Methods
    • Properties
Collapse image Expand Image Copy image CopyHover image
         




SingularValueDecomposition<(Of <(<'T>)>)> Class

Members See Also 
Represents the singular value decomposition of a matrix.

Namespace: Extreme.Mathematics.Generic.LinearAlgebra
Assembly: Extreme.Generic.Net40 (in Extreme.Generic.Net40.dll) Version: 4.0.10170.0 (4.0.10322.0)

Syntax

C#
                      public class SingularValueDecomposition<T> : Decomposition<T>
Visual Basic (Declaration)
                      Public Class SingularValueDecomposition(Of T) _
	Inherits Decomposition(Of T)
Visual C++
                      generic<typename T>
public ref class SingularValueDecomposition : public Decomposition<T>
F#
                      type SingularValueDecomposition<'T> =  
    class
        inherit Decomposition<'T>
    end

Type Parameters

T

Remarks

The singular value decomposition (SVD) of a matrix A rewrites the matrix in the form A= USVT, where U and V are orthogonal matrices, and S is a diagonal matrix whose diagonal contains the singular values of the matrix.

QRDecomposition can operate in two modes. In overwrite mode, the original matrix is overwritten by the decomposition. In preserve mode, the original matrix is preserved, and a new matrix is created to hold the decomposition. You can set the mode through the Overwrite property.

SingularValueDecomposition inherits from LinearOperator<(Of <(<'T>)>)>. This means you can use it to solve systems of linear equations. You can solve for a single right-hand side, or for multiple right-hand sides using the Solve(DenseMatrix<(Of <<'(T>)>>), Boolean) method. You can also calculate the determinant, the inverse, and an estimate for the EstimateConditionNumber()()()().

In addition, the SingularValueDecomposition class provides some unique methods. The GetPseudoInverse()()()() method calculates the pseudo-inverse of the matrix. This is a matrix A+ such that AA+A = A.

The managed implementation of the singular value decomposition is based on the LINPACK routine DSVDC. The native version uses the LAPACK routine DGESDD.

Inheritance Hierarchy

System..::..Object
  Extreme.Mathematics.Generic.LinearAlgebra..::..LinearOperator<(Of <(<'T>)>)>
    Extreme.Mathematics.Generic.LinearAlgebra..::..Decomposition<(Of <(<'T>)>)>
      Extreme.Mathematics.Generic.LinearAlgebra..::..SingularValueDecomposition<(Of <(<'T>)>)>

See Also

SingularValueDecomposition<(Of <(<'T>)>)> Members
Extreme.Mathematics.Generic.LinearAlgebra Namespace
Extreme.Mathematics.Generic.LinearAlgebra..::..DenseMatrix<(Of <(<'T>)>)>
Extreme.Mathematics.Generic.LinearAlgebra..::..LinearOperator<(Of <(<'T>)>)>

Send comments on this topic to support@extremeoptimization.com

Copyright (c) 2004-2011 ExoAnalytics Inc.

Copyright © 2003-2013, Extreme Optimization. All rights reserved.
Extreme Optimization, Complexity made simple, M#, and M Sharp are trademarks of ExoAnalytics Inc.
Microsoft, Visual C#, Visual Basic, Visual Studio, Visual Studio.NET, and the Optimized for Visual Studio logo
are registered trademarks of Microsoft Corporation.