manifpy._bindings.SGal3 class

Static methods

def Identity() -> SGal3
Static helper to create an object set at the Lie group Identity.
def Random() -> SGal3
Static helper to create a random object of the Lie group.

Methods

def act(self, p: numpy.ndarray[numpy.float64[3, 1]], J_out_self: typing.Optional[numpy.ndarray[numpy.float64[3, 10], flags.writeable, flags.c_contiguous]] = None, J_out_p: typing.Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None) -> numpy.ndarray[numpy.float64[3, 1]]
Get the action of the Lie group object on a point.
def adj(self, /) -> numpy.ndarray[numpy.float64[10, 10]]
Return the Adjoint of the Lie group object self.
def between(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3
Return the between of self and another object of the same Lie group.
def coeffs(self, /) -> numpy.ndarray[numpy.float64[11, 1]]
Get a reference to underlying data.
def coeffs_copy(self, /) -> numpy.ndarray[numpy.float64[11, 1]]
Return a copy of underlying data.
def compose(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3
Return the composition of self and another object of the same Lie group.
def inverse(self, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3
Return the inverse of the Lie group object.
def isApprox(self, other: manifpy._bindings._SGal3Base, eps: float = 1e-10) -> bool
Evaluate whether self and other are 'close'.
def linearVelocity(self, /) -> numpy.ndarray[numpy.float64[3, 1]]
def lminus(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3Tangent
Left ominus operation of the Lie group.
def log(self, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3Tangent
Return the corresponding Lie algebra element in vector form.
def lplus(self, tau: manifpy._bindings._SGal3TangentBase, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_mout_tau: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3
Left oplus operation of the Lie group.
def minus(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3Tangent
An alias for the 'rminus' function.
def normalize(self, /) -> None
def plus(self, tau: manifpy._bindings._SGal3TangentBase, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_mout_tau: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3
An alias for the 'rplus' function.
def rminus(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3Tangent
Right ominus operation of the Lie group.
def rotation(self, /) -> numpy.ndarray[numpy.float64[3, 3]]
def rplus(self, tau: manifpy._bindings._SGal3TangentBase, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_tau: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3
Right oplus operation of the Lie group.
def setIdentity(self, /) -> SGal3
Set self to the Lie group Identity.
def setRandom(self, /) -> SGal3
Set self to a random value.
def t(self, /) -> float
def translation(self, /) -> numpy.ndarray[numpy.float64[3, 1]]
def vx(self, /) -> float
def vy(self, /) -> float
def vz(self, /) -> float
def x(self, /) -> float
def y(self, /) -> float
def z(self, /) -> float

Special methods

def __add__(self, arg0: SGal3Tangent, /) -> SGal3
Operator overload for the 'plus' function.
def __eq__(self, arg0: SGal3, /) -> bool
Operator overload for the 'isApprox' function.
def __init__(self, /) -> None
Default constructor, uninitialized data.
def __init__(self, arg0: numpy.ndarray[numpy.float64[11, 1]], /) -> None
Constructor given data vector.
def __init__(self, arg0: float, arg1: float, arg2: float, arg3: float, arg4: float, arg5: float, arg6: float, arg7: float, arg8: float, arg9: float, /) -> None
def __mul__(self, arg0: SGal3, /) -> SGal3
Operator overload for the 'compose' function.
def __str__(self, /) -> str
def __sub__(self, arg0: SGal3, /) -> SGal3Tangent
Operator overload for the 'minus' function.

Data

Dim = 3
DoF = 10
RepSize = 11

Method documentation

def manifpy._bindings.SGal3.act(self, p: numpy.ndarray[numpy.float64[3, 1]], J_out_self: typing.Optional[numpy.ndarray[numpy.float64[3, 10], flags.writeable, flags.c_contiguous]] = None, J_out_p: typing.Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None) -> numpy.ndarray[numpy.float64[3, 1]]

Get the action of the Lie group object on a point.

Parameters ---------- p : numpy.array A point. J_out_self [out] : numpy.ndarray Jacobian of the new object wrt self. J_out_p [out] : numpy.ndarray Jacobian of the new object wrt input point.

def manifpy._bindings.SGal3.adj(self, /) -> numpy.ndarray[numpy.float64[10, 10]]

Return the Adjoint of the Lie group object self.

See Eq. (29).

def manifpy._bindings.SGal3.between(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3

Return the between of self and another object of the same Lie group.

Parameters ---------- other : Lie group Another object of the same Lie group. J_out_self [out] : numpy.ndarray Jacobian of the composition wrt self. J_out_other [out] : numpy.ndarray Jacobian of the composition wrt other.

def manifpy._bindings.SGal3.compose(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3

Return the composition of self and another object of the same Lie group.

See Eqs. (1,2,3,4).

Parameters ---------- other : Lie group Another object of the same Lie group. J_out_self [out] : numpy.ndarray Jacobian of the composition wrt self. J_out_other [out] : numpy.ndarray Jacobian of the composition wrt other.

def manifpy._bindings.SGal3.inverse(self, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3

Return the inverse of the Lie group object.

See Eq. (3).

Parameters ---------- J_out_self [out] : numpy.ndarray Jacobian of the inverse wrt self.

def manifpy._bindings.SGal3.isApprox(self, other: manifpy._bindings._SGal3Base, eps: float = 1e-10) -> bool

Evaluate whether self and other are 'close'.

Parameters ---------- other : Lie group Another object of the same Lie group. eps : double Threshold for equality comparison. Default: 1e-10.

def manifpy._bindings.SGal3.lminus(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3Tangent

Left ominus operation of the Lie group.

See Eq. (28).

Parameters ---------- other : Lie group Another element of the same Lie group. J_out_self [out] : numpy.ndarray Jacobian of the ominus operation wrt self. J_out_other [out] : numpy.ndarray Jacobian of the ominus operation wrt other.

def manifpy._bindings.SGal3.log(self, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3Tangent

Return the corresponding Lie algebra element in vector form.

Eq. (24).

Parameters ---------- J_out_self [out] : numpy.ndarray Jacobian of the log wrt self.

def manifpy._bindings.SGal3.lplus(self, tau: manifpy._bindings._SGal3TangentBase, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_mout_tau: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3

Left oplus operation of the Lie group.

See Eq. (27).

Parameters ---------- tau : Lie group tangent An element of the tangent of the Lie group. J_out_self [out] : numpy.ndarray Jacobian of the oplus operation wrt self. J_out_tau [out] : numpy.ndarray Jacobian of the oplus operation wrt tau.

def manifpy._bindings.SGal3.rminus(self, other: manifpy._bindings._SGal3Base, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3Tangent

Right ominus operation of the Lie group.

See Eq. (26).

Parameters ---------- other : Lie group Another element of the same Lie group. J_out_self [out] : numpy.ndarray Jacobian of the ominus operation wrt self. J_out_other [out] : numpy.ndarray Jacobian of the ominus operation wrt other.

def manifpy._bindings.SGal3.rplus(self, tau: manifpy._bindings._SGal3TangentBase, J_out_self: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_tau: typing.Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> SGal3

Right oplus operation of the Lie group.

See Eq. (25).

Parameters ---------- tau : Lie group tangent An element of the tangent of the Lie group. J_out_self [out] : numpy.ndarray Jacobian of the oplus operation wrt self. J_out_tau [out] : numpy.ndarray Jacobian of the oplus operation wrt tau.