Home > Extreme Optimization Mathematics Library for .NET > Reference > Extreme.Mathematics.LinearAlgebra Namespace
Represents a matrix, a two-dimensional array of real numbers.
For a list of all members of this type, see Matrix Members.
System.Object
LinearTransformation
Matrix
Matrix is the abstract (MustInherit in Visual Basic) base class for representing real matrices, two-dimensional arrays of double-precision floating-point numbers. An application can perform operations on matrices using instances of the Matrix class, while descendant classes implement specialized algorithms for specific types of matrices.
The Matrix class provides methods and properties for all the common operations on matrices, including arithmetic operations, calculating norms and solving systems of simultaneous linear equations. Various methods allow you to access individual components as well as rows and columns and submatrices.
Since Matrix is an abstract (MustInherit in Visual Basic) base class and cannot be instantiated directly. Instead, use one of its derived classes. These are:
| Class | Description |
|---|---|
| GeneralMatrix | Represents a general, dense, square or rectangular matrix. |
| TriangularMatrix | Represents an upper or lower-triangular matrix, a matrix whose elements below or above the main diagonal are zero. |
| SymmetricMatrix | Represents a square matrix whose elements are symmetrical around the main diagonal. |
Note that the specialized classes exploit certain structural properties to perform many calculations more quickly than the general algorithms implemented by Matrix.
Matrix provides an indexer property. For convenient access to the rows or columns of a Matrix or parts thereof, use the GetRow and GetColumn methods.
Overloaded versions of the major arithmetic operators are provided for languages that support them. For languages that don't support operator overloading, equivalent static (Shared in Visual Basic) methods are supplied.
Many matrix decompositions exist, serving a variety of purposes. Each of them has its own class. In this release the LU decomposition and the QR decomposition are supported. For positive-definite symmetric matrices, the CholeskyDecomposition is available.
Namespace: Extreme.Mathematics.LinearAlgebra
Assembly: Extreme.Mathematics (in Extreme.Mathematics.dll)
Matrix Members | Extreme.Mathematics.LinearAlgebra Namespace | LUDecomposition | QRDecomposition | Vector