SpecialOrthogonalMatrices: Abstract Class for Special Orthogonal Groups in Matrix...

SpecialOrthogonalMatricesR Documentation

Abstract Class for Special Orthogonal Groups in Matrix Representation

Description

Class for special orthogonal groups in matrix representation.

Super classes

rgeomstats::PythonClass -> rgeomstats::Manifold -> rgeomstats::MatrixLieGroup -> SpecialOrthogonalMatrices

Public fields

bi_invariant_metric

An object of class BiInvariantMetric specifying the metric to equip the manifold with.

Methods

Public methods

Inherited methods

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, LevelSet and Manifold classes.

py_cls

A Python object of class SpecialOrthogonalMatrices. Defaults to NULL in which case it is instantiated on the fly using the other input arguments.

Returns

An object of class SpecialOrthogonalMatrices.


Method belongs()

Evaluates if a point belongs to the manifold.

Usage
SpecialOrthogonalMatrices$belongs(point, atol = gs$backend$atol)
Arguments
point

A numeric array of shape [… \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.

Returns

A boolean value or vector storing whether the input points belong to the manifold.

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.

Usage
SpecialOrthogonalMatrices$intrinsic_to_extrinsic_coords(point_intrinsic)
Arguments
point_intrinsic

A numeric array of shape [… \times \{ \mathrm{dim} \}] specifying one or more points on the embedded manifold in intrinsic coordinates.

Returns

A numeric array of shape [… \times \{ \mathrm{dim_embedding} \}] storing the same points on the embedded manifold in extrinsic coordinates.


Method extrinsic_to_intrinsic_coords()

Converts from extrinsic to intrinsic coordinates.

Usage
SpecialOrthogonalMatrices$extrinsic_to_intrinsic_coords(point_extrinsic)
Arguments
point_extrinsic

A numeric array of shape [… \times \{ \mathrm{dim_embedding} \}] specifying one or more points on the embedded manifold in extrinsic coordinates.

Returns

A numeric array of shape [… \times \{ \mathrm{dim} \}] storing the same points on the embedded manifold in intrinsic coordinates.


Method projection()

Project a matrix on \mathrm{SO}(n) by minimizing the Frobenius norm.

Usage
SpecialOrthogonalMatrices$projection(point)
Arguments
point

A numeric array of shape [… \times n \times n] specifying one or more matrices.

Returns

A numeric array of the same shape storing the projected matrices.

Examples
if (reticulate::py_module_available("geomstats")) {
  so3 <- SpecialOrthogonal(3)
  so3$projection(diag(1, 3))
}

Method clone()

The objects of this class are cloneable with this method.

Usage
SpecialOrthogonalMatrices$clone(deep = FALSE)
Arguments
deep

Whether to make a deep clone.

Author(s)

Nicolas Guigui and Nina Miolane

See Also

Other special orthogonal classes: SpecialOrthogonal2Vectors, SpecialOrthogonal3Vectors, SpecialOrthogonal()

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))
}

rgeomstats documentation built on Nov. 4, 2022, 5:09 p.m.