 | DoubleHermitianMatrix Class |
Class DoubleHermitianMatrix represents a matrix of double-precision
floating point complex values.
Inheritance Hierarchy Namespace: CenterSpace.NMath.CoreAssembly: NMath (in NMath.dll) Version: 7.4
Syntax[SerializableAttribute]
public class DoubleHermitianMatrix : ICloneable
<SerializableAttribute>
Public Class DoubleHermitianMatrix
Implements ICloneable
[SerializableAttribute]
public ref class DoubleHermitianMatrix : ICloneable
[<SerializableAttribute>]
type DoubleHermitianMatrix =
class
interface ICloneable
end
The DoubleHermitianMatrix type exposes the following members.
Constructors
Properties | Name | Description |
---|
 | 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. Symmetry is maintained.
|
 | Order |
Gets the order of the matrix.
|
 | Rows |
Gets the number of rows in the matrix.
|
Top
Methods
Operators | Name | Description |
---|
  | Addition(DoubleHermitianMatrix, DoubleHermitianMatrix) |
Adds two Hermitian matrices.
|
  | Division(DoubleComplex, DoubleHermitianMatrix) |
Divide a scalar by an Hermitian matrix.
|
  | Division(DoubleHermitianMatrix, DoubleComplex) |
Divide an Hermitian matrix by a scalar.
|
  | Division(DoubleHermitianMatrix, DoubleHermitianMatrix) |
Divide an Hermitian matrix by another.
|
  | Equality(DoubleHermitianMatrix, DoubleHermitianMatrix) |
Tests for equality of two Hermitian matrices. Two matrices are equal if they
have the same order and all values are equal.
|
  | (DoubleSymmetricMatrix to DoubleHermitianMatrix) |
Implicitly converts a DoubleSymmetricMatrix instance into a
DoubleHermitianMatrix instance.
|
  | (FloatHermitianMatrix to DoubleHermitianMatrix) |
Implicitly converts a FloatHermitianMatrix instance into a
DoubleHermitianMatrix instance.
|
  | Inequality(DoubleHermitianMatrix, DoubleHermitianMatrix) |
Tests for inequality of two Hermitian matrices. Two matrices are equal if they
have the same order and all values are equal.
|
  | Multiply(DoubleComplex, DoubleHermitianMatrix) |
Multiply a scalar and an Hermitian matrix.
|
  | Multiply(DoubleHermitianMatrix, DoubleComplex) |
Multiply an Hermitian matrix and a scalar.
|
  | Multiply(DoubleHermitianMatrix, DoubleHermitianMatrix) |
Multiply two lower Hermitian matrices.
Multiply two lower Hermitian matrices.
|
  | Subtraction(DoubleHermitianMatrix, DoubleHermitianMatrix) |
Subtracts one Hermitian matrix from another.
|
  | UnaryNegation(DoubleHermitianMatrix) |
Negation operator.
|
  | UnaryPlus(DoubleHermitianMatrix) |
Unary + operator. Just returns the input matrix.
|
Top
Remarks
An Hermitian matrix is equal to its conjugate transpose. In other words,
A[i,j] = conj(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 Hermitian 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 conj(v[i(i+1)/2+j]), j<i
See Also