public readonly struct RMatrix : IFormattable,
IEquatable<RMatrix>, IEqualityOperators<RMatrix, RMatrix, bool>,
IEqualityOperators<RMatrix, LMatrix, bool>, IEqualityOperators<RMatrix, Matrix, bool>,
IAdditionOperators<RMatrix, RMatrix, RMatrix>, IAdditionOperators<RMatrix, double, RMatrix>,
ISubtractionOperators<RMatrix, RMatrix, RMatrix>, ISubtractionOperators<RMatrix, double, RMatrix>,
IMultiplyOperators<RMatrix, DVector, DVector>, IMultiplyOperators<RMatrix, double, RMatrix>,
IDivisionOperators<RMatrix, double, RMatrix>, IUnaryNegationOperators<RMatrix, RMatrix>,
IMatrixHaving a separate type for upper-triangular matrices is not a matter of storage, but of semantics.
Upper-triangular matrices may have a different number of rows and columns.
| RMatrix(DVector) | Creates a diagonal matrix given its diagonal. |
| RMatrix(Int32) | Creates an empty square matrix. |
| RMatrix(Int32, NormalRandom) | Creates a squared matrix filled with a standard normal distribution. |
| RMatrix(Int32, Int32) | Creates an empty rectangular matrix. |
| RMatrix(Int32, Random) | Creates a squared matrix filled with a uniform distribution generator. |
| RMatrix(Int32, Int32, NormalRandom) | Creates a matrix filled with a standard normal distribution. |
| RMatrix(Int32, Int32, Double) | Creates a matrix with a given number of rows and columns, and its internal array. |
| RMatrix(Int32, Int32, Random) | Creates a matrix filled with a uniform distribution generator. |
| RMatrix(Int32, Random, Double, Double) | Creates a square matrix filled with a uniform distribution generator. |
| RMatrix(Int32, Int32, Random, Double, Double) | Creates a matrix filled with a uniform distribution generator. |
| Cols | Gets the number of columns. |
| IsInitialized | Has the matrix been properly initialized? |
| IsSquare | Checks if the matrix is a square one. |
| Item | Gets the value at a single cell. |
| Rows | Gets the number of rows. |
| AMax | Gets the cell with the maximum absolute value. |
| AMin | Gets the cell with the minimum absolute value. |
| Clone | Creates an identical lower triangular matrix. |
| Contains | Checks if the matrix contains the given value. |
| Determinant | Gets the determinant of the matrix. |
| Diagonal | Gets the main diagonal. |
| Equals(Object) | Checks if the provided argument is a matrix with the same values. (Overrides ValueTypeEquals(Object)) |
| Equals(RMatrix) | Checks if the provided argument is a matrix with the same values. |
| GetHashCode | Returns the hashcode for this matrix. (Overrides ValueTypeGetHashCode) |
| GetType | Gets the Type of the current instance. (Inherited from Object) |
| Identity | Creates an identity matrix given its size. |
| Inverse | Calculates the inverse of the matrix. |
| Maximum | Gets the cell with the maximum value. |
| Minimum | Gets the cell with the minimum value. |
| MultiplyTranspose | Multiplies this matrix by the transposed argument. |
| Redim(Int32) | Creates a new matrix with different dimensions. |
| Redim(Int32, Int32) | Creates a new matrix with different dimensions. |
| Solve(DVector) | Solves the equation Ax = b for x. |
| Solve(DVector, DVector) | Solves the equation Ax = b for x. |
| Square | Multiplies this matrix by its own transposed. |
| Stats | Gets statistics on the matrix cells. |
| Sum | Calculates the sum of the matrix cells. |
| ToString | Gets a textual representation of this matrix. (Overrides ValueTypeToString) |
| ToString(String, IFormatProvider) | Gets a textual representation of this matrix. |
| Trace | Calculates the trace of a matrix. |
| Transpose | Transposes the matrix. |
| Addition(Double, RMatrix) | Adds a scalar value to an upper triangular matrix. |
| Addition(RMatrix, LMatrix) | Adds an upper triangular matrix and a lower triangular one. |
| Addition(RMatrix, RMatrix) | Sums two upper matrices with the same size. |
| Addition(RMatrix, Double) | Adds a scalar value to an upper triangular matrix. |
| Division(DVector, RMatrix) | Solves the equation m*x = v for the vector x. |
| Division(Matrix, RMatrix) | Solves the equation m2*x = m1 for the matrix x. |
| Division(RMatrix, Double) | Divides a matrix by a scalar value. |
| Equality(RMatrix, LMatrix) | Checks two matrices for equality. |
| Equality(RMatrix, Matrix) | Checks two matrices for equality. |
| Equality(RMatrix, RMatrix) | Checks two matrices for equality. |
| (RMatrix to Matrix) | Explicit conversion from a triangular matrix to a rectangular one. |
| (Matrix to RMatrix) | Implicit conversion from a rectangular to an upper triangular matrix. |
| Inequality(RMatrix, LMatrix) | Checks two matrices for equality. |
| Inequality(RMatrix, Matrix) | Checks two matrices for equality. |
| Inequality(RMatrix, RMatrix) | Checks two matrices for equality. |
| Multiply(Double, RMatrix) | Multiplies an upper triangular matrix by a scalar value. |
| Multiply(Matrix, RMatrix) | Multiplies a rectangular matrix by an upper triangular one. |
| Multiply(RMatrix, DVector) | Transform a vector using a matrix. |
| Multiply(RMatrix, Matrix) | Multiplies an upper triangular matrix by a rectangular one. |
| Multiply(RMatrix, RMatrix) | Multiplies two upper-triangular matrices. |
| Multiply(RMatrix, Double) | Multiplies an upper triangular matrix by a scalar value. |
| Subtraction(Double, RMatrix) | Subtracts an upper triangular matrix from a scalar value. |
| Subtraction(RMatrix, RMatrix) | Subtracts two upper matrices with the same size. |
| Subtraction(RMatrix, Double) | Subtracts a scalar value from an upper triangular matrix. |
| UnaryNegation(RMatrix) | Negates an upper right matrix. |