Click or drag to resize

ConnectivityMatrix Class

Class ConnectivityMatrix represents a symmetric matrix of double-precision floating point values.
Inheritance Hierarchy

Namespace: CenterSpace.NMath.Core
Assembly: NMath (in NMath.dll) Version: 7.4
Syntax
[SerializableAttribute]
public class ConnectivityMatrix : DoubleSymmetricMatrix

The ConnectivityMatrix type exposes the following members.

Constructors
 NameDescription
Public methodConnectivityMatrix(DoubleMatrix) Constructs a square ConnectivityMatrix instance by extracting the upper triangular part of a square general matrix.
Public methodConnectivityMatrix(DoubleVector) Constructs a ConnectivityMatrix instance using the data in the given vector.
Public methodConnectivityMatrix(Int32) Constructs a ConnectivityMatrix instance with the specified size.
Public methodConnectivityMatrix(DoubleMatrix, IEnumerableString) Constructs a square ConnectivityMatrix instance by extracting the upper triangular part of a square general matrix.
Public methodConnectivityMatrix(DoubleVector, IEnumerableString) Constructs a ConnectivityMatrix instance from the specified data and lables for those items.
Public methodConnectivityMatrix(DoubleVector, Int32) Constructs a ConnectivityMatrix instance with the specified size, and using the data in the given vector.
Public methodConnectivityMatrix(Int32, IEnumerableString) Constructs a ConnectivityMatrix instance with the specified number of items and lables for those items.
Protected methodConnectivityMatrix(DoubleVector, Int32, Boolean) Constructs a ConnectivityMatrix instance from the given data.
Public methodConnectivityMatrix(DoubleVector, Int32, IEnumerableString) Constructs a ConnectivityMatrix instance from the specified data and lables for those items.
Top
Properties
 NameDescription
Public propertyCols Gets the number of columns in the matrix.
(Inherited from DoubleSymmetricMatrix)
Public propertyDataVector Gets the data vector referenced by this matrix.
(Inherited from DoubleSymmetricMatrix)
Public propertyItem Gets and sets the value at the specified position. Symmetry is maintained.
(Inherited from DoubleSymmetricMatrix)
Public propertyLabels Gets and sets the labels for the rows/columns of the connectivity matrix.
Public propertyNumberOfLabels Gets the number of row/column labels.
Public propertyOrder Gets the order of the matrix.
(Inherited from DoubleSymmetricMatrix)
Public propertyRows Gets the number of rows in the matrix.
(Inherited from DoubleSymmetricMatrix)
Top
Methods
 NameDescription
Public methodApply(FuncDoubleVector, Double) Returns a new vector containing an element for each column or row in this matrix. The elements are the results of applying a function that takes a vector and returns a single-precision number.
(Inherited from DoubleSymmetricMatrix)
Public methodApply(FuncDouble, Double) Returns a new matrix with the same size as this matrix, whose values are the result of applying the given unary function to each element of this matrix.
(Inherited from DoubleSymmetricMatrix)
Public methodApply(FuncDouble, Double, Double, DoubleSymmetricMatrix) Returns a new matrix with the same size as this matrix, whose values are the result of applying the given binary function to each element of this matrix. The first parameter to the binary function is the matrix element; the second parameter is the corresponding element of the passed matrix.
(Inherited from DoubleSymmetricMatrix)
Public methodApply(FuncDouble, Double, Double, Double) Returns a new matrix with the same size as this matrix, whose values are the result of applying the given binary function to each element of this matrix. The first parameter to the binary function is the matrix element; the second parameter is the passed float-precision value.
(Inherited from DoubleSymmetricMatrix)
Public methodApply(FuncDouble, Int32, Double, Int32) Returns a new matrix with the same size as this matrix, whose values are the result of applying the given binary function to each element of this matrix. The first parameter to the binary function is the matrix element; the second parameter is the passed integer value.
(Inherited from DoubleSymmetricMatrix)
Public methodClone Constructs a deep copy of self.
Public methodDeepenThisCopy Guarantees that there is only one reference to the underlying data and that this data is in contiguous storage.
(Inherited from DoubleSymmetricMatrix)
Public methodEquals Tests for equality of this connectivity matrix and another connectivity matrix. Two connectivity matrices are equal if they have the same dimensions and all values are equal.
(Overrides DoubleSymmetricMatrixEquals(Object))
Public methodGetHashCode Computes hash code.
(Overrides DoubleSymmetricMatrixGetHashCode)
Public methodLeadingSubmatrix Returns the k by k upper left corner of the matrix. The matrix and the submatrix share the same data.
(Inherited from DoubleSymmetricMatrix)
Public methodResize Changes the order of this matrix to that specified, adding zeros or truncating as necessary.
(Inherited from DoubleSymmetricMatrix)
Protected methodSetLabels Sets the labels to the input values filling in with default values if there order is greater than the number of input labels.
Public methodShallowCopy Creates a shallow copy of this matrix.
(Inherited from DoubleSymmetricMatrix)
Public methodCode exampleToCommaSeparated Returns a formatted string representation of this matrix using commas and newlines.
(Inherited from DoubleSymmetricMatrix)
Public methodCode exampleToCommaSeparated(String) Returns a formatted string representation of this matrix using commas and newlines. Numbers are formatted using the specified format string.
(Inherited from DoubleSymmetricMatrix)
Public methodToGeneralMatrix Converts this sparse matrix to a general matrix.
(Inherited from DoubleSymmetricMatrix)
Public methodCode exampleToString Returns a formatted string representation of this matrix.

