Python3 API¶
The following documentation presents the Python3 API.
The Python3 API is generated using pybind11.
- class manifpy.R1¶
Bases:
_R1Base
The R^1 group.
- static Identity() manifpy._bindings.R1 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R1 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R1, p: numpy.ndarray[numpy.float64[1, 1]], J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_p: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) numpy.ndarray[numpy.float64[1, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R1) numpy.ndarray[numpy.float64[1, 1]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R1, other: manifpy._bindings._R1Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R1) numpy.ndarray[numpy.float64[1, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R1) numpy.ndarray[numpy.float64[1, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R1, other: manifpy._bindings._R1Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R1, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R1, other: manifpy._bindings._R1Base, 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.
- lminus(self: manifpy._bindings.R1, other: manifpy._bindings._R1Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R1, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R1, tau: manifpy._bindings._R1TangentBase, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R1, other: manifpy._bindings._R1Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R1, tau: manifpy._bindings._R1TangentBase, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R1, other: manifpy._bindings._R1Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R1, tau: manifpy._bindings._R1TangentBase, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_tau: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R1) manifpy._bindings.R1 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R1) manifpy._bindings.R1 ¶
Set self to a random value.
- Dim = 1¶
- DoF = 1¶
- RepSize = 1¶
- class manifpy.R1Tangent¶
Bases:
_R1TangentBase
- static Bracket(a: manifpy._bindings._R1TangentBase, b: manifpy._bindings._R1TangentBase) manifpy._bindings.R1Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[2, 2]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[1, 1]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R1Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[2, 2]]) manifpy._bindings.R1Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R1Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R1Tangent, other: manifpy._bindings._R1TangentBase) manifpy._bindings.R1Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R1Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R1Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R1Tangent, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R1Tangent, i: int) numpy.ndarray[numpy.float64[2, 2]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R1Tangent) numpy.ndarray[numpy.float64[2, 2]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R1Tangent, other: manifpy._bindings._R1TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R1Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R1Tangent, other: manifpy._bindings.R1Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R1Tangent, other: numpy.ndarray[numpy.float64[1, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R1Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R1Tangent, state: manifpy._bindings.R1, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_state: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R1Tangent, other: manifpy._bindings._R1TangentBase, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R1Tangent, state: manifpy._bindings.R1, J_out_self: Optional[numpy.ndarray[numpy.float64[1, 1], flags.writeable]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[1, 1], flags.writeable]] = None) -> manifpy._bindings.R1
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R1Tangent, other: manifpy._bindings._R1TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[1, 1], flags.writeable]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[1, 1], flags.writeable]] = None) -> manifpy._bindings.R1Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R1Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R1Tangent, state: manifpy._bindings.R1, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_state: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.R1 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R1Tangent) manifpy._bindings.R1Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R1Tangent, vee: numpy.ndarray[numpy.float64[2, 2]]) manifpy._bindings.R1Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R1Tangent) manifpy._bindings.R1Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R1Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R1Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R1Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 1¶
- DoF = 1¶
- RepSize = 1¶
- class manifpy.R2¶
Bases:
_R2Base
- static Identity() manifpy._bindings.R2 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R2 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R2, p: numpy.ndarray[numpy.float64[2, 1]], J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[2, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R2) numpy.ndarray[numpy.float64[2, 2]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R2, other: manifpy._bindings._R2Base, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R2) numpy.ndarray[numpy.float64[2, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R2) numpy.ndarray[numpy.float64[2, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R2, other: manifpy._bindings._R2Base, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R2, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R2, other: manifpy._bindings._R2Base, 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.
- lminus(self: manifpy._bindings.R2, other: manifpy._bindings._R2Base, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R2, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R2, tau: manifpy._bindings._R2TangentBase, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R2, other: manifpy._bindings._R2Base, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R2, tau: manifpy._bindings._R2TangentBase, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R2, other: manifpy._bindings._R2Base, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R2, tau: manifpy._bindings._R2TangentBase, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R2) manifpy._bindings.R2 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R2) manifpy._bindings.R2 ¶
Set self to a random value.
- Dim = 2¶
- DoF = 2¶
- RepSize = 2¶
- class manifpy.R2Tangent¶
Bases:
_R2TangentBase
- static Bracket(a: manifpy._bindings._R2TangentBase, b: manifpy._bindings._R2TangentBase) manifpy._bindings.R2Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[3, 3]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[2, 2]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R2Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[3, 3]]) manifpy._bindings.R2Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R2Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R2Tangent, other: manifpy._bindings._R2TangentBase) manifpy._bindings.R2Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R2Tangent) numpy.ndarray[numpy.float64[2, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R2Tangent) numpy.ndarray[numpy.float64[2, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R2Tangent, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R2Tangent, i: int) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R2Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R2Tangent, other: manifpy._bindings._R2TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R2Tangent) numpy.ndarray[numpy.float64[2, 2]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R2Tangent, other: manifpy._bindings.R2Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R2Tangent, other: numpy.ndarray[numpy.float64[2, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R2Tangent) numpy.ndarray[numpy.float64[2, 2]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R2Tangent, state: manifpy._bindings.R2, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R2Tangent, other: manifpy._bindings._R2TangentBase, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R2Tangent, state: manifpy._bindings.R2, J_out_self: Optional[numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R2
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R2Tangent, other: manifpy._bindings._R2TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R2Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R2Tangent) numpy.ndarray[numpy.float64[2, 2]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R2Tangent, state: manifpy._bindings.R2, J_out_self: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R2 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R2Tangent) manifpy._bindings.R2Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R2Tangent, vee: numpy.ndarray[numpy.float64[3, 3]]) manifpy._bindings.R2Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R2Tangent) manifpy._bindings.R2Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R2Tangent) numpy.ndarray[numpy.float64[2, 2]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R2Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R2Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 2¶
- DoF = 2¶
- RepSize = 2¶
- class manifpy.R3¶
Bases:
_R3Base
- static Identity() manifpy._bindings.R3 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R3 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R3, p: numpy.ndarray[numpy.float64[3, 1]], J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[3, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R3) numpy.ndarray[numpy.float64[3, 3]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R3, other: manifpy._bindings._R3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R3) numpy.ndarray[numpy.float64[3, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R3) numpy.ndarray[numpy.float64[3, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R3, other: manifpy._bindings._R3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R3, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R3, other: manifpy._bindings._R3Base, 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.
- lminus(self: manifpy._bindings.R3, other: manifpy._bindings._R3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R3, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R3, tau: manifpy._bindings._R3TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R3, other: manifpy._bindings._R3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R3, tau: manifpy._bindings._R3TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R3, other: manifpy._bindings._R3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R3, tau: manifpy._bindings._R3TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R3) manifpy._bindings.R3 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R3) manifpy._bindings.R3 ¶
Set self to a random value.
- Dim = 3¶
- DoF = 3¶
- RepSize = 3¶
- class manifpy.R3Tangent¶
Bases:
_R3TangentBase
- static Bracket(a: manifpy._bindings._R3TangentBase, b: manifpy._bindings._R3TangentBase) manifpy._bindings.R3Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[4, 4]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[3, 3]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R3Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[4, 4]]) manifpy._bindings.R3Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R3Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R3Tangent, other: manifpy._bindings._R3TangentBase) manifpy._bindings.R3Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R3Tangent) numpy.ndarray[numpy.float64[3, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R3Tangent) numpy.ndarray[numpy.float64[3, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R3Tangent, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R3Tangent, i: int) numpy.ndarray[numpy.float64[4, 4]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R3Tangent) numpy.ndarray[numpy.float64[4, 4]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R3Tangent, other: manifpy._bindings._R3TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R3Tangent, other: manifpy._bindings.R3Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R3Tangent, other: numpy.ndarray[numpy.float64[3, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R3Tangent, state: manifpy._bindings.R3, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R3Tangent, other: manifpy._bindings._R3TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R3Tangent, state: manifpy._bindings.R3, J_out_self: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R3
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R3Tangent, other: manifpy._bindings._R3TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R3Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R3Tangent, state: manifpy._bindings.R3, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R3 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R3Tangent) manifpy._bindings.R3Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R3Tangent, vee: numpy.ndarray[numpy.float64[4, 4]]) manifpy._bindings.R3Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R3Tangent) manifpy._bindings.R3Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R3Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R3Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 3¶
- DoF = 3¶
- RepSize = 3¶
- class manifpy.R4¶
Bases:
_R4Base
- static Identity() manifpy._bindings.R4 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R4 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R4, p: numpy.ndarray[numpy.float64[4, 1]], J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[4, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R4) numpy.ndarray[numpy.float64[4, 4]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R4, other: manifpy._bindings._R4Base, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R4) numpy.ndarray[numpy.float64[4, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R4) numpy.ndarray[numpy.float64[4, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R4, other: manifpy._bindings._R4Base, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R4, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R4, other: manifpy._bindings._R4Base, 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.
- lminus(self: manifpy._bindings.R4, other: manifpy._bindings._R4Base, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R4, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R4, tau: manifpy._bindings._R4TangentBase, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R4, other: manifpy._bindings._R4Base, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R4, tau: manifpy._bindings._R4TangentBase, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R4, other: manifpy._bindings._R4Base, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R4, tau: manifpy._bindings._R4TangentBase, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R4) manifpy._bindings.R4 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R4) manifpy._bindings.R4 ¶
Set self to a random value.
- Dim = 4¶
- DoF = 4¶
- RepSize = 4¶
- class manifpy.R4Tangent¶
Bases:
_R4TangentBase
- static Bracket(a: manifpy._bindings._R4TangentBase, b: manifpy._bindings._R4TangentBase) manifpy._bindings.R4Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[5, 5]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[4, 4]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R4Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[5, 5]]) manifpy._bindings.R4Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R4Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R4Tangent, other: manifpy._bindings._R4TangentBase) manifpy._bindings.R4Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R4Tangent) numpy.ndarray[numpy.float64[4, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R4Tangent) numpy.ndarray[numpy.float64[4, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R4Tangent, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R4Tangent, i: int) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R4Tangent) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R4Tangent, other: manifpy._bindings._R4TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R4Tangent) numpy.ndarray[numpy.float64[4, 4]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R4Tangent, other: manifpy._bindings.R4Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R4Tangent, other: numpy.ndarray[numpy.float64[4, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R4Tangent) numpy.ndarray[numpy.float64[4, 4]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R4Tangent, state: manifpy._bindings.R4, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R4Tangent, other: manifpy._bindings._R4TangentBase, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R4Tangent, state: manifpy._bindings.R4, J_out_self: Optional[numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R4
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R4Tangent, other: manifpy._bindings._R4TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R4Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R4Tangent) numpy.ndarray[numpy.float64[4, 4]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R4Tangent, state: manifpy._bindings.R4, J_out_self: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[4, 4], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R4 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R4Tangent) manifpy._bindings.R4Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R4Tangent, vee: numpy.ndarray[numpy.float64[5, 5]]) manifpy._bindings.R4Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R4Tangent) manifpy._bindings.R4Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R4Tangent) numpy.ndarray[numpy.float64[4, 4]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R4Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R4Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 4¶
- DoF = 4¶
- RepSize = 4¶
- class manifpy.R5¶
Bases:
_R5Base
- static Identity() manifpy._bindings.R5 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R5 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R5, p: numpy.ndarray[numpy.float64[5, 1]], J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[5, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R5) numpy.ndarray[numpy.float64[5, 5]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R5, other: manifpy._bindings._R5Base, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R5) numpy.ndarray[numpy.float64[5, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R5) numpy.ndarray[numpy.float64[5, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R5, other: manifpy._bindings._R5Base, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R5, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R5, other: manifpy._bindings._R5Base, 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.
- lminus(self: manifpy._bindings.R5, other: manifpy._bindings._R5Base, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R5, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R5, tau: manifpy._bindings._R5TangentBase, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R5, other: manifpy._bindings._R5Base, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R5, tau: manifpy._bindings._R5TangentBase, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R5, other: manifpy._bindings._R5Base, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R5, tau: manifpy._bindings._R5TangentBase, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R5) manifpy._bindings.R5 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R5) manifpy._bindings.R5 ¶
Set self to a random value.
- Dim = 5¶
- DoF = 5¶
- RepSize = 5¶
- class manifpy.R5Tangent¶
Bases:
_R5TangentBase
- static Bracket(a: manifpy._bindings._R5TangentBase, b: manifpy._bindings._R5TangentBase) manifpy._bindings.R5Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[6, 6]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[5, 5]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R5Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[6, 6]]) manifpy._bindings.R5Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R5Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R5Tangent, other: manifpy._bindings._R5TangentBase) manifpy._bindings.R5Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R5Tangent) numpy.ndarray[numpy.float64[5, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R5Tangent) numpy.ndarray[numpy.float64[5, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R5Tangent, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R5Tangent, i: int) numpy.ndarray[numpy.float64[6, 6]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R5Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R5Tangent, other: manifpy._bindings._R5TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R5Tangent) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R5Tangent, other: manifpy._bindings.R5Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R5Tangent, other: numpy.ndarray[numpy.float64[5, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R5Tangent) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R5Tangent, state: manifpy._bindings.R5, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R5Tangent, other: manifpy._bindings._R5TangentBase, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R5Tangent, state: manifpy._bindings.R5, J_out_self: Optional[numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R5
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R5Tangent, other: manifpy._bindings._R5TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R5Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R5Tangent) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R5Tangent, state: manifpy._bindings.R5, J_out_self: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[5, 5], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R5 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R5Tangent) manifpy._bindings.R5Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R5Tangent, vee: numpy.ndarray[numpy.float64[6, 6]]) manifpy._bindings.R5Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R5Tangent) manifpy._bindings.R5Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R5Tangent) numpy.ndarray[numpy.float64[5, 5]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R5Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R5Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 5¶
- DoF = 5¶
- RepSize = 5¶
- class manifpy.R6¶
Bases:
_R6Base
- static Identity() manifpy._bindings.R6 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R6 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R6, p: numpy.ndarray[numpy.float64[6, 1]], J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[6, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R6) numpy.ndarray[numpy.float64[6, 6]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R6, other: manifpy._bindings._R6Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R6) numpy.ndarray[numpy.float64[6, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R6) numpy.ndarray[numpy.float64[6, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R6, other: manifpy._bindings._R6Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R6, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R6, other: manifpy._bindings._R6Base, 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.
- lminus(self: manifpy._bindings.R6, other: manifpy._bindings._R6Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R6, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R6, tau: manifpy._bindings._R6TangentBase, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R6, other: manifpy._bindings._R6Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R6, tau: manifpy._bindings._R6TangentBase, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R6, other: manifpy._bindings._R6Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R6, tau: manifpy._bindings._R6TangentBase, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R6) manifpy._bindings.R6 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R6) manifpy._bindings.R6 ¶
Set self to a random value.
- Dim = 6¶
- DoF = 6¶
- RepSize = 6¶
- class manifpy.R6Tangent¶
Bases:
_R6TangentBase
- static Bracket(a: manifpy._bindings._R6TangentBase, b: manifpy._bindings._R6TangentBase) manifpy._bindings.R6Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[7, 7]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[6, 6]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R6Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[7, 7]]) manifpy._bindings.R6Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R6Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R6Tangent, other: manifpy._bindings._R6TangentBase) manifpy._bindings.R6Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R6Tangent) numpy.ndarray[numpy.float64[6, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R6Tangent) numpy.ndarray[numpy.float64[6, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R6Tangent, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R6Tangent, i: int) numpy.ndarray[numpy.float64[7, 7]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R6Tangent) numpy.ndarray[numpy.float64[7, 7]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R6Tangent, other: manifpy._bindings._R6TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R6Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R6Tangent, other: manifpy._bindings.R6Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R6Tangent, other: numpy.ndarray[numpy.float64[6, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R6Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R6Tangent, state: manifpy._bindings.R6, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R6Tangent, other: manifpy._bindings._R6TangentBase, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R6Tangent, state: manifpy._bindings.R6, J_out_self: Optional[numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R6
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R6Tangent, other: manifpy._bindings._R6TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R6Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R6Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R6Tangent, state: manifpy._bindings.R6, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R6 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R6Tangent) manifpy._bindings.R6Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R6Tangent, vee: numpy.ndarray[numpy.float64[7, 7]]) manifpy._bindings.R6Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R6Tangent) manifpy._bindings.R6Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R6Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R6Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R6Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 6¶
- DoF = 6¶
- RepSize = 6¶
- class manifpy.R7¶
Bases:
_R7Base
- static Identity() manifpy._bindings.R7 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R7 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R7, p: numpy.ndarray[numpy.float64[7, 1]], J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[7, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R7) numpy.ndarray[numpy.float64[7, 7]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R7, other: manifpy._bindings._R7Base, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R7) numpy.ndarray[numpy.float64[7, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R7) numpy.ndarray[numpy.float64[7, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R7, other: manifpy._bindings._R7Base, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R7, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R7, other: manifpy._bindings._R7Base, 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.
- lminus(self: manifpy._bindings.R7, other: manifpy._bindings._R7Base, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R7, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R7, tau: manifpy._bindings._R7TangentBase, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R7, other: manifpy._bindings._R7Base, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R7, tau: manifpy._bindings._R7TangentBase, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R7, other: manifpy._bindings._R7Base, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R7, tau: manifpy._bindings._R7TangentBase, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R7) manifpy._bindings.R7 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R7) manifpy._bindings.R7 ¶
Set self to a random value.
- Dim = 7¶
- DoF = 7¶
- RepSize = 7¶
- class manifpy.R7Tangent¶
Bases:
_R7TangentBase
- static Bracket(a: manifpy._bindings._R7TangentBase, b: manifpy._bindings._R7TangentBase) manifpy._bindings.R7Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[8, 8]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[7, 7]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R7Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[8, 8]]) manifpy._bindings.R7Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R7Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R7Tangent, other: manifpy._bindings._R7TangentBase) manifpy._bindings.R7Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R7Tangent) numpy.ndarray[numpy.float64[7, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R7Tangent) numpy.ndarray[numpy.float64[7, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R7Tangent, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R7Tangent, i: int) numpy.ndarray[numpy.float64[8, 8]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R7Tangent) numpy.ndarray[numpy.float64[8, 8]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R7Tangent, other: manifpy._bindings._R7TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R7Tangent) numpy.ndarray[numpy.float64[7, 7]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R7Tangent, other: manifpy._bindings.R7Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R7Tangent, other: numpy.ndarray[numpy.float64[7, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R7Tangent) numpy.ndarray[numpy.float64[7, 7]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R7Tangent, state: manifpy._bindings.R7, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R7Tangent, other: manifpy._bindings._R7TangentBase, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R7Tangent, state: manifpy._bindings.R7, J_out_self: Optional[numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R7
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R7Tangent, other: manifpy._bindings._R7TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R7Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R7Tangent) numpy.ndarray[numpy.float64[7, 7]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R7Tangent, state: manifpy._bindings.R7, J_out_self: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[7, 7], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R7 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R7Tangent) manifpy._bindings.R7Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R7Tangent, vee: numpy.ndarray[numpy.float64[8, 8]]) manifpy._bindings.R7Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R7Tangent) manifpy._bindings.R7Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R7Tangent) numpy.ndarray[numpy.float64[7, 7]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R7Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R7Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 7¶
- DoF = 7¶
- RepSize = 7¶
- class manifpy.R8¶
Bases:
_R8Base
- static Identity() manifpy._bindings.R8 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R8 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R8, p: numpy.ndarray[numpy.float64[8, 1]], J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[8, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R8) numpy.ndarray[numpy.float64[8, 8]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R8, other: manifpy._bindings._R8Base, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R8) numpy.ndarray[numpy.float64[8, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R8) numpy.ndarray[numpy.float64[8, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R8, other: manifpy._bindings._R8Base, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R8, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R8, other: manifpy._bindings._R8Base, 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.
- lminus(self: manifpy._bindings.R8, other: manifpy._bindings._R8Base, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R8, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R8, tau: manifpy._bindings._R8TangentBase, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R8, other: manifpy._bindings._R8Base, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R8, tau: manifpy._bindings._R8TangentBase, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R8, other: manifpy._bindings._R8Base, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R8, tau: manifpy._bindings._R8TangentBase, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R8) manifpy._bindings.R8 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R8) manifpy._bindings.R8 ¶
Set self to a random value.
- Dim = 8¶
- DoF = 8¶
- RepSize = 8¶
- class manifpy.R8Tangent¶
Bases:
_R8TangentBase
- static Bracket(a: manifpy._bindings._R8TangentBase, b: manifpy._bindings._R8TangentBase) manifpy._bindings.R8Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[9, 9]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[8, 8]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R8Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[9, 9]]) manifpy._bindings.R8Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R8Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R8Tangent, other: manifpy._bindings._R8TangentBase) manifpy._bindings.R8Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R8Tangent) numpy.ndarray[numpy.float64[8, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R8Tangent) numpy.ndarray[numpy.float64[8, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R8Tangent, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R8Tangent, i: int) numpy.ndarray[numpy.float64[9, 9]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R8Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R8Tangent, other: manifpy._bindings._R8TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R8Tangent) numpy.ndarray[numpy.float64[8, 8]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R8Tangent, other: manifpy._bindings.R8Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R8Tangent, other: numpy.ndarray[numpy.float64[8, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R8Tangent) numpy.ndarray[numpy.float64[8, 8]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R8Tangent, state: manifpy._bindings.R8, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R8Tangent, other: manifpy._bindings._R8TangentBase, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R8Tangent, state: manifpy._bindings.R8, J_out_self: Optional[numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R8
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R8Tangent, other: manifpy._bindings._R8TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R8Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R8Tangent) numpy.ndarray[numpy.float64[8, 8]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R8Tangent, state: manifpy._bindings.R8, J_out_self: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[8, 8], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R8 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R8Tangent) manifpy._bindings.R8Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R8Tangent, vee: numpy.ndarray[numpy.float64[9, 9]]) manifpy._bindings.R8Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R8Tangent) manifpy._bindings.R8Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R8Tangent) numpy.ndarray[numpy.float64[8, 8]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R8Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R8Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 8¶
- DoF = 8¶
- RepSize = 8¶
- class manifpy.R9¶
Bases:
_R9Base
- static Identity() manifpy._bindings.R9 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.R9 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.R9, p: numpy.ndarray[numpy.float64[9, 1]], J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[9, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.R9) numpy.ndarray[numpy.float64[9, 9]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.R9, other: manifpy._bindings._R9Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.R9) numpy.ndarray[numpy.float64[9, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R9) numpy.ndarray[numpy.float64[9, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.R9, other: manifpy._bindings._R9Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.R9, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.R9, other: manifpy._bindings._R9Base, 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.
- lminus(self: manifpy._bindings.R9, other: manifpy._bindings._R9Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.R9, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.R9, tau: manifpy._bindings._R9TangentBase, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.R9, other: manifpy._bindings._R9Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9Tangent ¶
An alias for the ‘rminus’ function.
- plus(self: manifpy._bindings.R9, tau: manifpy._bindings._R9TangentBase, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.R9, other: manifpy._bindings._R9Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rplus(self: manifpy._bindings.R9, tau: manifpy._bindings._R9TangentBase, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.R9) manifpy._bindings.R9 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.R9) manifpy._bindings.R9 ¶
Set self to a random value.
- Dim = 9¶
- DoF = 9¶
- RepSize = 9¶
- class manifpy.R9Tangent¶
Bases:
_R9TangentBase
- static Bracket(a: manifpy._bindings._R9TangentBase, b: manifpy._bindings._R9TangentBase) manifpy._bindings.R9Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[10, 10]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[9, 9]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.R9Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[10, 10]]) manifpy._bindings.R9Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.R9Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.R9Tangent, other: manifpy._bindings._R9TangentBase) manifpy._bindings.R9Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.R9Tangent) numpy.ndarray[numpy.float64[9, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.R9Tangent) numpy.ndarray[numpy.float64[9, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.R9Tangent, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.R9Tangent, i: int) numpy.ndarray[numpy.float64[10, 10]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.R9Tangent) numpy.ndarray[numpy.float64[10, 10]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.R9Tangent, other: manifpy._bindings._R9TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.R9Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.R9Tangent, other: manifpy._bindings.R9Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.R9Tangent, other: numpy.ndarray[numpy.float64[9, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.R9Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.R9Tangent, state: manifpy._bindings.R9, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.R9Tangent, other: manifpy._bindings._R9TangentBase, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.R9Tangent, state: manifpy._bindings.R9, J_out_self: Optional[numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R9
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.R9Tangent, other: manifpy._bindings._R9TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.R9Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.R9Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.R9Tangent, state: manifpy._bindings.R9, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.R9 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.R9Tangent) manifpy._bindings.R9Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.R9Tangent, vee: numpy.ndarray[numpy.float64[10, 10]]) manifpy._bindings.R9Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.R9Tangent) manifpy._bindings.R9Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.R9Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
- squaredWeightedNorm(self: manifpy._bindings.R9Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.R9Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 9¶
- DoF = 9¶
- RepSize = 9¶
- class manifpy.SE2¶
Bases:
_SE2Base
- static Identity() manifpy._bindings.SE2 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.SE2 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.SE2, p: numpy.ndarray[numpy.float64[2, 1]], J_out_self: numpy.ndarray[numpy.float64[2, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[2, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.SE2) numpy.ndarray[numpy.float64[3, 3]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- angle(self: manifpy._bindings.SE2) float ¶
- between(self: manifpy._bindings.SE2, other: manifpy._bindings._SE2Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.SE2) numpy.ndarray[numpy.float64[4, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SE2) numpy.ndarray[numpy.float64[4, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.SE2, other: manifpy._bindings._SE2Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- imag(self: manifpy._bindings.SE2) float ¶
- inverse(self: manifpy._bindings.SE2, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.SE2, other: manifpy._bindings._SE2Base, 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.
- lminus(self: manifpy._bindings.SE2, other: manifpy._bindings._SE2Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.SE2, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.SE2, tau: manifpy._bindings._SE2TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.SE2, other: manifpy._bindings._SE2Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2Tangent ¶
An alias for the ‘rminus’ function.
- normalize(self: manifpy._bindings.SE2) None ¶
- plus(self: manifpy._bindings.SE2, tau: manifpy._bindings._SE2TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
An alias for the ‘rplus’ function.
- real(self: manifpy._bindings.SE2) float ¶
- rminus(self: manifpy._bindings.SE2, other: manifpy._bindings._SE2Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rotation(self: manifpy._bindings.SE2) numpy.ndarray[numpy.float64[2, 2]] ¶
- rplus(self: manifpy._bindings.SE2, tau: manifpy._bindings._SE2TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.SE2) manifpy._bindings.SE2 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.SE2) manifpy._bindings.SE2 ¶
Set self to a random value.
- transform(self: manifpy._bindings.SE2) numpy.ndarray[numpy.float64[3, 3]] ¶
- translation(self: manifpy._bindings.SE2) numpy.ndarray[numpy.float64[2, 1]] ¶
- x(self: manifpy._bindings.SE2) float ¶
- y(self: manifpy._bindings.SE2) float ¶
- Dim = 2¶
- DoF = 3¶
- RepSize = 4¶
- class manifpy.SE2Tangent¶
Bases:
_SE2TangentBase
- static Bracket(a: manifpy._bindings._SE2TangentBase, b: manifpy._bindings._SE2TangentBase) manifpy._bindings.SE2Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[3, 3]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[3, 3]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.SE2Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[3, 3]]) manifpy._bindings.SE2Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.SE2Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- angle(self: manifpy._bindings.SE2Tangent) float ¶
- bracket(self: manifpy._bindings.SE2Tangent, other: manifpy._bindings._SE2TangentBase) manifpy._bindings.SE2Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.SE2Tangent) numpy.ndarray[numpy.float64[3, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SE2Tangent) numpy.ndarray[numpy.float64[3, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.SE2Tangent, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.SE2Tangent, i: int) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.SE2Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.SE2Tangent, other: manifpy._bindings._SE2TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.SE2Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.SE2Tangent, other: manifpy._bindings.SE2Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.SE2Tangent, other: numpy.ndarray[numpy.float64[3, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.SE2Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.SE2Tangent, state: manifpy._bindings.SE2, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.SE2Tangent, other: manifpy._bindings._SE2TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.SE2Tangent, state: manifpy._bindings.SE2, J_out_self: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SE2
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.SE2Tangent, other: manifpy._bindings._SE2TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SE2Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.SE2Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.SE2Tangent, state: manifpy._bindings.SE2, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE2 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.SE2Tangent) manifpy._bindings.SE2Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.SE2Tangent, vee: numpy.ndarray[numpy.float64[3, 3]]) manifpy._bindings.SE2Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.SE2Tangent) manifpy._bindings.SE2Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.SE2Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
- squaredWeightedNorm(self: manifpy._bindings.SE2Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.SE2Tangent) float ¶
Get the Euclidean weighted norm.
- x(self: manifpy._bindings.SE2Tangent) float ¶
- y(self: manifpy._bindings.SE2Tangent) float ¶
- Dim = 2¶
- DoF = 3¶
- RepSize = 3¶
- class manifpy.SE3¶
Bases:
_SE3Base
- static Identity() manifpy._bindings.SE3 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.SE3 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.SE3, p: numpy.ndarray[numpy.float64[3, 1]], J_out_self: numpy.ndarray[numpy.float64[3, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[3, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.SE3) numpy.ndarray[numpy.float64[6, 6]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.SE3, other: manifpy._bindings._SE3Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.SE3) numpy.ndarray[numpy.float64[7, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SE3) numpy.ndarray[numpy.float64[7, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.SE3, other: manifpy._bindings._SE3Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.SE3, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.SE3, other: manifpy._bindings._SE3Base, 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.
- lminus(self: manifpy._bindings.SE3, other: manifpy._bindings._SE3Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.SE3, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.SE3, tau: manifpy._bindings._SE3TangentBase, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.SE3, other: manifpy._bindings._SE3Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3Tangent ¶
An alias for the ‘rminus’ function.
- normalize(self: manifpy._bindings.SE3) None ¶
- plus(self: manifpy._bindings.SE3, tau: manifpy._bindings._SE3TangentBase, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
An alias for the ‘rplus’ function.
- quat(*args, **kwargs)¶
Overloaded function.
quat(self: manifpy._bindings.SE3) -> numpy.ndarray[numpy.float64[4, 1]]
quat(self: manifpy._bindings.SE3, quaternion: numpy.ndarray[numpy.float64[4, 1]]) -> None
- rminus(self: manifpy._bindings.SE3, other: manifpy._bindings._SE3Base, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rotation(self: manifpy._bindings.SE3) numpy.ndarray[numpy.float64[3, 3]] ¶
- rplus(self: manifpy._bindings.SE3, tau: manifpy._bindings._SE3TangentBase, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.SE3) manifpy._bindings.SE3 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.SE3) manifpy._bindings.SE3 ¶
Set self to a random value.
- transform(self: manifpy._bindings.SE3) numpy.ndarray[numpy.float64[4, 4]] ¶
- translation(*args, **kwargs)¶
Overloaded function.
translation(self: manifpy._bindings.SE3) -> numpy.ndarray[numpy.float64[3, 1]]
translation(self: manifpy._bindings.SE3, translation: numpy.ndarray[numpy.float64[3, 1]]) -> None
- x(self: manifpy._bindings.SE3) float ¶
- y(self: manifpy._bindings.SE3) float ¶
- z(self: manifpy._bindings.SE3) float ¶
- Dim = 3¶
- DoF = 6¶
- RepSize = 7¶
- class manifpy.SE3Tangent¶
Bases:
_SE3TangentBase
- static Bracket(a: manifpy._bindings._SE3TangentBase, b: manifpy._bindings._SE3TangentBase) manifpy._bindings.SE3Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[4, 4]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[6, 6]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.SE3Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[4, 4]]) manifpy._bindings.SE3Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.SE3Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.SE3Tangent, other: manifpy._bindings._SE3TangentBase) manifpy._bindings.SE3Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.SE3Tangent) numpy.ndarray[numpy.float64[6, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SE3Tangent) numpy.ndarray[numpy.float64[6, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.SE3Tangent, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.SE3Tangent, i: int) numpy.ndarray[numpy.float64[4, 4]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.SE3Tangent) numpy.ndarray[numpy.float64[4, 4]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.SE3Tangent, other: manifpy._bindings._SE3TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.SE3Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.SE3Tangent, other: manifpy._bindings.SE3Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.SE3Tangent, other: numpy.ndarray[numpy.float64[6, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.SE3Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.SE3Tangent, state: manifpy._bindings.SE3, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.SE3Tangent, other: manifpy._bindings._SE3TangentBase, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.SE3Tangent, state: manifpy._bindings.SE3, J_out_self: Optional[numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SE3
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.SE3Tangent, other: manifpy._bindings._SE3TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SE3Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.SE3Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.SE3Tangent, state: manifpy._bindings.SE3, J_out_self: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[6, 6], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE3 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.SE3Tangent) manifpy._bindings.SE3Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.SE3Tangent, vee: numpy.ndarray[numpy.float64[4, 4]]) manifpy._bindings.SE3Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.SE3Tangent) manifpy._bindings.SE3Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.SE3Tangent) numpy.ndarray[numpy.float64[6, 6]] ¶
- squaredWeightedNorm(self: manifpy._bindings.SE3Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.SE3Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 3¶
- DoF = 6¶
- RepSize = 6¶
- class manifpy.SE_2_3¶
Bases:
_SE_2_3Base
- static Identity() manifpy._bindings.SE_2_3 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.SE_2_3 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.SE_2_3, p: numpy.ndarray[numpy.float64[3, 1]], J_out_self: numpy.ndarray[numpy.float64[3, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[3, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.SE_2_3) numpy.ndarray[numpy.float64[9, 9]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.SE_2_3, other: manifpy._bindings._SE_2_3Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.SE_2_3) numpy.ndarray[numpy.float64[10, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SE_2_3) numpy.ndarray[numpy.float64[10, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.SE_2_3, other: manifpy._bindings._SE_2_3Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.SE_2_3, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.SE_2_3, other: manifpy._bindings._SE_2_3Base, 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.
- linearVelocity(self: manifpy._bindings.SE_2_3) numpy.ndarray[numpy.float64[3, 1]] ¶
- lminus(self: manifpy._bindings.SE_2_3, other: manifpy._bindings._SE_2_3Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.SE_2_3, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.SE_2_3, tau: manifpy._bindings._SE_2_3TangentBase, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.SE_2_3, other: manifpy._bindings._SE_2_3Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3Tangent ¶
An alias for the ‘rminus’ function.
- normalize(self: manifpy._bindings.SE_2_3) None ¶
- plus(self: manifpy._bindings.SE_2_3, tau: manifpy._bindings._SE_2_3TangentBase, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.SE_2_3, other: manifpy._bindings._SE_2_3Base, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rotation(self: manifpy._bindings.SE_2_3) numpy.ndarray[numpy.float64[3, 3]] ¶
- rplus(self: manifpy._bindings.SE_2_3, tau: manifpy._bindings._SE_2_3TangentBase, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.SE_2_3) manifpy._bindings.SE_2_3 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.SE_2_3) manifpy._bindings.SE_2_3 ¶
Set self to a random value.
- translation(self: manifpy._bindings.SE_2_3) numpy.ndarray[numpy.float64[3, 1]] ¶
- vx(self: manifpy._bindings.SE_2_3) float ¶
- vy(self: manifpy._bindings.SE_2_3) float ¶
- vz(self: manifpy._bindings.SE_2_3) float ¶
- x(self: manifpy._bindings.SE_2_3) float ¶
- y(self: manifpy._bindings.SE_2_3) float ¶
- z(self: manifpy._bindings.SE_2_3) float ¶
- Dim = 3¶
- DoF = 9¶
- RepSize = 10¶
- class manifpy.SE_2_3Tangent¶
Bases:
_SE_2_3TangentBase
- static Bracket(a: manifpy._bindings._SE_2_3TangentBase, b: manifpy._bindings._SE_2_3TangentBase) manifpy._bindings.SE_2_3Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[5, 5]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[9, 9]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.SE_2_3Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[5, 5]]) manifpy._bindings.SE_2_3Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.SE_2_3Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.SE_2_3Tangent, other: manifpy._bindings._SE_2_3TangentBase) manifpy._bindings.SE_2_3Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.SE_2_3Tangent) numpy.ndarray[numpy.float64[9, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SE_2_3Tangent) numpy.ndarray[numpy.float64[9, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.SE_2_3Tangent, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.SE_2_3Tangent, i: int) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.SE_2_3Tangent) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.SE_2_3Tangent, other: manifpy._bindings._SE_2_3TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.SE_2_3Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.SE_2_3Tangent, other: manifpy._bindings.SE_2_3Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.SE_2_3Tangent, other: numpy.ndarray[numpy.float64[9, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.SE_2_3Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.SE_2_3Tangent, state: manifpy._bindings.SE_2_3, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.SE_2_3Tangent, other: manifpy._bindings._SE_2_3TangentBase, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.SE_2_3Tangent, state: manifpy._bindings.SE_2_3, J_out_self: Optional[numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SE_2_3
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.SE_2_3Tangent, other: manifpy._bindings._SE_2_3TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SE_2_3Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.SE_2_3Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.SE_2_3Tangent, state: manifpy._bindings.SE_2_3, J_out_self: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[9, 9], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SE_2_3 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.SE_2_3Tangent) manifpy._bindings.SE_2_3Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.SE_2_3Tangent, vee: numpy.ndarray[numpy.float64[5, 5]]) manifpy._bindings.SE_2_3Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.SE_2_3Tangent) manifpy._bindings.SE_2_3Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.SE_2_3Tangent) numpy.ndarray[numpy.float64[9, 9]] ¶
- squaredWeightedNorm(self: manifpy._bindings.SE_2_3Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.SE_2_3Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 3¶
- DoF = 9¶
- RepSize = 9¶
- class manifpy.SGal3¶
Bases:
_SGal3Base
- static Identity() manifpy._bindings.SGal3 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.SGal3 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.SGal3, p: numpy.ndarray[numpy.float64[3, 1]], J_out_self: numpy.ndarray[numpy.float64[3, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[3, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.SGal3) numpy.ndarray[numpy.float64[10, 10]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.SGal3, other: manifpy._bindings._SGal3Base, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.SGal3) numpy.ndarray[numpy.float64[11, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SGal3) numpy.ndarray[numpy.float64[11, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.SGal3, other: manifpy._bindings._SGal3Base, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.SGal3, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.SGal3, 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.
- linearVelocity(self: manifpy._bindings.SGal3) numpy.ndarray[numpy.float64[3, 1]] ¶
- lminus(self: manifpy._bindings.SGal3, other: manifpy._bindings._SGal3Base, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.SGal3, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.SGal3, tau: manifpy._bindings._SGal3TangentBase, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.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.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.SGal3, other: manifpy._bindings._SGal3Base, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3Tangent ¶
An alias for the ‘rminus’ function.
- normalize(self: manifpy._bindings.SGal3) None ¶
- plus(self: manifpy._bindings.SGal3, tau: manifpy._bindings._SGal3TangentBase, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3 ¶
An alias for the ‘rplus’ function.
- rminus(self: manifpy._bindings.SGal3, other: manifpy._bindings._SGal3Base, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rotation(self: manifpy._bindings.SGal3) numpy.ndarray[numpy.float64[3, 3]] ¶
- rplus(self: manifpy._bindings.SGal3, tau: manifpy._bindings._SGal3TangentBase, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.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.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.SGal3) manifpy._bindings.SGal3 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.SGal3) manifpy._bindings.SGal3 ¶
Set self to a random value.
- t(self: manifpy._bindings.SGal3) float ¶
- translation(self: manifpy._bindings.SGal3) numpy.ndarray[numpy.float64[3, 1]] ¶
- vx(self: manifpy._bindings.SGal3) float ¶
- vy(self: manifpy._bindings.SGal3) float ¶
- vz(self: manifpy._bindings.SGal3) float ¶
- x(self: manifpy._bindings.SGal3) float ¶
- y(self: manifpy._bindings.SGal3) float ¶
- z(self: manifpy._bindings.SGal3) float ¶
- Dim = 3¶
- DoF = 10¶
- RepSize = 11¶
- class manifpy.SGal3Tangent¶
Bases:
_SGal3TangentBase
- static Bracket(a: manifpy._bindings._SGal3TangentBase, b: manifpy._bindings._SGal3TangentBase) manifpy._bindings.SGal3Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[5, 5]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[10, 10]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.SGal3Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[5, 5]]) manifpy._bindings.SGal3Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.SGal3Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.SGal3Tangent, other: manifpy._bindings._SGal3TangentBase) manifpy._bindings.SGal3Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.SGal3Tangent) numpy.ndarray[numpy.float64[10, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SGal3Tangent) numpy.ndarray[numpy.float64[10, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.SGal3Tangent, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.SGal3Tangent, i: int) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.SGal3Tangent) numpy.ndarray[numpy.float64[5, 5]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.SGal3Tangent, other: manifpy._bindings._SGal3TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.SGal3Tangent) numpy.ndarray[numpy.float64[10, 10]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.SGal3Tangent, other: manifpy._bindings.SGal3Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.SGal3Tangent, other: numpy.ndarray[numpy.float64[10, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.SGal3Tangent) numpy.ndarray[numpy.float64[10, 10]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.SGal3Tangent, state: manifpy._bindings.SGal3, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.SGal3Tangent, other: manifpy._bindings._SGal3TangentBase, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.SGal3Tangent, state: manifpy._bindings.SGal3, J_out_self: Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SGal3
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.SGal3Tangent, other: manifpy._bindings._SGal3TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SGal3Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.SGal3Tangent) numpy.ndarray[numpy.float64[10, 10]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.SGal3Tangent, state: manifpy._bindings.SGal3, J_out_self: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[10, 10], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SGal3 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.SGal3Tangent) manifpy._bindings.SGal3Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.SGal3Tangent, vee: numpy.ndarray[numpy.float64[5, 5]]) manifpy._bindings.SGal3Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.SGal3Tangent) manifpy._bindings.SGal3Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.SGal3Tangent) numpy.ndarray[numpy.float64[10, 10]] ¶
- squaredWeightedNorm(self: manifpy._bindings.SGal3Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.SGal3Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 3¶
- DoF = 10¶
- RepSize = 10¶
- class manifpy.SO2¶
Bases:
_SO2Base
The SO2 class
- static Identity() manifpy._bindings.SO2 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.SO2 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.SO2, p: numpy.ndarray[numpy.float64[2, 1]], J_out_self: numpy.ndarray[numpy.float64[2, 1], flags.writeable] | None = None, J_out_p: numpy.ndarray[numpy.float64[2, 2], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[2, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.SO2) numpy.ndarray[numpy.float64[1, 1]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- angle(self: manifpy._bindings.SO2) float ¶
- between(self: manifpy._bindings.SO2, other: manifpy._bindings._SO2Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.SO2) numpy.ndarray[numpy.float64[2, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SO2) numpy.ndarray[numpy.float64[2, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.SO2, other: manifpy._bindings._SO2Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- imag(self: manifpy._bindings.SO2) float ¶
- inverse(self: manifpy._bindings.SO2, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.SO2, other: manifpy._bindings._SO2Base, 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.
- lminus(self: manifpy._bindings.SO2, other: manifpy._bindings._SO2Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.SO2, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.SO2, tau: manifpy._bindings._SO2TangentBase, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.SO2, other: manifpy._bindings._SO2Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2Tangent ¶
An alias for the ‘rminus’ function.
- normalize(self: manifpy._bindings.SO2) None ¶
- plus(self: manifpy._bindings.SO2, tau: manifpy._bindings._SO2TangentBase, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
An alias for the ‘rplus’ function.
- real(self: manifpy._bindings.SO2) float ¶
- rminus(self: manifpy._bindings.SO2, other: manifpy._bindings._SO2Base, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rotation(self: manifpy._bindings.SO2) numpy.ndarray[numpy.float64[2, 2]] ¶
Get the rotation matrix
- rplus(self: manifpy._bindings.SO2, tau: manifpy._bindings._SO2TangentBase, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_tau: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.SO2) manifpy._bindings.SO2 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.SO2) manifpy._bindings.SO2 ¶
Set self to a random value.
- transform(self: manifpy._bindings.SO2) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the transformation matrix
- Dim = 2¶
- DoF = 1¶
- RepSize = 2¶
- class manifpy.SO2Tangent¶
Bases:
_SO2TangentBase
- static Bracket(a: manifpy._bindings._SO2TangentBase, b: manifpy._bindings._SO2TangentBase) manifpy._bindings.SO2Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[2, 2]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[1, 1]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.SO2Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[2, 2]]) manifpy._bindings.SO2Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.SO2Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- angle(self: manifpy._bindings.SO2Tangent) float ¶
- bracket(self: manifpy._bindings.SO2Tangent, other: manifpy._bindings._SO2TangentBase) manifpy._bindings.SO2Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.SO2Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SO2Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.SO2Tangent, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.SO2Tangent, i: int) numpy.ndarray[numpy.float64[2, 2]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.SO2Tangent) numpy.ndarray[numpy.float64[2, 2]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.SO2Tangent, other: manifpy._bindings._SO2TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.SO2Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.SO2Tangent, other: manifpy._bindings.SO2Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.SO2Tangent, other: numpy.ndarray[numpy.float64[1, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.SO2Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.SO2Tangent, state: manifpy._bindings.SO2, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_state: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.SO2Tangent, other: manifpy._bindings._SO2TangentBase, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_other: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.SO2Tangent, state: manifpy._bindings.SO2, J_out_self: Optional[numpy.ndarray[numpy.float64[1, 1], flags.writeable]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[1, 1], flags.writeable]] = None) -> manifpy._bindings.SO2
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.SO2Tangent, other: manifpy._bindings._SO2TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[1, 1], flags.writeable]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[1, 1], flags.writeable]] = None) -> manifpy._bindings.SO2Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.SO2Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.SO2Tangent, state: manifpy._bindings.SO2, J_out_self: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None, J_out_state: numpy.ndarray[numpy.float64[1, 1], flags.writeable] | None = None) manifpy._bindings.SO2 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.SO2Tangent) manifpy._bindings.SO2Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.SO2Tangent, vee: numpy.ndarray[numpy.float64[2, 2]]) manifpy._bindings.SO2Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.SO2Tangent) manifpy._bindings.SO2Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.SO2Tangent) numpy.ndarray[numpy.float64[1, 1]] ¶
- squaredWeightedNorm(self: manifpy._bindings.SO2Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.SO2Tangent) float ¶
Get the Euclidean weighted norm.
- Dim = 2¶
- DoF = 1¶
- RepSize = 1¶
- class manifpy.SO3¶
Bases:
_SO3Base
- static Identity() manifpy._bindings.SO3 ¶
Static helper to create an object set at the Lie group Identity.
- static Random() manifpy._bindings.SO3 ¶
Static helper to create a random object of the Lie group.
- act(self: manifpy._bindings.SO3, p: numpy.ndarray[numpy.float64[3, 1]], J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_p: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) numpy.ndarray[numpy.float64[3, 1]] ¶
Get the action of the Lie group object on a point.
- Parameters:
p (numpy.array) – A point.
[out] (J_out_p) – Jacobian of the new object wrt self.
[out] – Jacobian of the new object wrt input point.
- adj(self: manifpy._bindings.SO3) numpy.ndarray[numpy.float64[3, 3]] ¶
Return the Adjoint of the Lie group object self.
See Eq. (29).
- between(self: manifpy._bindings.SO3, other: manifpy._bindings._SO3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
Return the between of self and another object of the same Lie group.
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- coeffs(self: manifpy._bindings.SO3) numpy.ndarray[numpy.float64[4, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SO3) numpy.ndarray[numpy.float64[4, 1]] ¶
Return a copy of underlying data.
- compose(self: manifpy._bindings.SO3, other: manifpy._bindings._SO3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
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.
[out] (J_out_other) – Jacobian of the composition wrt self.
[out] – Jacobian of the composition wrt other.
- inverse(self: manifpy._bindings.SO3, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
Return the inverse of the Lie group object.
See Eq. (3).
- Parameters:
[out] (J_out_self) – Jacobian of the inverse wrt self.
- isApprox(self: manifpy._bindings.SO3, other: manifpy._bindings._SO3Base, 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.
- lminus(self: manifpy._bindings.SO3, other: manifpy._bindings._SO3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3Tangent ¶
Left ominus operation of the Lie group.
See Eq. (28).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- log(self: manifpy._bindings.SO3, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3Tangent ¶
Return the corresponding Lie algebra element in vector form.
Eq. (24).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- lplus(self: manifpy._bindings.SO3, tau: manifpy._bindings._SO3TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
Left oplus operation of the Lie group.
See Eq. (27).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- minus(self: manifpy._bindings.SO3, other: manifpy._bindings._SO3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3Tangent ¶
An alias for the ‘rminus’ function.
- normalize(self: manifpy._bindings.SO3) None ¶
- plus(self: manifpy._bindings.SO3, tau: manifpy._bindings._SO3TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_mout_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
An alias for the ‘rplus’ function.
- quat(*args, **kwargs)¶
Overloaded function.
quat(self: manifpy._bindings.SO3) -> numpy.ndarray[numpy.float64[4, 1]]
quat(self: manifpy._bindings.SO3, quaternion: numpy.ndarray[numpy.float64[4, 1]]) -> None
- rminus(self: manifpy._bindings.SO3, other: manifpy._bindings._SO3Base, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3Tangent ¶
Right ominus operation of the Lie group.
See Eq. (26).
- Parameters:
other (Lie group) – Another element of the same Lie group.
[out] (J_out_other) – Jacobian of the ominus operation wrt self.
[out] – Jacobian of the ominus operation wrt other.
- rotation(self: manifpy._bindings.SO3) numpy.ndarray[numpy.float64[3, 3]] ¶
- rplus(self: manifpy._bindings.SO3, tau: manifpy._bindings._SO3TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_tau: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
Right oplus operation of the Lie group.
See Eq. (25).
- Parameters:
tau (Lie group tangent) – An element of the tangent of the Lie group.
[out] (J_out_tau) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt tau.
- setIdentity(self: manifpy._bindings.SO3) manifpy._bindings.SO3 ¶
Set self to the Lie group Identity.
- setRandom(self: manifpy._bindings.SO3) manifpy._bindings.SO3 ¶
Set self to a random value.
- transform(self: manifpy._bindings.SO3) numpy.ndarray[numpy.float64[4, 4]] ¶
- w(self: manifpy._bindings.SO3) float ¶
- x(self: manifpy._bindings.SO3) float ¶
- y(self: manifpy._bindings.SO3) float ¶
- z(self: manifpy._bindings.SO3) float ¶
- Dim = 3¶
- DoF = 3¶
- RepSize = 4¶
- class manifpy.SO3Tangent¶
Bases:
_SO3TangentBase
- static Bracket(a: manifpy._bindings._SO3TangentBase, b: manifpy._bindings._SO3TangentBase) manifpy._bindings.SO3Tangent ¶
Compute the Lie bracket [a,b] in vector form..
- static Generator(i: int) numpy.ndarray[numpy.float64[3, 3]] ¶
Static helper to get the ith basis element of the Lie Algebra.
- static InnerWeights() numpy.ndarray[numpy.float64[3, 3]] ¶
Static helper to get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- static Random() manifpy._bindings.SO3Tangent ¶
Static helper to create a random object of the Lie group.
- static Vee(arg0: numpy.ndarray[numpy.float64[3, 3]]) manifpy._bindings.SO3Tangent ¶
Instantiate a Tangent from a Lie algebra object.
- static Zero() manifpy._bindings.SO3Tangent ¶
Static helper to create an object of the Lie group tangent set to zero.
- bracket(self: manifpy._bindings.SO3Tangent, other: manifpy._bindings._SO3TangentBase) manifpy._bindings.SO3Tangent ¶
Compute the Lie bracket [this,other] in vector form.
return The Lie bracket [this,other] in vector form.
- coeffs(self: manifpy._bindings.SO3Tangent) numpy.ndarray[numpy.float64[3, 1]] ¶
Get a reference to underlying data.
- coeffs_copy(self: manifpy._bindings.SO3Tangent) numpy.ndarray[numpy.float64[3, 1]] ¶
Return a copy of underlying data.
- exp(self: manifpy._bindings.SO3Tangent, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
Get the corresponding Lie group element.
Eq. (23).
- Parameters:
[out] (J_out_self) – Jacobian of the log wrt self.
- generator(self: manifpy._bindings.SO3Tangent, i: int) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the ith basis element of the Lie Algebra.
- hat(self: manifpy._bindings.SO3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the isomorphic element in the Lie algebra.
See Eq. (10).
- inner(self: manifpy._bindings.SO3Tangent, other: manifpy._bindings._SO3TangentBase) float ¶
Get inner product of this and another Tangent weighted by W.
ret = self^T x W x other
- innerWeights(self: manifpy._bindings.SO3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the weight matrix of the Weighted Euclidean inner product, relative to the space basis.
- isApprox(*args, **kwargs)¶
Overloaded function.
isApprox(self: manifpy._bindings.SO3Tangent, other: manifpy._bindings.SO3Tangent, eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- otherLie group tangent
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
isApprox(self: manifpy._bindings.SO3Tangent, other: numpy.ndarray[numpy.float64[3, 1]], eps: float = 1e-10) -> bool
Evaluate whether self and other are ‘close’.
- othernumpy.array
Another object of the same Lie group tangent.
- epsdouble
Threshold for equality comparison. Default: 1e-10.
- ljac(self: manifpy._bindings.SO3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the left Jacobian.
This is the left Jacobian of ‘exp’, what is commonly known as “the left Jacobian”.
See Eq. (44) for the left Jacobian of general functions. See Eqs. (126,145,164,179,191) for implementations of the left Jacobian of exp.
- lplus(self: manifpy._bindings.SO3Tangent, state: manifpy._bindings.SO3, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
Left oplus operation of the Lie group.
See Eqs. (27).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- minus(self: manifpy._bindings.SO3Tangent, other: manifpy._bindings._SO3TangentBase, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_other: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3Tangent ¶
Minus operation in the vector space.
- Parameters:
other (Lie group tangent) – Another object of the same Lie group tangent.
[out] (J_out_other) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt other.
- plus(*args, **kwargs)¶
Overloaded function.
plus(self: manifpy._bindings.SO3Tangent, state: manifpy._bindings.SO3, J_out_self: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None, J_out_state: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SO3
An alias for the ‘rplus’ function.
plus(self: manifpy._bindings.SO3Tangent, other: manifpy._bindings._SO3TangentBase, J_out_self: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None, J_out_other: Optional[numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous]] = None) -> manifpy._bindings.SO3Tangent
Plus operation in the vector space.
- otherLie group tangent
Another object of the same Lie group tangent.
- J_out_self [out]numpy.ndarray
Jacobian of the oplus operation wrt self.
- J_out_other [out]numpy.ndarray
Jacobian of the oplus operation wrt other.
- rjac(self: manifpy._bindings.SO3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
Get the right Jacobian.
This is the right Jacobian of ‘exp’, what is commonly known as “the right Jacobian”.
See Eq. (41) for the right Jacobian of general functions. See Eqs. (126,143,163,179,191) for implementations of the right Jacobian of exp.
- rplus(self: manifpy._bindings.SO3Tangent, state: manifpy._bindings.SO3, J_out_self: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None, J_out_state: numpy.ndarray[numpy.float64[3, 3], flags.writeable, flags.c_contiguous] | None = None) manifpy._bindings.SO3 ¶
Right oplus operation of the Lie group.
See Eqs. (25).
- Parameters:
other (Lie group) – Another object of the same Lie group.
[out] (J_out_state) – Jacobian of the oplus operation wrt self.
[out] – Jacobian of the oplus operation wrt state.
- setRandom(self: manifpy._bindings.SO3Tangent) manifpy._bindings.SO3Tangent ¶
Set self to a random value.
- setVee(self: manifpy._bindings.SO3Tangent, vee: numpy.ndarray[numpy.float64[3, 3]]) manifpy._bindings.SO3Tangent ¶
Set the Tangent object from an object in the Lie algebra.
- setZero(self: manifpy._bindings.SO3Tangent) manifpy._bindings.SO3Tangent ¶
Set self to zero.
- smallAdj(self: manifpy._bindings.SO3Tangent) numpy.ndarray[numpy.float64[3, 3]] ¶
- squaredWeightedNorm(self: manifpy._bindings.SO3Tangent) float ¶
Get the squared Euclidean weighted norm.
- weightedNorm(self: manifpy._bindings.SO3Tangent) float ¶
Get the Euclidean weighted norm.
- x(self: manifpy._bindings.SO3Tangent) float ¶
- y(self: manifpy._bindings.SO3Tangent) float ¶
- z(self: manifpy._bindings.SO3Tangent) float ¶
- Dim = 3¶
- DoF = 3¶
- RepSize = 3¶