
Abstract Class for Special Orthogonal Groups in Matrix Representation
Source:R/special-orthogonal.R
      SpecialOrthogonalMatrices.RdClass for special orthogonal groups in matrix representation.
See also
Other special orthogonal classes:
SpecialOrthogonal(),
SpecialOrthogonal2Vectors,
SpecialOrthogonal3Vectors
Super classes
rgeomstats::PythonClass -> rgeomstats::Manifold -> rgeomstats::MatrixLieGroup -> SpecialOrthogonalMatrices
Public fields
- bi_invariant_metric
- An object of class - BiInvariantMetricspecifying the metric to equip the manifold with.
Methods
Inherited methods
rgeomstats::PythonClass$get_python_class()rgeomstats::PythonClass$set_python_class()rgeomstats::Manifold$is_tangent()rgeomstats::Manifold$random_point()rgeomstats::Manifold$random_tangent_vec()rgeomstats::Manifold$regularize()rgeomstats::Manifold$set_metric()rgeomstats::Manifold$to_tangent()rgeomstats::MatrixLieGroup$compose()rgeomstats::MatrixLieGroup$exp()rgeomstats::MatrixLieGroup$get_identity()rgeomstats::MatrixLieGroup$inverse()rgeomstats::MatrixLieGroup$lie_bracket()rgeomstats::MatrixLieGroup$log()rgeomstats::MatrixLieGroup$tangent_translation_map()
Method new()
The SpecialOrthogonalMatrices class constructor.
Usage
SpecialOrthogonalMatrices$new(n, ..., py_cls = NULL)Arguments
- n
- An integer value specifying the number of rows and columns of the matrices. 
- ...
- Extra arguments to be passed to parent class constructors. See - MatrixLieAlgebra,- LevelSetand- Manifoldclasses.
- py_cls
- A Python object of class - SpecialOrthogonalMatrices. Defaults to- NULLin which case it is instantiated on the fly using the other input arguments.
Method belongs()
Evaluates if a point belongs to the manifold.
Arguments
- point
- A numeric array of shape \([\dots \times \{\mathrm{dim}\}]\) specifying one or more points to be checked. 
- atol
- A numeric value specifying the absolute tolerance for checking. Defaults to - gs$backend$atol.
Examples
if (reticulate::py_module_available("geomstats")) {
  so3 <- SpecialOrthogonal(n = 3)
  so3$belongs(diag(1, 3))
}Method intrinsic_to_extrinsic_coords()
Converts from intrinsic to extrinsic coordinates.
Method extrinsic_to_intrinsic_coords()
Converts from extrinsic to intrinsic coordinates.
Method projection()
Project a matrix on \(\mathrm{SO}(n)\) by minimizing the Frobenius norm.
Arguments
- point
- A numeric array of shape \([\dots \times n \times n]\) specifying one or more matrices. 
Examples
if (reticulate::py_module_available("geomstats")) {
  so3 <- SpecialOrthogonal(3)
  so3$projection(diag(1, 3))
}Examples
## ------------------------------------------------
## Method `SpecialOrthogonalMatrices$belongs`
## ------------------------------------------------
if (reticulate::py_module_available("geomstats")) {
  so3 <- SpecialOrthogonal(n = 3)
  so3$belongs(diag(1, 3))
}
## ------------------------------------------------
## Method `SpecialOrthogonalMatrices$projection`
## ------------------------------------------------
if (reticulate::py_module_available("geomstats")) {
  so3 <- SpecialOrthogonal(3)
  so3$projection(diag(1, 3))
}