TriangularMatrix<T> Class

Represents a matrix whose elements above or below the main diagonal are zero.

Definition

Namespace: Extreme.Mathematics.LinearAlgebra
Assembly: Extreme.Numerics (in Extreme.Numerics.dll) Version: 8.1.23
C#
[SerializableAttribute]
public sealed class TriangularMatrix<T> : Matrix<T>, 
	ISerializable
Inheritance
Object  →  LinearOperator<T>  →  Matrix<T>  →  TriangularMatrix<T>
Implements
ISerializable

Type Parameters

T

Remarks

Use the TriangularMatrix<T> class to represent dense matrices whose elements above or below the diagonal are zero. The name is derived from the shape of the non-zero elements, which form a triangle. However, this class also represents rectangular matrices, whose non-zero elements may form a trapezoid.

A TriangularMatrix<T> can be either upper or lower-triangular, depending on which components are non-zero. This property is available as the StoredTriangle property. It is of type MatrixTriangle, and must be specified at construction.

Sometimes, the components on the diagonal are all equal to one. In this case, the matrix is said to be unit-diagonal, and the IsUnitDiagonal property will be true. Once again, this must be specified at the time the matrix is constructed.

Only the non-zero components of a triangular matrix can be modified. The diagonal components of a unit-diagonal matrix can't be modified. An attempt to do so will result in an ComponentReadOnlyException. You can verify if a component can be modified by calling the IsElementWritable(Int32, Int32) method.

The components of a TriangularMatrix<T> are stored in a one-dimensional array of values. By default, components that are adjacent in a column of the matrix are adjacent in the storage array. The components are said to be stored in column major order. It is also possible to have elements stored in row major order.

Triangular matrices can be constructed from scratch, or they can be derived or extracted from a DenseMatrix<T> using one of the ExtractLowerTriangle<T>(DenseMatrix<T>) or ExtractUpperTriangle<T>(DenseMatrix<T>) methods.

The rows and column vectors of a triangular matrix are of type BlockVector<T>.

The TriangularMatrix<T> class implements algorithms using the triangular matrix BLAS and LAPACK routines. These routines assume matrix components are stored in column major order. However, any necessary conversions are performed transparently. No additional work is needed. In some cases there might be a small performance penalty.

TriangularMatrix<T> objects are used as properties of many matrix decompositions. Both factors of the LU decomposition are triangular. So is at least one factor of the Cholesky Decomposition and the QR Decomposition.

Properties

CanReshape Gets whether the matrix can be reshaped into a vector or a matrix.
(Inherited from Matrix<T>)
ColumnCount Gets the number of columns in the matrix.
(Inherited from LinearOperator<T>)
ColumnIndex Gets or sets the index of labels for the columns of the matrix.
(Inherited from LinearOperator<T>)
Preliminary
Columns Gets the ColumnCollection<T> for this instance.
(Inherited from Matrix<T>)
ColumnwiseComponents Enumerates the elements of the matrix column by column.
(Inherited from Matrix<T>)
ElementOrder Gets a value indicating the order in which the matrix elements are stored.
(Overrides Matrix<T>.ElementOrder)
ElementType Gets the element type of the matrix.
(Inherited from LinearOperator<T>)
IsHermitian Gets a value that indicates if the matrix is Hermitian about the main diagonal.
(Inherited from Matrix<T>)
IsImmutable Gets whether the elements of the matrix are immutable.
(Inherited from Matrix<T>)
IsLowerTriangular Gets a value indicating whether this instance is lower triangular.
(Overrides Matrix<T>.IsLowerTriangular)
IsReadOnly Gets whether the matrix can be written to.
(Inherited from Matrix<T>)
IsSparse Gets a value that indicates whether the matrix is sparse.
(Overrides Matrix<T>.IsSparse)
IsSymmetrical Gets a value that indicates if the matrix is symmetrical about the main diagonal.
(Inherited from Matrix<T>)
IsUnitDiagonal Gets a value indicating whether all diagonal elements of this instance are equal to 1.
(Overrides Matrix<T>.IsUnitDiagonal)
IsUpperTriangular Gets a value indicating whether this instance is upper triangular.
(Overrides Matrix<T>.IsUpperTriangular)
Item[Func<T, Boolean>, Int32] Gets or sets the elements of a column of the matrix that meet the specified condition.
(Inherited from Matrix<T>)
Item[IEnumerable<Int32>, Range] Gets or sets the elements of a matrix with the specified row indexes and column range.
(Inherited from Matrix<T>)
Item[IEnumerable<Int32>, IEnumerable<Int32>] Gets or sets the elements of a matrix with the specified row and column indexes.
(Inherited from Matrix<T>)
Item[IEnumerable<Int32>, Int32] Gets or sets the elements of a column with the specified indexes.
(Inherited from Matrix<T>)
Item[IEnumerable<Int32>, Range] Gets or sets the elements of a matrix with the specified row indexes and column range.
(Inherited from Matrix<T>)
Item[Index, Index] Gets or sets the specified element in this matrix.
(Inherited from Matrix<T>)
Item[Index, Range] Gets or sets the elements of a row of this matrix.
(Inherited from Matrix<T>)
Item[Int32, Range] Gets or sets the elements of a row of this matrix.
(Inherited from Matrix<T>)
Item[Int32, Vector<Boolean>] Gets or sets the elements of a row of this matrix.
(Inherited from Matrix<T>)
Item[Int32, IEnumerable<Int32>] Gets or sets the elements of a row with the specified indexes.
(Inherited from Matrix<T>)
Item[Int32, Func<T, Boolean>] Gets or sets the elements of a row of the matrix that meet the specified condition.
(Inherited from Matrix<T>)
Item[Int32, Int32] Gets or sets the specified element in this matrix.
(Inherited from Matrix<T>)
Item[Range, Range] Gets or sets the elements of a sub-matrix of this matrix.
(Inherited from Matrix<T>)
Item[Range, IEnumerable<Int32>] Gets or sets the elements of a matrix with the specified row range and column indexes.
(Inherited from Matrix<T>)
Item[Range, Int32] Gets or sets the elements of a column of this matrix.
(Inherited from Matrix<T>)
Item[Range, IEnumerable<Int32>] Gets or sets the elements of a matrix with the specified row range and column indexes.
(Inherited from Matrix<T>)
Item[Range, Index] Gets or sets the elements of a column of this matrix.
(Inherited from Matrix<T>)
Item[Range, Range] Gets or sets the elements of a sub-matrix of this matrix.
(Inherited from Matrix<T>)
Item[Vector<Boolean>, Int32] Gets or sets the elements of a column of this matrix.
(Inherited from Matrix<T>)
MatrixDiagonal Gets a value indicating whether all diagonal elements of this instance are structurally equal to 1.
(Inherited from Matrix<T>)
MatrixTriangle Gets a value that indicates whether a triangular matrix is upper or lower triangular.
(Inherited from Matrix<T>)
NonzeroComponents Gets a collection of the nonzero elements of the matrix.
(Inherited from Matrix<T>)
Obsolete.
NonzeroElements Gets a collection of the nonzero elements of the matrix.
(Inherited from Matrix<T>)
Precedence Infrastructure. This property supports the Numerical Libraries for .NET infrastructure and is not intended to be used directly from your code.
(Inherited from Matrix<T>)
RowCount Gets the number of rows in the matrix.
(Inherited from LinearOperator<T>)
RowIndex Gets or sets the index of labels for the rows of the matrix.
(Inherited from LinearOperator<T>)
Preliminary
Rows Gets the RowCollection<T> for this instance.
(Inherited from Matrix<T>)
RowwiseComponents Enumerates the elements of the matrix column by column.
(Inherited from Matrix<T>)
StoredTriangle Gets a value that indicates whether the elements of a TriangularMatrix<T> are stored in the upper or lower part.
Structure Gets a value that indicates the structure of the sparse matrix.
(Inherited from Matrix<T>)
WritableComponents Enumerates the writable elements of the matrix column by column.
(Inherited from Matrix<T>)

