Extreme Optimization™: Complexity made simple.

Math and Statistics
Libraries 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
    • Data Analysis 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
    • Partners
    • Contact us
Introduction
Deployment Guide
Configuration
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 Data Analysis Library User's GuideData Analysis Library User's Guide
Expand Statistics Library User's GuideStatistics Library User's Guide
Expand Data Access Library User's GuideData Access Library User's Guide
Expand ReferenceReference
  • Extreme Optimization
    • Features
    • Solutions
    • Documentation
    • QuickStart Samples
    • Sample Applications
    • Downloads
    • Technical Support
    • Download trial
    • How to buy
    • Blog
    • Company
    • Resources
  • Documentation
    • Introduction
    • Deployment Guide
    • Configuration
    • Using Parallelism
    • Mathematics Library User's Guide
    • Vector and Matrix Library User's Guide
    • Data Analysis Library User's Guide
    • Statistics Library User's Guide
    • Data Access Library User's Guide
    • Reference
  • Reference
    • Extreme
    • Extreme.Collections
    • Extreme.Data
    • Extreme.Data.Json
    • Extreme.Data.Matlab
    • Extreme.Data.R
    • Extreme.Data.Stata
    • Extreme.Data.Text
    • Extreme.DataAnalysis
    • Extreme.DataAnalysis.Linq
    • Extreme.Mathematics
    • Extreme.Mathematics.Algorithms
    • Extreme.Mathematics.Calculus
    • Extreme.Mathematics.Calculus.OrdinaryDifferentialEquations
    • Extreme.Mathematics.Curves
    • Extreme.Mathematics.Curves.Nonlinear
    • Extreme.Mathematics.Distributed
    • Extreme.Mathematics.Distributed.Cuda
    • Extreme.Mathematics.EquationSolvers
    • Extreme.Mathematics.FSharp
    • Extreme.Mathematics.Generic
    • Extreme.Mathematics.Generic.LinearAlgebra
    • Extreme.Mathematics.Generic.LinearAlgebra.Implementation
    • Extreme.Mathematics.Generic.LinearAlgebra.Providers
    • Extreme.Mathematics.Generic.SignalProcessing
    • Extreme.Mathematics.Implementation
    • Extreme.Mathematics.LinearAlgebra
    • Extreme.Mathematics.LinearAlgebra.Complex
    • Extreme.Mathematics.LinearAlgebra.Complex.Decompositions
    • Extreme.Mathematics.LinearAlgebra.Implementation
    • Extreme.Mathematics.LinearAlgebra.IO
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers
    • Extreme.Mathematics.LinearAlgebra.IterativeSolvers.Preconditioners
    • Extreme.Mathematics.LinearAlgebra.Providers
    • Extreme.Mathematics.LinearAlgebra.Sparse
    • Extreme.Mathematics.Optimization
    • Extreme.Mathematics.Optimization.Genetic
    • Extreme.Mathematics.Optimization.LineSearches
    • Extreme.Mathematics.Random
    • Extreme.Mathematics.SignalProcessing
    • Extreme.Numerics.FSharp
    • Extreme.Statistics
    • Extreme.Statistics.Distributions
    • Extreme.Statistics.IO
    • Extreme.Statistics.Linq
    • Extreme.Statistics.Multivariate
    • Extreme.Statistics.Random
    • Extreme.Statistics.Tests
    • Extreme.Statistics.TimeSeriesAnalysis
  • Extreme.Mathematics.LinearAlgebra
    • BandMatrix Class
    • BandMatrix(T) Class
    • BandVector Class
    • BlockVector(T) Class
    • CholeskyDecomposition Class
    • CholeskyDecomposition(T) Class
    • CloningMethod Enumeration
    • ColumnCollection Structure
    • ColumnCollection(T) Structure
    • ComplexEigenvalueDecomposition Class
    • ComplexSingularValueDecomposition(T) Class
    • ComponentReadOnlyException Class
    • ComposedComplexMatrix(T) Class
    • ComposedComplexVector(T) Class
    • ConstantMatrix Class
    • ConstantMatrix(T) Class
    • ConstantVector Class
    • ConstantVector(T) Class
    • Decomposition Class
    • Decomposition(T) Class
    • DenseMatrix Class
    • DenseMatrix(T) Class
    • DenseVector Class
    • DenseVector(T) Class
    • DiagonalMatrix Class
    • DiagonalMatrix(T) Class
    • EigenvalueDecomposition Class
    • EigenvalueDecomposition(T) Class
    • EigenvalueRange Enumeration
    • GeneralizedDecomposition(T) Class
    • GeneralizedEigenvalueDecomposition(T) Class
    • GeneralizedSingularValueDecomposition(T) Class
    • GeneralizedSingularValueDecompositionFactors Enumeration
    • HermitianEigenvalueDecomposition Class
    • HermitianMatrix(T) Class
    • IDoubleStorage Interface
    • ILeastSquaresSolver Interface
    • IndexedVector Class
    • IndexedVector(T) Class
    • IndexValuePair Structure
    • IndexValuePair(T) Structure
    • IResizableMatrix Interface
    • IResizableMatrix(T) Interface
    • ISingleLeastSquaresSolver Interface
    • ISingleResizableMatrix Interface
    • ISingleStorage Interface
    • Kernel Class
    • LeastSquaresSolutionMethod Enumeration
    • LeastSquaresSolver Class
    • LeastSquaresSolver(T) Class
    • LinearAlgebraOperations Class
    • LinearOperator Class
    • LinearOperator(T) Class
    • LQDecomposition(T) Class
    • LUDecomposition Class
    • LUDecomposition(T) Class
    • MatrixNotPositiveDefiniteException Class
    • MatrixSingularException Class
    • MatrixStructure Enumeration
    • MatrixView Class
    • MatrixView(T) Class
    • NonHermitianEigenvalueDecomposition Class
    • NonHermitianEigenvalueDecomposition(T) Class
    • NonNegativeMatrixFactorization Class
    • NonNegativeMatrixFactorization(T) Class
    • NonsymmetricEigenvalueDecomposition Class
    • PermutationMatrix Class
    • PivotVector Structure
    • QLDecomposition(T) Class
    • QRDecomposition Class
    • QRDecomposition(T) Class
    • Range Structure
    • RowCollection Structure
    • RowCollection(T) Structure
    • RowColumnValueTriplet Structure
    • RowColumnValueTriplet(T) Structure
    • RQDecomposition(T) Class
    • SingleBandCholeskyDecomposition Class
    • SingleBandLUDecomposition Class
    • SingleBandMatrix Class
    • SingleBandVector Class
    • SingleBandVector.BandVectorEnumerator Structure
    • SingleCholeskyDecomposition Class
    • SingleColumnCollection Structure
    • SingleConstantMatrix Class
    • SingleConstantVector Class
    • SingleDecomposition Class
    • SingleDenseMatrix Class
    • SingleDenseVector Class
    • SingleDiagonalMatrix Class
    • SingleEigenvalueDecomposition Class
    • SingleIndexedVector Class
    • SingleIndexValuePair Structure
    • SingleKernel Class
    • SingleLeastSquaresSolver Class
    • SingleLinearTransformation Class
    • SingleLUDecomposition Class
    • SingleMatrixView Class
    • SinglePermutationMatrix Class
    • SingleQRDecomposition Class
    • SingleRowCollection Structure
    • SingleRowColumnValueTriplet Structure
    • SingleSingularValueDecomposition Class
    • SingleSparseLUDecomposition Class
    • SingleSparseMatrix Class
    • SingleSparseVector Class
    • SingleSymmetricEigenvalueDecomposition Class
    • SingleSymmetricMatrix Class
    • SingleTriangularMatrix Class
    • SingularValueDecomposition Class
    • SingularValueDecomposition(T) Class
    • SingularValueDecompositionFactors Enumeration
    • SparseCompressedColumnMatrix Class
    • SparseCompressedColumnMatrix(T) Class
    • SparseMatrix Class
    • SparseMatrix(T) Class
    • SparseVector Class
    • SparseVector(T) Class
    • SymmetricEigenvalueDecomposition Class
    • SymmetricIndefiniteDecomposition Class
    • SymmetricIndefiniteDecomposition(T) Class
    • SymmetricMatrix Class
    • SymmetricMatrix(T) Class
    • TriangularMatrix Class
    • TriangularMatrix(T) Class
  • ConstantMatrix(T) Class
    • ConstantMatrix(T) Constructor
    • Properties
    • Methods
  • Methods
    • AbsoluteMax Method
    • AbsoluteMin Method
    • AddScaledAsLeftCore Method Overloads
    • AddScaledAsRightCore Method Overloads
    • CloneData Method
    • ElementwiseDivideAsRightCore Method
    • ElementwiseMultiplyCore Method
    • EstimateConditionNumber Method
    • GetColumnCore Method
    • GetColumnSums Method
    • GetConditionNumber Method
    • GetDeterminant Method
    • GetDiagonal Method Overloads
    • GetInverse Method Overloads
    • GetRowCore Method
    • GetRowSums Method
    • GetSubmatrixCore Method
    • GetValue Method Overloads
    • IsElementWritable Method
    • IsSingular Method
    • MultiplyAndAddAsLeftFactorCore Method Overloads
    • MultiplyAsLeftCore Method Overloads
    • MultiplyCore Method
    • MultiplyInPlace Method
    • Rank Method Overloads
    • Reshape Method
    • ReshapeAsVector Method
    • SetValue Method Overloads
    • SolveInto Method Overloads
    • Sum Method
    • ToArray Method Overloads
    • Transpose Method
  • Rank Method Overloads
    • Rank Method (T)
  • Rank Method (T)