ToCommaSeparated

ToCommaSeparated(String)

ToTabDelimited

ToTabDelimited(String)


(Inherited from DoubleSymmetricMatrix)
Public methodCode exampleToString(String) Returns a formatted string representation of this matrix. Numbers are displayed using the specified format.

ToCommaSeparated

ToCommaSeparated(String)

ToTabDelimited

ToTabDelimited(String)


(Inherited from DoubleSymmetricMatrix)
Public methodCode exampleToTabDelimited Returns a formatted string representation of this matrix using tabs and newlines.
(Inherited from DoubleSymmetricMatrix)
Public methodCode exampleToTabDelimited(String) Returns a formatted string representation of this matrix using tabs and newlines. Numbers are formatted using the specified format string.
(Inherited from DoubleSymmetricMatrix)
Public methodTransform(FuncDouble, Double) Modifies the elements of this matrix by applying the given unary function to each element.
(Inherited from DoubleSymmetricMatrix)
Public methodTransform(FuncDouble, Double, Double, DoubleSymmetricMatrix) Modifies the contents of this matrix by applying the given binary function to each element. The first parameter to the binary function is the matrix element; the second parameter is the corresponding element of the passed matrix.
(Inherited from DoubleSymmetricMatrix)
Public methodTransform(FuncDouble, Double, Double, Double) Modifies the contents of this matrix by applying the given binary function to each element. The first parameter to the binary function is the matrix element; the second parameter is the passed float-precision value.
(Inherited from DoubleSymmetricMatrix)
Public methodTransform(FuncDouble, Int32, Double, Int32) Modifies the contents of this matrix by applying the given binary function to each element. The first parameter to the binary function is the matrix element; the second parameter is the passed integer value.
(Inherited from DoubleSymmetricMatrix)
Public methodTranspose Returns this matrix.
(Inherited from DoubleSymmetricMatrix)
Top
Operators
 NameDescription
Public operatorStatic memberAddition(ConnectivityMatrix, ConnectivityMatrix) Adds two connectivity matrices.
Public operatorStatic memberAddition(ConnectivityMatrix, Double) Adds a connectivity matrix and a scalar.
Public operatorStatic memberAddition(Double, ConnectivityMatrix) Adds a scalar and a connectivity matrix.
Public operatorStatic memberDecrement(ConnectivityMatrix) Decrements each element of the given matrix.
Public operatorStatic memberDivision(ConnectivityMatrix, ConnectivityMatrix) Divide a connectivity matrix by another.
Public operatorStatic memberDivision(ConnectivityMatrix, Double) Divide a connectivity matrix by a scalar.
Public operatorStatic memberDivision(Double, ConnectivityMatrix) Divide a scalar by a connectivity matrix.
Public operatorStatic memberEquality(ConnectivityMatrix, ConnectivityMatrix) Tests for equality of two connectivity matrices. Two matrices are equal if they have the same order and all values are equal.
Public operatorStatic memberIncrement(ConnectivityMatrix) Increments each element of the given matrix.
Public operatorStatic memberInequality(ConnectivityMatrix, ConnectivityMatrix) Tests for inequality of two connectivity matrices. Two matrices are equal if they have the same order and all values are equal.
Public operatorStatic memberMultiply(ConnectivityMatrix, ConnectivityMatrix) Multiply two lower connectivity matrices. Multiply two lower connectivity matrices.
Public operatorStatic memberMultiply(ConnectivityMatrix, Double) Multiply a connectivity matrix and a scalar.
Public operatorStatic memberMultiply(Double, ConnectivityMatrix) Multiply a scalar and a connectivity matrix.
Public operatorStatic memberSubtraction(ConnectivityMatrix, ConnectivityMatrix) Subtracts one connectivity matrix from another.
Public operatorStatic memberSubtraction(ConnectivityMatrix, Double) Subtracts a scalar from a connectivity matrix.
Public operatorStatic memberSubtraction(Double, ConnectivityMatrix) Subtracts a connectivity matrix from a scalar.
Public operatorStatic memberUnaryNegation(ConnectivityMatrix) Negation operator.
Public operatorStatic memberUnaryPlus(ConnectivityMatrix) Unary + operator. Just returns the input matrix.
Top
Fields
 NameDescription
Public fieldStatic memberDEFAULT_LABEL_FORMAT Default label format for the items represented in a ConnectivityMatrix instance. If the format string contains the symbol '{0}' it will be replaced by the items zero-based index.
Protected fieldlabels_ Lables for the items being connected.
Top
Remarks
The i, j entry represents the strength of connectivity between the variables i and j.
A symmetric matrix is equal to its transpose. In other words, A[i,j] = A[j,i] for all elements i,j in matrix A.
The matrix is stored in a vector column by column. For efficiency, only the upper triangle is stored. For example, the following 5 by 5 symmetric matrix:
                | a00 a01 a02 a03 a04 |
                | a10 a11 a12 a13 a14 |
            A = | a20 a21 a22 a23 a24 |
                | a30 a31 a32 a33 a34 |
                | a40 a41 a42 a43 a44 |
            
is stored in a data vector v as:
            v = [a00 a01 a11 a02 a12 a22 a03 a13 a23 a33 a04 a14 a24 a34 a44 ] 
            
In general, A[i,j] = v[j(j+1)/2+i], i<=j v[i(i+1)/2+j], j<i
See Also