﻿DoubleLowerTriMatrix Class

DoubleLowerTriMatrix Class

Class DoubleLowerTriMatrix represents a lower triangular matrix of double-precision floating point values. A lower triangular matrix is a square matrix with all elements above the main diagonal equal to zero.
Inheritance Hierarchy
SystemObject
CenterSpace.NMath.CoreDoubleLowerTriMatrix

Namespace: CenterSpace.NMath.Core
Assembly: NMath (in NMath.dll) Version: 7.4
Syntax
```[SerializableAttribute]
public class DoubleLowerTriMatrix : ICloneable```

The DoubleLowerTriMatrix type exposes the following members.

Constructors
NameDescription
DoubleLowerTriMatrix(DoubleMatrix) Constructs a square DoubleLowerTriMatrix instance by extracting the lower triangular part of a square general matrix.
DoubleLowerTriMatrix(DoubleSymmetricMatrix) Constructs a square DoubleLowerTriMatrix instance by extracting the lower triangular part of a symmetric matrix.
DoubleLowerTriMatrix(DoubleVector) Constructs a square DoubleLowerTriMatrix instance using the data in the given vector.
DoubleLowerTriMatrix(Int32) Constructs a square DoubleLowerTriMatrix instance with the specified size. All elements are initialized to zero.
DoubleLowerTriMatrix(DoubleMatrix, Int32) Constructs a square DoubleLowerTriMatrix instance by extracting the lower triangular part of the specified leading square submatrix of a general matrix.
DoubleLowerTriMatrix(DoubleVector, Int32) Constructs a square DoubleLowerTriMatrix instance with the specified size, and using the data in the given vector.
Top
Properties
NameDescription
Cols Gets the number of columns in the matrix.
DataVector Gets the data vector referenced by this matrix.
Item Gets and sets the value at the specified position. Zero matrix elements are not stored, so assigning a non-zero value to a matrix element above the diagonal of the matrix raises an exception.
Order Gets the order of the matrix.
Rows Gets the number of rows in the matrix.
Top
Methods
NameDescription
Clone Creates a deep copy of this matrix.
DeepenThisCopy Guarantees that there is only one reference to the underlying data and that this data is in contiguous storage.
Divide(Double, DoubleLowerTriMatrix) Divide a scalar by a lower triangular matrix.
Divide(DoubleLowerTriMatrix, DoubleLowerTriMatrix) Divide a lower triangular matrix by another.
Divide(DoubleLowerTriMatrix, Double) Divide a lower triangular matrix by a scalar.
Equals Tests for equality of this matrix and another matrix. Two matrices are equal if they have the same dimensions and all values are equal.
(Overrides ObjectEquals(Object))
GetHashCode Returns an integer hash code for this matrix.
(Overrides ObjectGetHashCode)
LeadingSubmatrix Returns the k by k upper left corner of the matrix. The matrix and the submatrix share the same data.
Multiply(Double, DoubleLowerTriMatrix) Multiply a scalar and a lower triangular matrix.
Multiply(DoubleLowerTriMatrix, DoubleLowerTriMatrix) Multiply two lower triangular matrices.
Multiply(DoubleLowerTriMatrix, Double) Multiply a lower triangular matrix and a scalar.
Negate Negation operator.
OnDeserialized Checks that the matrix is square following deserialization
Resize Changes the order of this matrix to that specified, adding zeros or truncating as necessary.
ShallowCopy Creates a shallow copy of this matrix.
Subtract(Double, DoubleLowerTriMatrix) Subtracts a lower triangular matrix from a scalar.
Subtract(DoubleLowerTriMatrix, DoubleLowerTriMatrix) Subtracts one lower triangular matrix from another.
Subtract(DoubleLowerTriMatrix, Double) Subtracts a scalar from a lower triangular matrix.
ToCommaSeparated Returns a formatted string representation of this matrix using tabs and newlines.
ToCommaSeparated(String) Returns a formatted string representation of this matrix using tabs and newlines. Numbers are formatted using the specified format string.
ToGeneralMatrix Converts this triangular matrix to a general matrix.
ToString Returns a formatted string representation of this matrix.

ToCommaSeparated

ToCommaSeparated(String)

ToTabDelimited

ToTabDelimited(String)

(Overrides ObjectToString)
ToString(String) Returns a formatted string representation of this matrix. Numbers are displayed using the specified format.

ToCommaSeparated

ToCommaSeparated(String)

ToTabDelimited

ToTabDelimited(String)

ToTabDelimited Returns a formatted string representation of this matrix using tabs and newlines.
ToTabDelimited(String) Returns a formatted string representation of this matrix using tabs and newlines. Numbers are formatted using the specified format string.
Transpose Transposes this matrix.
Top
Operators
NameDescription
Division(Double, DoubleLowerTriMatrix) Divide a scalar by a lower triangular matrix.
Division(DoubleLowerTriMatrix, DoubleLowerTriMatrix) Divide a lower triangular matrix by another.
Division(DoubleLowerTriMatrix, Double) Divide a lower triangular matrix by a scalar.
Equality(DoubleLowerTriMatrix, DoubleLowerTriMatrix) Tests for equality of two lower triangular matrices. Two matrices are equal if they have the same dimensions and all values are equal.
(FloatLowerTriMatrix to DoubleLowerTriMatrix) Implicitly converts a FloatLowerTriMatrix instance into a DoubleLowerTriMatrix instance.
Inequality(DoubleLowerTriMatrix, DoubleLowerTriMatrix) Tests for inequality of two lower triangular matrices. Two matrices are equal if they have the same dimensions and all values are equal.
Multiply(Double, DoubleLowerTriMatrix) Multiply a scalar and a lower triangular matrix.
Multiply(DoubleLowerTriMatrix, DoubleLowerTriMatrix) Multiply two lower triangular matrices.
Multiply(DoubleLowerTriMatrix, Double) Multiply a lower triangular matrix and a scalar.
Subtraction(Double, DoubleLowerTriMatrix) Subtracts a lower triangular matrix from a scalar.
Subtraction(DoubleLowerTriMatrix, DoubleLowerTriMatrix) Subtracts one lower triangular matrix from another.
Subtraction(DoubleLowerTriMatrix, Double) Subtracts a scalar from a lower triangular matrix.
UnaryNegation(DoubleLowerTriMatrix) Negation operator.
UnaryPlus(DoubleLowerTriMatrix) Unary + operator. Just returns the input matrix.
Top
Remarks
The matrix is stored in a vector row by row. For efficiency, zero elements are not stored. For example, the following 5 by 5 lower triangular matrix:
C#
```    | a00 0   0   0   0   |
| a10 a11 0   0   0   |
A = | a20 a21 a22 0   0   |
| a30 a31 a32 a33 0   |
| a40 a41 a42 a43 a44 |```
is stored in a data vector v as:
C#
`v = [a00 a10 a11 a20 a21 a22 a30 a31 a32 a33 a40 a41 a42 a43 a44 ]`
In general, A[i,j] = v[i(i+1)/2 + j].