ConstantMatrixTRank Method (T)Extreme Optimization Numerical Libraries for .NET Professional
Returns the numerical rank of a matrix using the specified tolerance.

Namespace: Extreme.Mathematics.LinearAlgebra
Assembly: Extreme.Numerics.Net40 (in Extreme.Numerics.Net40.dll) Version: 6.0.16073.0 (6.0.16312.0)
Syntax

C#
VB
C++
F#
Copy
public override int Rank(
	T tolerance
)
Public Overrides Function Rank ( 
	tolerance As T
) As Integer
public:
virtual int Rank(
	T tolerance
) override
abstract Rank : 
        tolerance : 'T -> int 
override Rank : 
        tolerance : 'T -> int 

Parameters

tolerance
Type: T
The absolute tolerance used to determine if a matrix component is considered zero.

Return Value

Type: Int32
An integer indicating the numerical rank of the matrix.
Remarks

If tolerance is negative, the default tolerance is used. The default tolerance is equal to the product of the machine precision, the largest dimension of the matrix, and the one-norm of the matrix. The rank is determined by counting the number of diagonal elements of the upper-triangular component of the QR decomposition whose absolute value is greater than the tolerance.

Version Information

Numerical Libraries

Supported in: 6.0
See Also

Reference

ConstantMatrixT Class
Rank Overload
Extreme.Mathematics.LinearAlgebra Namespace

Copyright (c) 2004-2016 ExoAnalytics Inc.

Send comments on this topic to support@extremeoptimization.com

Copyright © 2004-2018, 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.