This function generates an instance of the class for the special orthogonal group \(\mathrm{SO}(n)\).
Arguments
- n
An integer value representing the shape of the
n x n
matrices.- point_type
A character string specifying how elements of the group should be represented. Choices are either
"vector"
or"matrix"
. Defaults to"matrix"
.- epsilon
A numeric value specifying the precision to use for calculations involving potential division by 0 in rotations. Defaults to
0.0
.- ...
Extra arguments to be passed to parent class constructors. See
LieGroup
,MatrixLieAlgebra
,LevelSet
andManifold
classes.- py_cls
A Python object of class
SpecialOrthogonal
. Defaults toNULL
in which case it is instantiated on the fly using the other input arguments.
Value
An object of class SpecialOrthogonal
which is an instance of one
of three different R6::R6Class
depending on the values of the input
arguments. Specifically:
if
n == 2
andpoint_type == "vector"
, then the user wants to instantiate the space of 2D rotations in vector representations and thus the output is an instance of theSpecialOrthogonal2Vectors
class;if
n == 3
andpoint_type == "vector"
, then the user wants to instantiate the space of 3D rotations in vector representations and thus the output is an instance of theSpecialOrthogonal3Vectors
class;in all other cases, either the user is dealing with rotations in matrix representation or with rotations in dimension greater than 3 and thus the output is an instance of the
SpecialOrthogonalMatrices
class.
See also
Other special orthogonal classes:
SpecialOrthogonal2Vectors
,
SpecialOrthogonal3Vectors
,
SpecialOrthogonalMatrices
Examples
if (reticulate::py_module_available("geomstats")) {
so3 <- SpecialOrthogonal(n = 3)
so3
}