Methods

AbsInPlace Computes the absolute value of the elements of a matrix in-place.
(Inherited from Matrix<T>)
AbsoluteMax Returns the value of the element in this matrix that has the largest absolute value.
(Inherited from Matrix<T>)
AbsoluteMin Returns the value of the element in this matrix that has the smallest absolute value.
(Inherited from Matrix<T>)
AcoshInPlace Computes the inverse hyperbolic cosine of the elements of a matrix in-place.
(Inherited from Matrix<T>)
AcosInPlace Computes the inverse cosine of the elements of a matrix in-place.
(Inherited from Matrix<T>)
Add Adds a constant to a matrix and returns the result.
(Inherited from Matrix<T>)
Obsolete.
AddInPlace(T) Adds a scalar to a matrix.
(Inherited from Matrix<T>)
AddInPlace(Matrix<T>) Adds another matrix to this matrix in-place.
(Inherited from Matrix<T>)
AddInPlace(Vector<T>, Dimension) Adds a vector broadcast along the specified dimension to this matrix in-place.
(Inherited from Matrix<T>)
AddProductInPlace(Matrix<T>, Matrix<T>) Adds the product of two matrices to this matrix.
(Inherited from Matrix<T>)
AddProductInPlace(Matrix<T>, TransposeOperation, Matrix<T>, TransposeOperation) Adds the product of two matrices to this matrix.
(Inherited from Matrix<T>)
AddProductToVector Multiplies a Vector<T> by this instance and stores the result in a second vector of type DenseVector<T>.
(Inherited from LinearOperator<T>)
Obsolete.
AddScaledInPlace Adds a scaled matrix to this matrix.
(Inherited from Matrix<T>)
AddScaledProductInPlace(T, Matrix<T>, Matrix<T>) Adds a multiple of the scaled product of two matrices to this matrix.
(Inherited from Matrix<T>)
AddScaledProductInPlace(T, Matrix<T>, TransposeOperation, Matrix<T>, TransposeOperation) Adds the scaled product of two matrices to another matrix.
(Inherited from Matrix<T>)
AggregateColumns<U>(Aggregator<T, U>) Applies the specified aggregator to all the columns in the matrix.
(Inherited from Matrix<T>)
AggregateColumns<U>(AggregatorGroup<U>) Applies the specified aggregator to all the columns in the matrix.
(Inherited from Matrix<T>)
AggregateColumns<U>(AggregatorGroup<U>[]) Applies the specified aggregators to all the columns in the matrix.
(Inherited from Matrix<T>)
AggregateColumns<U>(Func<Vector<T>, U>) Applies the specified aggregators to all the columns in the matrix.
(Inherited from Matrix<T>)
AggregateColumnsBy<U>(IGrouping, AggregatorGroup<U>) Returns a new matrix that aggregates the columns according to the specified grouping.
(Inherited from Matrix<T>)
AggregateColumnsBy<K, U>(IList<K>, AggregatorGroup<U>) Returns a new matrix that aggregates the columns grouped by the specified vector.
(Inherited from Matrix<T>)
AggregateColumnsListwise<U> Applies the specified aggregator to all the columns in the matrix, treating rows that contain any missing values as completely missing.
(Inherited from Matrix<T>)
AggregateRows<U>(Aggregator<T, U>) Applies the specified aggregator to all the rows in the matrix.
(Inherited from Matrix<T>)
AggregateRows<U>(AggregatorGroup<U>) Applies the specified aggregator to all the rows in the matrix.
(Inherited from Matrix<T>)
AggregateRows<U>(AggregatorGroup<U>[]) Applies the specified aggregators to all the rows in the matrix.
(Inherited from Matrix<T>)
AggregateRows<U>(Func<Vector<T>, U>) Applies the specified aggregators to all the rows in the matrix.
(Inherited from Matrix<T>)
AggregateRowsBy<U>(IGrouping, AggregatorGroup<U>) Returns a new matrix that aggregates the rows according to the specified grouping.
(Inherited from Matrix<T>)
AggregateRowsBy<C, U>(C, AggregatorGroup<U>) Returns a new matrix that aggregates the rows grouped by the specified row.
(Inherited from Matrix<T>)
AggregateRowsBy<K, U>(IList<K>, AggregatorGroup<U>) Returns a new matrix that aggregates the rows grouped by the specified vector.
(Inherited from Matrix<T>)
AggregateRowsBy<R, U>(R, Func<Vector<T>, U>) Applies the specified aggregation function to the values in each row grouped by the specified grouping row.
(Inherited from Matrix<T>)
AsDenseMatrix Returns this matrix as a dense matrix.
(Inherited from Matrix<T>)
AsHermitianMatrix() Returns a matrix as a HermitianMatrix<T>, or null if the matrix is not hermitian.
(Inherited from Matrix<T>)
AsHermitianMatrix(MatrixTriangle) Returns a HermitianMatrix<T> extracted from a part of the matrix.
(Inherited from Matrix<T>)
AsinhInPlace Computes the inverse hyperbolic sine of the elements of a matrix in-place.
(Inherited from Matrix<T>)
AsinInPlace Computes the inverse sine of the elements of a matrix in-place.
(Inherited from Matrix<T>)
AsSymmetricMatrix() Returns a matrix as a SymmetricMatrix<T>, or null if the matrix is not symmetrical.
(Inherited from Matrix<T>)
AsSymmetricMatrix(MatrixTriangle) Returns a SymmetricMatrix<T> extracted from a part of the matrix.
(Inherited from Matrix<T>)
AtanhInPlace Computes the inverse hyperbolic tangent of the elements of a matrix in-place.
(Inherited from Matrix<T>)
AtanInPlace Computes the inverse tangent of the elements of a matrix in-place.
(Inherited from Matrix<T>)
CeilingInPlace Computes the smallest integer greater than or equal to the elements of a matrix in-place.
(Inherited from Matrix<T>)
Clone() Constructs a deep copy of this matrix.
(Inherited from Matrix<T>)
Clone(CloningMethod) Makes a copy of this vector using the specified method.
(Inherited from Matrix<T>)
CloneData() Gives this instance its own copy of its elements.
(Overrides Matrix<T>.CloneData())
CloneData(MatrixElementOrder) Gives this instance its own copy of its elements.
CloneShape Creates a new matrix that has the same number of rows and columns and optionally preserves the writable structure.
(Inherited from Matrix<T>)
ComponentwiseDivide(Matrix<T>) Divides the elements of this instance by the corresponding elements of another matrix.
(Inherited from Matrix<T>)
Obsolete.
ComponentwiseMultiply Multiplies the elements of this instance by the corresponding elements of another matrix.
(Inherited from Matrix<T>)
Obsolete.
Conjugate Returns the transpose of this instance.
(Inherited from Matrix<T>)
ConjugateInPlace Conjugates all elements of a matrix in-place.
(Inherited from Matrix<T>)
ConjugateTranspose Returns the transpose of this instance.
(Overrides Matrix<T>.ConjugateTranspose())
CopyTo(Matrix<T>) Copies the elements of this matrix to another matrix.
(Inherited from Matrix<T>)
CopyTo(Array2D<T>, TransposeOperation) Copies the elements of this matrix to another matrix.
(Inherited from Matrix<T>)
CopyTo(Matrix<T>, TransposeOperation) Copies the elements of this matrix to another matrix.
(Overrides Matrix<T>.CopyTo(Matrix<T>, TransposeOperation))
CopyToOrClone Copies the elements of this vector to another matrix, if it exists; otherwise clones the matrix using the specified method.
(Inherited from Matrix<T>)
CoshInPlace Computes the hyperbolic cosine of the elements of a matrix in-place.
(Inherited from Matrix<T>)
CosInPlace Computes the cosine of the elements of a matrix in-place.
(Inherited from Matrix<T>)
Dispose() Releases unmanaged resources.
(Inherited from Matrix<T>)
DivideInPlace Divides a matrix in-place by a scalar.
(Inherited from Matrix<T>)
ElementwiseDivideInPlace Divides this matrix in-place element-wise by another matrix.
(Inherited from Matrix<T>)
ElementwiseMultiplyInPlace(Matrix<T>) Multiplies this matrix in-place element-wise by another matrix.
(Inherited from Matrix<T>)
ElementwisePowInPlace(Int32) Raises the elements of a matrix in-place to a constant power.
(Inherited from Matrix<T>)
ElementwisePowInPlace(T) Raises the elements of a matrix in-place to a constant power.
(Inherited from Matrix<T>)
ElementwisePowInPlace(Matrix<T>) Raises this matrix in-place element-wise by another matrix.
(Inherited from Matrix<T>)
ElementwisePowInPlace(Matrix<Int32>) Raises this matrix in-place element-wise by another matrix.
(Inherited from Matrix<T>)
ElementwisePowInPlace(Vector<T>, Dimension) Raises this matrix in-place element-wise by a vector broadcast along the specified dimension.
(Inherited from Matrix<T>)
EnsureWritable() Ensures that the element at the specified index in the vector can be written to.
(Inherited from Matrix<T>)
EnsureWritable(Int32, Int32) Ensures that the element at the specified index in the vector can be written to.
(Inherited from Matrix<T>)
EnsureWritable(Int32, Int32, Int32, Int32) Ensures that the element at the specified index in the vector can be written to.
(Inherited from Matrix<T>)
Equals(Matrix<T>) Determines whether the specified Matrix<T> is equal to the current Matrix<T>.
(Inherited from Matrix<T>)
Equals(Object) Determines whether the specified Object is equal to the current Matrix<T>.
(Inherited from Matrix<T>)
Equals(Object, IEqualityComparer) Returns whether an object is structurally equal to this instance.
(Inherited from Matrix<T>)
EstimateConditionNumber Calculates an estimate for the condition number of this TriangularMatrix<T>.
(Overrides Matrix<T>.EstimateConditionNumber())
ExpInPlace Computes the exponential of the elements of a matrix in-place.
(Inherited from Matrix<T>)
FillMissingValuesInPlace(T) Replaces all missing values in a matrix with the specified value in-place.
(Inherited from Matrix<T>)
FillMissingValuesInPlace(DimensionType, Direction) Replaces all missing values in each row or column in-place with the previous or next non-missing value.
(Inherited from Matrix<T>)
FillMissingValuesInPlace(Vector<T>, DimensionType) Replaces all missing values in each row or column of a matrix in-place with the corresponding value from a vector.
(Inherited from Matrix<T>)
FillMissingValuesInto(T, Matrix<T>) Replaces all missing values in a matrix with the specified value.
(Inherited from Matrix<T>)
FillMissingValuesInto(Vector<T>, DimensionType, Matrix<T>) Replaces all missing values in each row or column with the corresponding value from a vector.
(Inherited from Matrix<T>)
FillMissingValuesInto(DimensionType, Direction, Matrix<T>, Int32) Replaces all missing values in each row or column with the previous or next non-missing value.
(Inherited from Matrix<T>)
FloorInPlace Computes the largest integer less than or equal to the elements of a matrix in-place.
(Inherited from Matrix<T>)
FrobeniusNorm Returns the Frobenius norm of this matrix.
(Inherited from Matrix<T>)
Get<R, C> Gets the value with the specified key.
(Inherited from Matrix<T>)
GetCholeskyDecomposition() Returns the Cholesky decomposition of the matrix.
(Inherited from Matrix<T>)
GetCholeskyDecomposition(Boolean) Returns the Cholesky decomposition of the matrix.
(Inherited from Matrix<T>)
GetColumn(Int32) Returns a column vector for this instance that points at the specified column.
(Inherited from Matrix<T>)
GetColumn(Int32, Intent) Returns a column vector for this instance that points at the specified column.
(Inherited from Matrix<T>)
GetColumn(Int32, Range) Returns a column vector for this instance starting at the specified column and row and of the specified length.
(Inherited from Matrix<T>)
GetColumn(Int32, Int32, Int32) Returns a column vector for this instance starting at the specified column and row and of the specified length.
(Inherited from Matrix<T>)
GetColumn(Int32, Int32, Int32, Int32) Returns a column vector for this instance starting at the specified column and row and of the specified length.
(Inherited from Matrix<T>)
GetColumn(Int32, Int32, Int32, Int32, Intent) Returns a column vector for this instance starting at the specified column and row and of the specified length.
(Inherited from Matrix<T>)
GetColumn<C>(C) Gets the column with the specified column key.
(Inherited from Matrix<T>)
GetColumnEnumerator Returns an enumerator that allows you to iterate over the columns of this instance.
(Inherited from Matrix<T>)
GetColumns(IEnumerable<Int32>) Returns a new matrix that contains only the columns in the specified sequence.
(Inherited from Matrix<T>)
GetColumns(Int32, Int32) Returns a matrix that contains only the specified columns of the current matrix.
(Inherited from Matrix<T>)
GetColumns<C>(IEnumerable<C>) Returns a new matrix that contains only the columns in the specified sequence.
(Inherited from Matrix<T>)
GetColumnSums Returns the sums of the elements of each column of the matrix.
(Inherited from Matrix<T>)
GetConditionNumber Calculates the condition number of this matrix.
(Inherited from Matrix<T>)
GetDeterminant Calculates the determinant of this TriangularMatrix<T>.
(Overrides Matrix<T>.GetDeterminant())
GetDiagonal() Gets a vector view of the diagonal elements of this instance.
(Inherited from Matrix<T>)
GetDiagonal(Int32) Gets a vector view of the specified diagonal of this instance.
(Inherited from Matrix<T>)
GetDiagonal(Int32, Intent) Gets a vector view of the specified diagonal of this instance.
(Overrides Matrix<T>.GetDiagonal(Int32, Intent))
GetEigenvalueDecomposition() Returns the eigenvalue decomposition for this matrix.
(Inherited from Matrix<T>)
GetEigenvalueDecomposition(Boolean) Returns the eigenvalue decomposition for this matrix.
(Inherited from Matrix<T>)
GetEigenvalueDecomposition(Matrix<T>) Returns the generalized eigenvalue decomposition for this matrix.
(Inherited from Matrix<T>)
GetEigenvalueDecomposition(Matrix<T>, Boolean) Returns the generalized eigenvalue decomposition for this matrix.
(Inherited from Matrix<T>)
GetExponential Computes the matrix exponential of a square matrix.
(Inherited from Matrix<T>)
GetHashCode() Returns the hash code for this instance.
(Inherited from Matrix<T>)
GetHashCode(IEqualityComparer) Returns a hash code for this instance.
(Inherited from Matrix<T>)
GetHermitianIndefiniteDecomposition() Returns the Hermitian indefinite (Bunch-Kaufman) decomposition of the matrix.
(Inherited from Matrix<T>)
GetHermitianIndefiniteDecomposition(Boolean) Returns the Hermitian indefinite (Bunch-Kaufman) decomposition of the matrix.
(Inherited from Matrix<T>)
GetInverse() Calculates the inverse matrix..
(Inherited from LinearOperator<T>)
GetInverse(Boolean) Calculates the inverse matrix.
(Overrides Matrix<T>.GetInverse(Boolean))
GetLQDecomposition() Returns the LQ decomposition of the matrix.
(Inherited from Matrix<T>)
GetLQDecomposition(Boolean) Returns the LQ decomposition of the matrix.
(Inherited from Matrix<T>)
GetLUDecomposition() Returns the LU decomposition of the matrix.
(Inherited from Matrix<T>)
GetLUDecomposition(Boolean) Returns the LU decomposition of the matrix.
(Overrides Matrix<T>.GetLUDecomposition(Boolean))
GetNearestColumn<C> Gets the column nearest to the specified column key.
(Inherited from Matrix<T>)
GetNearestColumns<C> Returns a new matrix that contains only the columns in the specified sequence.
(Inherited from Matrix<T>)
GetNearestRow<R> Gets the row nearest to the specified row key.
(Inherited from Matrix<T>)
GetNearestRows<R> Returns a new matrix that contains only the rows in the specified sequence.
(Inherited from Matrix<T>)
GetObjectData Populates a SerializationInfo with the values needed to serialize the target object.
(Overrides Matrix<T>.GetObjectData(SerializationInfo, StreamingContext))
GetParallelColumnEnumerator Returns a partitioner that allows you to iterate over the rows of this instance in parallel.
(Inherited from Matrix<T>)
GetParallelRowEnumerator Returns a partitioner that allows you to iterate over the rows of this instance in parallel.
(Inherited from Matrix<T>)
GetPseudoInverse Calculates the Moore-Penrose pseudo-inverse of this matrix.
(Inherited from Matrix<T>)
GetQLDecomposition() Returns the QL decomposition of the matrix.
(Inherited from Matrix<T>)
GetQLDecomposition(Boolean) Returns the QL decomposition of the matrix.
(Inherited from Matrix<T>)
GetQRDecomposition() Returns the QR decomposition of the matrix.
(Inherited from Matrix<T>)
GetQRDecomposition(Boolean) Returns the QR decomposition of the matrix.
(Overrides Matrix<T>.GetQRDecomposition(Boolean))
GetRow(Int32) Returns a row vector for this instance that points at the specified row.
(Inherited from Matrix<T>)
GetRow(Int32, Intent) Returns a row vector for this instance that points at the specified row.
(Inherited from Matrix<T>)
GetRow(Int32, Range) Returns a row vector for this instance starting at the specified row and column and of the specified length.
(Inherited from Matrix<T>)
GetRow(Int32, Int32, Int32) Returns a row vector for this instance over the specified range.
(Inherited from Matrix<T>)
GetRow(Int32, Int32, Int32, Intent) Returns a row vector for this instance over the specified range.
(Inherited from Matrix<T>)
GetRow(Int32, Int32, Int32, Int32) Returns a row vector for this instance starting at the specified row and column and of the specified length.
(Inherited from Matrix<T>)
GetRow(Int32, Int32, Int32, Int32, Intent) Returns a row vector for this instance starting at the specified row and column and of the specified length.
(Inherited from Matrix<T>)
GetRow<R>(R) Gets the row with the specified row key.
(Inherited from Matrix<T>)
GetRowEnumerator Returns an enumerator that allows you to iterate over the rows of this instance.
(Inherited from Matrix<T>)
GetRows(Subset) Returns a matrix containing only the rows in the specified subset.
(Inherited from Matrix<T>)
GetRows(Int32, Int32) Returns a matrix that contains only the specified rows of the current matrix.
(Inherited from Matrix<T>)
GetRows<R>(IEnumerable<R>) Returns a new matrix that contains only the rows in the specified sequence.
(Inherited from Matrix<T>)
GetRowSums Returns the sums of the elements of each row of the matrix.
(Inherited from Matrix<T>)
GetRQDecomposition() Returns the RQ decomposition of the matrix.
(Inherited from Matrix<T>)
GetRQDecomposition(Boolean) Returns the RQ decomposition of the matrix.
(Inherited from Matrix<T>)
GetSingularValueDecomposition() Returns the singular value decomposition of the matrix.
(Inherited from Matrix<T>)
GetSingularValueDecomposition(Matrix<T>) Returns the generalized singular value decomposition of the matrix and another matrix.
(Inherited from Matrix<T>)
GetSingularValueDecomposition(SingularValueDecompositionFactors) Returns the singular value decomposition of the matrix.
(Inherited from Matrix<T>)
GetSingularValueDecomposition(Matrix<T>, GeneralizedSingularValueDecompositionFactors) Returns the generalized singular value decomposition of the matrix and another matrix.
(Inherited from Matrix<T>)
GetSingularValueDecomposition(SingularValueDecompositionFactors, Boolean) Returns the singular value decomposition of the matrix.
(Inherited from Matrix<T>)
GetSingularValueDecomposition(Matrix<T>, GeneralizedSingularValueDecompositionFactors, Boolean) Returns the generalized singular value decomposition of the matrix and another matrix.
(Inherited from Matrix<T>)
GetSingularValues Gets a vector containing the singular values of the matrix.
(Inherited from Matrix<T>)
GetSubmatrix(Range, Range) Returns a sub-matrix of this instance.
(Inherited from Matrix<T>)
GetSubmatrix(Range, Range, TransposeOperation) Returns a sub-matrix of this instance.
(Inherited from Matrix<T>)
GetSubmatrix(Int32, Int32, Int32, Int32) Returns a sub-matrix of this instance.
(Inherited from Matrix<T>)
GetSubmatrix(Int32, Int32, Int32, Int32, Int32, Int32, TransposeOperation, Intent) Returns a sub-matrix of this instance.
(Inherited from Matrix<T>)
GetSymmetricIndefiniteDecomposition() Returns the symmetric indefinite (Bunch-Kaufman) decomposition of the matrix.
(Inherited from Matrix<T>)
GetSymmetricIndefiniteDecomposition(Boolean) Returns the symmetric indefinite (Bunch-Kaufman) decomposition of the matrix.
(Inherited from Matrix<T>)
GetTypeGets the Type of the current instance.
(Inherited from Object)
GetValue(Int32, Int32) Gets the matrix component at the specified position.
(Overrides Matrix<T>.GetValue(Int32, Int32))
GetValue<R, C>(R, C) Gets the value at the specified row and column keys.
(Inherited from Matrix<T>)
Preliminary
GetValues Infrastructure.
(Inherited from Matrix<T>)
Preliminary
InfinityNorm Returns the infinity norm of this matrix.
(Inherited from Matrix<T>)
IsComponentWritable Returns a value that indicates whether the value of the element at the specified row and column can be changed.
(Inherited from Matrix<T>)
Obsolete.
IsElementWritable Returns a value that indicates whether the value of the component at the specified row and column can be changed.
(Overrides Matrix<T>.IsElementWritable(Int32, Int32))
IsMissing Returns whether the value at the specified index is missing.
(Inherited from Matrix<T>)
IsSingular Gets a value indicating whether the TriangularMatrix<T> is singular.
(Overrides Matrix<T>.IsSingular())
LeastSquaresSolve(Matrix<T>) Solves the system of linear equations for the specified right-hand side matrix in the least squares sense.
(Inherited from LinearOperator<T>)
LeastSquaresSolve(Vector<T>) Solves the system of linear equations for the specified right-hand side vector.
(Inherited from LinearOperator<T>)
LeastSquaresSolve(DenseMatrix<T>, Boolean) Solves the system of linear equations for the specified right-hand side dense matrix in the least squares sense and optionally overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>)
LeastSquaresSolve(DenseVector<T>, Boolean) Solves the system of linear equations for the specified right-hand side dense vector in the least squares sense and optionally overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>)
LeastSquaresSolveInto(Matrix<T>, Matrix<T>) Solves a system of equations defined by the matrix and multiple right-hand sides in the least squares sense.
(Inherited from Matrix<T>)
LeastSquaresSolveInto(Vector<T>, Vector<T>) Solves a system of equations defined by the matrix and the specified right-hand side in the least squares sense.
(Inherited from Matrix<T>)
Log10InPlace Computes the logarithm of the elements of a matrix in-place.
(Inherited from Matrix<T>)
LogInPlace() Computes the logarithm of the elements of a matrix in-place.
(Inherited from Matrix<T>)
LogInPlace(T) Computes the logarithm of the elements of a matrix in-place.
(Inherited from Matrix<T>)
MapColumns<U> Applies a vector function to each column in a matrix and returns the result as a matrix.
(Inherited from Matrix<T>)
MapColumnsInPlace Applies a function to each column in a matrix in-place.
(Inherited from Matrix<T>)
MapColumnsInto<U> Applies a vector function to each column in a matrix and returns the result as a matrix.
(Inherited from Matrix<T>)
MapInPlace(Func<T, T>) Applies a function in-place to the elements of a matrix.
(Inherited from Matrix<T>)
MapInPlace<U>(Func<U, T, T>, Matrix<U>) Applies a function in-place to the elements of a matrix as the second argument.
(Inherited from Matrix<T>)
MapInPlace<U>(Func<T, U, T>, Matrix<U>) Applies a function to the elements of a matrix.
(Inherited from Matrix<T>)
MapInto<U> Applies a function to the elements of a matrix.
(Inherited from Matrix<T>)
MapRows<U> Applies a vector function to each row in a matrix and returns the result as a matrix.
(Inherited from Matrix<T>)
MapRowsInPlace Applies a function to each column in a matrix and returns the result as a vector.
(Inherited from Matrix<T>)
MapRowsInto<U> Applies a vector function to each row in a matrix and returns the result as a matrix.
(Inherited from Matrix<T>)
Max Returns the value of the largest element in this matrix.
(Inherited from Matrix<T>)
Min Returns the value of the smallest element in this matrix.
(Inherited from Matrix<T>)
Multiply(Matrix<T>)Applies the linear operator to a matrix.
(Inherited from LinearOperator<T>)
Multiply(Vector<T>)Applies the linear operator to a vector.
(Inherited from LinearOperator<T>)
Multiply(DenseMatrix<T>, TriangularMatrix<T>) Multiplies a DenseMatrix<T> by a TriangularMatrix<T>.
Multiply(TransposeOperation, Matrix<T>) Multiplies a matrix on the left by this matrix.
(Inherited from LinearOperator<T>)
Obsolete.
Multiply(TransposeOperation, Vector<T>) Multiplies a vector on the left by this vector.
(Inherited from LinearOperator<T>)
Obsolete.
Multiply(MatrixOperationSide, TransposeOperation, TransposeOperation, Matrix<T>) Multiplies this matrix by another matrix and returns the result.
(Inherited from Matrix<T>)
Obsolete.
MultiplyInPlace Multiplies this matrix by a scalar factor.
(Overrides Matrix<T>.MultiplyInPlace(T))
MultiplyTranspose(Matrix<T>)Applies the transpose of the linear operator to a matrix.
(Inherited from LinearOperator<T>)
MultiplyTranspose(Vector<T>)Applies the (conjugate) transpose of the linear operator to a vector.
(Inherited from LinearOperator<T>)
NegateInPlace Negates a matrix in-place.
(Inherited from Matrix<T>)
OneNorm Returns the 1-norm of this matrix.
(Inherited from Matrix<T>)
PermuteColumnsInPlace Permutes the columns of the matrix using the specified Permutation.
(Inherited from Matrix<T>)
PermuteRowsAndColumnsInPlace(Permutation) Permutes the rows and columns of the matrix using the specified Permutation.
(Inherited from Matrix<T>)
PermuteRowsAndColumnsInPlace(Permutation, Permutation) Permutes the rows and columns of the matrix using the specified row and column Permutation.
(Inherited from Matrix<T>)
PermuteRowsInPlace Permutes the rows of the matrix using the specified Permutation.
(Inherited from Matrix<T>)
Protect Returns a read-only copy of the matrix.
(Inherited from Matrix<T>)
ProtectInPlace Protects the matrix from changes.
(Inherited from Matrix<T>)
Rank() Returns the numerical rank of a matrix.
(Inherited from LinearOperator<T>)
Rank(T) Returns the numerical rank of a matrix using the specified tolerance.
(Inherited from Matrix<T>)
Reduce<U> Applies a function to each row or column in a matrix and returns the result as a vector.
(Inherited from Matrix<T>)
ReduceColumns<U> Applies a function to each column in a matrix and returns the result as a vector.
(Inherited from Matrix<T>)
ReduceColumnsInto<U> Applies a function to each column in a matrix and returns the result as a vector.
(Inherited from Matrix<T>)
ReduceRows<U> Applies a function to each row in a matrix and returns the result as a vector.
(Inherited from Matrix<T>)
ReduceRowsInto<U> Applies a function to each row in a matrix and returns the result as a vector.
(Inherited from Matrix<T>)
RemoveWithMissingValues Returns a new matrix that has the rows or columns that contain missing values removed.
(Inherited from Matrix<T>)
Reshape Returns a matrix that contains the same elements listed columnwise.
(Inherited from Matrix<T>)
ReshapeAsVector Returns a vector that contains the columnwise matrix elements.
(Inherited from Matrix<T>)
ScaleColumns Scales the columns of the matrix by the values specified by a vector.
(Inherited from Matrix<T>)
Obsolete.
ScaleColumnsInPlace Scales the columns of the matrix by the values specified by a vector.
(Inherited from Matrix<T>)
ScaleRows Scales the rows of the matrix by the values specified by a vector.
(Inherited from Matrix<T>)
Obsolete.
ScaleRowsInPlace Scales the rows of the matrix by the values specified by a vector.
(Inherited from Matrix<T>)
SetToZero Sets all elements of the matrix to zero.
(Inherited from Matrix<T>)
SetValue(T) Sets all elements of the matrix to the specified value.
(Inherited from Matrix<T>)
SetValue(T, Int32, Int32) Sets the matrix component at the specified position to the specified value.
(Overrides Matrix<T>.SetValue(T, Int32, Int32))
SetValue<R, C>(T, R, C) Sets the value at the specified row and column key value.
(Inherited from Matrix<T>)
Preliminary
ShallowCopy Makes a shallow copy of this matrix.
(Inherited from Matrix<T>)
SinhInPlace Computes the hyperbolic sine of the elements of a matrix in-place.
(Inherited from Matrix<T>)
SinInPlace Computes the sine of the elements of a matrix in-place.
(Inherited from Matrix<T>)
Solve(Matrix<T>) Solves the system of linear equations for the specified right-hand side matrix.
(Inherited from LinearOperator<T>)
Solve(Vector<T>) Solves the system of linear equations for the specified right-hand side vector.
(Inherited from LinearOperator<T>)
Solve(DenseMatrix<T>, Boolean) Solves the system of linear equations for the specified right-hand side dense matrix and optionally overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>)
Solve(DenseVector<T>, Boolean) Solves the system of linear equations for the specified right-hand side dense vector and optionally overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>)
SolveInto(Matrix<T>, Matrix<T>) Solves a system of equations defined by the matrix and multiple right-hand sides.
(Inherited from LinearOperator<T>)
SolveInto(Vector<T>, Vector<T>) Solves a system of equations defined by the matrix and the specified right-hand side.
(Inherited from LinearOperator<T>)
SolveInto(TransposeOperation, Matrix<T>, Matrix<T>) Solves a system of equations defined by the matrix and multiple right-hand sides.
(Overrides Matrix<T>.SolveInto(TransposeOperation, Matrix<T>, Matrix<T>))
SolveInto(TransposeOperation, Vector<T>, Vector<T>) Solves a system of equations defined by the matrix and the specified right-hand side.
(Overrides Matrix<T>.SolveInto(TransposeOperation, Vector<T>, Vector<T>))
SolveTranspose(Matrix<T>) Solves the transposed system of linear equations for the specified right-hand side matrix.
(Inherited from LinearOperator<T>)
SolveTranspose(Vector<T>) Solves the system of linear equations for the specified right-hand side vector.
(Inherited from LinearOperator<T>)
SolveTranspose(DenseMatrix<T>, Boolean) Solves the transposed system of linear equations for the specified right-hand side dense matrix and optionally overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>)
SolveTranspose(DenseVector<T>, Boolean) Solves the transposed system of linear equations for the specified right-hand side dense vector and optionally overwrites the right-hand side with the solution.
(Inherited from LinearOperator<T>)
SolveTransposeInto(Matrix<T>, Matrix<T>) Solves a system of equations defined by the matrix and multiple right-hand sides.
(Inherited from LinearOperator<T>)
SolveTransposeInto(Vector<T>, Vector<T>) Solves a system of equations defined by the matrix and the specified right-hand side.
(Inherited from LinearOperator<T>)
SortColumns() Sorts each column of the matrix in ascending order.
(Inherited from Matrix<T>)
SortColumns(SortOrder) Sorts each column of the matrix in the specified order.
(Inherited from Matrix<T>)
SortRows() Sorts each row of the matrix in ascending order.
(Inherited from Matrix<T>)
SortRows(SortOrder) Sorts each row of the matrix in the specified order.
(Inherited from Matrix<T>)
SqrtInPlace Computes the square root of the elements of a matrix in-place.
(Inherited from Matrix<T>)
SubtractInPlace(T) Subtracts a scalar value from the elements of this matrix in-place.
(Inherited from Matrix<T>)
SubtractInPlace(Matrix<T>) Subtracts another matrix from this matrix in-place.
(Inherited from Matrix<T>)
SubtractInPlace(Vector<T>, Dimension) Subtracts a vector broadcast along the specified dimension from this matrix in-place.
(Inherited from Matrix<T>)
Sum Returns the sum of the elements of the matrix.
(Inherited from Matrix<T>)
Summarize() Returns a summary of the contents of the matrix using the default summary options.
(Inherited from Matrix<T>)
Summarize(SummaryOptions) Returns a summary of the contents of the matrix using the specified options.
(Inherited from Matrix<T>)
SwapColumns Swaps the columns with the specified indices.
(Inherited from Matrix<T>)
SwapRows Swaps the rows with the specified indices.
(Inherited from Matrix<T>)
TanhInPlace Computes the hyperbolic tangent of the elements of a matrix in-place.
(Inherited from Matrix<T>)
TanInPlace Computes the tangent of the elements of a matrix in-place.
(Inherited from Matrix<T>)
ToArray() Gets the elements of the vector.
(Inherited from Matrix<T>)
ToArray(MatrixElementOrder) Gets the elements of the vector.
(Inherited from Matrix<T>)
ToDataFrame<R, C>() Converts a matrix to a data frame with the same row and column indexes.
(Inherited from Matrix<T>)
ToDataFrame<R, C>(Index<R>, Index<C>) Converts a matrix to a data frame with the same row and column indexes.
(Inherited from Matrix<T>)
ToDenseMatrix Makes a copy of this instance and returns it as a dense matrix.
(Inherited from Matrix<T>)
ToHermitianMatrix Returns a new HermitianMatrix<T> extracted from a part of the matrix.
(Inherited from Matrix<T>)
ToString()Returns a string that represents the current object.
(Inherited from Matrix<T>)
ToString(String) Returns a String representation of this Matrix<T>.
(Inherited from Matrix<T>)
ToString(String, IFormatProvider) Returns a String representation of this Matrix<T>.
(Inherited from Matrix<T>)
ToSymmetricMatrix Returns a new SymmetricMatrix<T> extracted from a part of the matrix.
(Inherited from Matrix<T>)
Trace Gets the sum of the diagonal elements of this matrix.
(Inherited from Matrix<T>)
Transpose Returns the transpose of this instance.
(Overrides Matrix<T>.Transpose())
TryEnsureWritable() Ensures that the element at the specified index in the vector can be written to.
(Inherited from Matrix<T>)
TryEnsureWritable(Int32, Int32) Ensures that the element at the specified index in the vector can be written to.
(Inherited from Matrix<T>)
TryEnsureWritable(Int32, Int32, Int32, Int32) Ensures that the element at the specified index in the vector can be written to.
(Inherited from Matrix<T>)
TwoNorm Returns the two-norm of this matrix.
(Inherited from Matrix<T>)
UnscaleColumns Unscales the columns of the matrix by the reciprocal of the values specified by a vector.
(Inherited from Matrix<T>)
Obsolete.
UnscaleColumnsInPlace Unscales the columns of the matrix by the reciprocal of the values specified by a vector.
(Inherited from Matrix<T>)
UnscaleRows Unscales the rows of the matrix by the reciprocal of the values specified by a vector.
(Inherited from Matrix<T>)
Obsolete.
UnscaleRowsInPlace Unscales the rows of the matrix by the reciprocal of the values specified by a vector.
(Inherited from Matrix<T>)

