Represents a Matrix that is symmetrical about the main diagonal.

Namespace: Extreme.Mathematics.LinearAlgebra
Assembly:   Extreme.Numerics (in Extreme.Numerics)
Version: 2.1.7017.0

Syntax

Visual Basic (Declaration)
<SerializableAttribute> _
Public NotInheritable Class SymmetricMatrix _
	Inherits Matrix _
	Implements ISerializable, IDoubleStorage
C#
[SerializableAttribute]
public sealed class SymmetricMatrix : Matrix, ISerializable, IDoubleStorage
Visual C++
[SerializableAttribute]
public ref class SymmetricMatrix sealed : public Matrix, ISerializable, IDoubleStorage

Remarks

Use the SymmetricMatrix class to represent dense matrices whose elements are symmetrical about the main diagonal. Symmetric matrices are always square.

The components of a SymmetricMatrix are stored in a one-dimensional array of Double values. Thanks to the symmetry, only the upper or lower-triangular portion needs to be stored.

Symmetric matrices can be constructed from scratch, or they can be derived or extracted from the upper or lower triangular portion of a GeneralMatrix using one of the Extract(GeneralMatrix, Int32, Int32, Int32, MatrixTriangleMode, Boolean) methods.

The SymmetricMatrix class implements algorithms using the symmetric matrix BLAS and LAPACK routines. Symmetric matrices are always stored in column-major order.

Inheritance Hierarchy

System.Object
  Extreme.Mathematics.LinearAlgebra.LinearTransformation
    Extreme.Mathematics.LinearAlgebra.Matrix
      Extreme.Mathematics.LinearAlgebra.SymmetricMatrix

See Also