Symmetric matrices

Manifolds.SymmetricMatrices โ€” Type
SymmetricMatrices{๐”ฝ, T} <: AbstractDecoratorManifold{๐”ฝ}

The AbstractManifold $\operatorname{Sym}(n)$ consisting of the real- or complex-valued symmetric matrices of size $nร—n$, i.e. the set

\[\operatorname{Sym}(n) = \bigl\{p โˆˆ ๐”ฝ^{nร—n}\ \big|\ p^{\mathrm{H}} = p \bigr\},\]

where $โ‹…^{\mathrm{H}}$ denotes the Hermitian, i.e. complex conjugate transpose, and the field $๐”ฝ โˆˆ \{ โ„, โ„‚\}$. The dimension n is stored in either a field or within T

Though it is slightly redundant, usually the matrices are stored as $nร—n$ arrays.

Note that in this representation, the complex valued case has to have a real-valued diagonal, which is also reflected in the manifold_dimension.

Constructor

SymmetricMatrices(n::Int, field::AbstractNumbers=โ„)

Generate the manifold of $nร—n$ symmetric matrices.

source
ManifoldsBase.manifold_dimension โ€” Method
manifold_dimension(M::SymmetricMatrices{n,๐”ฝ})

Return the dimension of the SymmetricMatrices matrix M over the number system ๐”ฝ, i.e.

\[\begin{aligned} \dim \mathrm{Sym}(n,โ„) &= \frac{n(n+1)}{2},\\ \dim \mathrm{Sym}(n,โ„‚) &= 2\frac{n(n+1)}{2} - n = n^2, \end{aligned}\]

where the last $-n$ is due to the zero imaginary part for Hermitian matrices

source
ManifoldsBase.project โ€” Method
project(M::SymmetricMatrices, p, X)

Project the matrix X onto the tangent space at p on the SymmetricMatrices M,

\[\operatorname{proj}_p(X) = \frac{1}{2} \bigl( X + X^{\mathrm{H}} \bigr),\]

where $โ‹…^{\mathrm{H}}$ denotes the Hermitian, i.e. complex conjugate transposed.

source
ManifoldsBase.project โ€” Method
project(M::SymmetricMatrices, p)

Projects p from the embedding onto the SymmetricMatrices M, i.e.

\[\operatorname{proj}_{\operatorname{Sym}(n)}(p) = \frac{1}{2} \bigl( p + p^{\mathrm{H}} \bigr),\]

where $โ‹…^{\mathrm{H}}$ denotes the Hermitian, i.e. complex conjugate transposed.

source