Extension Methods

Abs<T> Computes the absolute value of the elements of a matrix.
(Defined by Matrix)
Acos<T> Computes the inverse cosine of the elements of a matrix.
(Defined by Matrix)
Acosh<T> Computes the inverse hyperbolic cosine of the elements of a matrix.
(Defined by Matrix)
AddScaledProduct<T> Adds the scaled product of two matrices to another matrix.
(Defined by Matrix)
AddScaledProduct<T> Adds the scaled product of two matrices to another matrix.
(Defined by Matrix)
Asin<T> Computes the inverse sine of the elements of a matrix.
(Defined by Matrix)
Asinh<T> Computes the inverse hyperbolic sine of the elements of a matrix.
(Defined by Matrix)
Atan<T> Computes the inverse tangent of the elements of a matrix.
(Defined by Matrix)
Atanh<T> Computes the inverse hyperbolic tangent of the elements of a matrix.
(Defined by Matrix)
Ceiling<T> Computes the smallest integer greater than or equal to the elements of a matrix.
(Defined by Matrix)
ColumnMeans<T> Returns a vector containing the means of the columns of a matrix.
(Defined by Stats)
Conjugate<T> Returns the conjugate of a matrix.
(Defined by Matrix)
ConjugateInto<T> Conjugates the elements of a matrix.
(Defined by Matrix)
Cos<T> Computes the cosine of the elements of a matrix.
(Defined by Matrix)
Cosh<T> Computes the hyperbolic cosine of the elements of a matrix.
(Defined by Matrix)
CovarianceMatrix<T> Returns the covariance matrix for the columns in a matrix.
(Defined by Stats)
Exp<T> Computes the exponential of the elements of a matrix.
(Defined by Matrix)
Floor<T> Computes the largest integer less than or equal to the elements of a matrix.
(Defined by Matrix)
Log<T> Returns a matrix whose elements are the logarithms of the elements of another matrix.
(Defined by Matrix)
Log10<T> Returns a matrix whose elements are the base 10 logarithms of the elements of another matrix.
(Defined by Matrix)
MakeDistributed<T> Returns a distributed version of a matrix.
(Defined by DistributedExtensions)
Max<T> Returns a matrix whose elements are the maximums of the components of two vectors.
(Defined by Matrix)
Max<T> Returns a matrix whose elements are the maximum of the components of a matrix and a real number.
(Defined by Matrix)
MaxInto<T> Returns a matrix whose elements are the maximums of the components of two vectors.
(Defined by Matrix)
MaxInto<T> Returns a matrix whose elements are the maximum of the components of a matrix and a real number.
(Defined by Matrix)
Min<T> Returns a matrix whose elements are the minimums of the components of two vectors.
(Defined by Matrix)
Min<T> Returns a matrix whose elements are the minimum of the components of a matrix and a real number.
(Defined by Matrix)
MinInto<T> Returns a matrix whose elements are the minimums of the components of two vectors.
(Defined by Matrix)
MinInto<T> Returns a matrix whose elements are the minimum of the components of a matrix and a real number.
(Defined by Matrix)
Reciprocal<T> Returns a matrix whose elements are the inverses (reciprocals) of the components of another matrix.
(Defined by Matrix)
ReciprocalInto<T> Computes the inverses (reciprocals) of the elements of a matrix.
(Defined by Matrix)
RowMeans<T> Returns a vector containing the means of the rows of a matrix.
(Defined by Stats)
Sin<T> Computes the sine of the elements of a matrix.
(Defined by Matrix)
Sinh<T> Computes the hyperbolic sine of the elements of a matrix.
(Defined by Matrix)
Sqrt<T> Computes the square root of the elements of a matrix.
(Defined by Matrix)
Tan<T> Computes the tangent of the elements of a matrix.
(Defined by Matrix)
Tanh<T> Computes the hyperbolic tangent of the elements of a matrix.
(Defined by Matrix)
ToJson<T> Returns a string containing a matrix in JSON format.
(Defined by JsonFile)

See Also