Python implementation of SpOpt package (originally in Matlab): Reimannian Optimization on Symplectic Stiefel Manifold
A Python solver for Riemannian Optimization on the Symplectic Stiefel manifold. This was originally written in Matlab by [1].
Solves the following optimization problem,
where
- The nearest symplectic matrix problem:
$$ \min \Vert X-A \Vert ^{2}{F}, \quad \text{s.t.} \quad X^{\top} J{2n} X = J_{2p}. $$
- The extrinsic mean problem:
$$ \min \frac{1}{N} \sum_{i=1}^{i=N} \Vert X - A_{i} \Vert^{2}{\mathrm{F}},\quad \text{s.t.}\quad X^{\top} J{2n} X = J_{2p}. $$
- Minimization of the Brockett cost function:
- Symplectic eigenvalue problem:
- Symplectic model order reduction:
Bin Gao, Nguyen Thanh Son, P.-A. Absil, Tatjana Stykel
- Riemannian optimization on the symplectic Stiefel manifold
- Riemannian gradient method on the symplectic Stiefel manifold based on the Euclidean metric