# Skew-symmetric matrices

Manifolds.SkewSymmetricMatricesType
SkewSymmetricMatrices{n,𝔽} <: AbstractEmbeddedManifold{𝔽,TransparentIsometricEmbedding}

The Manifold $\operatorname{SkewSym}(n)$ consisting of the real- or complex-valued skew-symmetric matrices of size $n × n$, i.e. the set

$$$\operatorname{SkewSym}(n) = \bigl\{p ∈ 𝔽^{n × n}\ \big|\ p^{\mathrm{H}} = -p \bigr\},$$$

where $\cdot^{\mathrm{H}}$ denotes the Hermitian, i.e. complex conjugate transpose, and the field $𝔽 ∈ \{ ℝ, ℂ\}$.

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

Note that in this representation, the (real-valued part of) the diagonal has to be zero, which is also reflected in the manifold_dimension.

Constructor

SkewSymmetricMatrices(n::Int, field::AbstractNumbers=ℝ)

Generate the manifold of $n × n$ symmetric matrices.

source
ManifoldsBase.check_manifold_pointMethod
check_manifold_point(M::SkewSymmetricMatrices{n,𝔽}, p; kwargs...)

Check whether p is a valid manifold point on the SkewSymmetricMatrices M, i.e. whether p is a skew-symmetric matrix of size (n,n) with values from the corresponding AbstractNumbers 𝔽.

The tolerance for the skew-symmetry of p can be set using kwargs....

source
ManifoldsBase.check_tangent_vectorMethod
check_tangent_vector(M::SkewSymmetricMatrices{n,𝔽}, p, X; check_base_point = true, kwargs... )

Check whether X is a tangent vector to manifold point p on the SkewSymmetricMatrices M, i.e. X has to be a skew-symmetric matrix of size (n,n) and its values have to be from the correct AbstractNumbers. The optional parameter check_base_point indicates, whether to call check_manifold_point for p. The tolerance for the skew-symmetry of p and X can be set using kwargs....

source
ManifoldsBase.manifold_dimensionMethod
manifold_dimension(M::SkewSymmetricMatrices{n,𝔽})

Return the dimension of the SkewSymmetricMatrices matrix M over the number system 𝔽, i.e.

\begin{aligned} \dim \mathrm{SkewSym}(n,ℝ) &= \frac{n(n-1)}{2},\\ \dim \mathrm{SkewSym}(n,ℂ) &= 2*\frac{n(n-1)}{2} + n = n^2, \end{aligned}

where the last $n$ is due to an imaginary diagonal that is allowed $\dim_ℝ 𝔽$ is the real_dimension of 𝔽.

source
ManifoldsBase.projectMethod
project(M::SkewSymmetricMatrices, p, X)

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

$$$\operatorname{proj}_p(X) = \frac{1}{2} \bigl( X - X^{\mathrm{H}} \bigr),$$$

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

source
ManifoldsBase.projectMethod
project(M::SkewSymmetricMatrices, p)

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

$$$\operatorname{proj}_{\operatorname{SkewSym}(n)}(p) = \frac{1}{2} \bigl( p - p^{\mathrm{H}} \bigr),$$$

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

source