Matrix.CopyFromSymmetric Method

Definition

Namespace: Numerics.NET
Assembly: Numerics.NET (in Numerics.NET.dll) Version: 10.5.0

Overload List

CopyFromSymmetric<T>(Matrix<T>, MatrixTriangle, ArrayMutability) Returns an independent copy of a matrix made symmetric using one triangle.
CopyFromSymmetric<T>(Matrix<T>, Int32, MatrixTriangle, ArrayMutability) Returns an independent copy of a matrix made symmetric using one triangle, with an explicit size.
CopyFromSymmetric<T>(T[], Int32, MatrixTriangle, MatrixElementOrder, ArrayMutability) Creates a new SymmetricMatrix<T> by copying data from a one-dimensional array.

CopyFromSymmetric<T>(Matrix<T>, MatrixTriangle, ArrayMutability)

Returns an independent copy of a matrix made symmetric using one triangle.
C#
public static Matrix<T> CopyFromSymmetric<T>(
	Matrix<T> source,
	MatrixTriangle triangle = MatrixTriangle.Upper,
	ArrayMutability mutability = ArrayMutability.MutableValues
)

Parameters

source  Matrix<T>
The source matrix.
triangle  MatrixTriangle  (Optional)
Specifies which triangle of source holds the authoritative values. The default is Upper.
mutability  ArrayMutability  (Optional)
The desired mutability of the copy. The default is MutableValues.

Type Parameters

T
The element type of the matrix.

Return Value

Matrix<T>
A matrix where both triangles are populated by mirroring the specified triangle. In Professional edition this may be a SymmetricMatrix<T>.

Exceptions

ArgumentNullException

source is null.

CopyFromSymmetric<T>(Matrix<T>, Int32, MatrixTriangle, ArrayMutability)

Returns an independent copy of a matrix made symmetric using one triangle, with an explicit size.
C#
public static Matrix<T> CopyFromSymmetric<T>(
	Matrix<T> source,
	int size,
	MatrixTriangle triangle = MatrixTriangle.Upper,
	ArrayMutability mutability = ArrayMutability.MutableValues
)

Parameters

source  Matrix<T>
The source matrix.
size  Int32
The number of rows and columns of the copy. Must be between 0 and the smaller of the row count and column count of source (inclusive).
triangle  MatrixTriangle  (Optional)
Specifies which triangle of source holds the authoritative values. The default is Upper.
mutability  ArrayMutability  (Optional)
The desired mutability of the copy. The default is MutableValues.

Type Parameters

T
The element type of the matrix.

Return Value

Matrix<T>
A new size×size matrix where both triangles are populated by mirroring the specified triangle.

Exceptions

ArgumentNullException

source is null.

ArgumentOutOfRangeException

size is less than 0 or greater than the smaller of the row count and column count of source.

CopyFromSymmetric<T>(T[], Int32, MatrixTriangle, MatrixElementOrder, ArrayMutability)

Creates a new SymmetricMatrix<T> by copying data from a one-dimensional array.
C#
public static SymmetricMatrix<T> CopyFromSymmetric<T>(
	T[] source,
	int dimension,
	MatrixTriangle storedTriangle = MatrixTriangle.Upper,
	MatrixElementOrder elementOrder = MatrixElementOrder.ColumnMajor,
	ArrayMutability mutability = ArrayMutability.MutableValues
)

Parameters

source  T[]
A one-dimensional array containing full square matrix storage. Only the triangle specified by storedTriangle is used as the authoritative stored part of the symmetric matrix.
dimension  Int32
The number of rows and columns in the symmetric matrix.
storedTriangle  MatrixTriangle  (Optional)
Specifies whether the upper or lower triangle is stored in source.
elementOrder  MatrixElementOrder  (Optional)
A MatrixElementOrder value that indicates whether the elements in source are stored in column-major or row-major order.
mutability  ArrayMutability  (Optional)
Specifies how the matrix's values may be changed. The default is mutable values.

Type Parameters

T
The element type of the matrix.

Return Value

SymmetricMatrix<T>
A new SymmetricMatrix<T> with copied data.

Exceptions

ArgumentNullExceptionsource is null.
ArgumentException The length of source is less than dimension * dimension.

See Also