pinocchio  UNKNOWN
CartesianProductOperation< LieGroup1, LieGroup2 > Struct Template Reference
Inheritance diagram for CartesianProductOperation< LieGroup1, LieGroup2 >:
[legend]
Collaboration diagram for CartesianProductOperation< LieGroup1, LieGroup2 >:
[legend]

Public Member Functions

 SE3_LIE_GROUP_TPL_PUBLIC_INTERFACE (CartesianProductOperation)
 
Index nq () const
 
Index nv () const
 Get dimension of Lie Group tangent space.
 
ConfigVector_t neutral () const
 
std::string name () const
 
template<class ConfigL_t , class ConfigR_t , class Tangent_t >
void difference_impl (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Eigen::MatrixBase< Tangent_t > &d) const
 
template<class ConfigL_t , class ConfigR_t , class JacobianLOut_t , class JacobianROut_t >
void Jdifference_impl (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Eigen::MatrixBase< JacobianLOut_t > &J0, const Eigen::MatrixBase< JacobianROut_t > &J1) const
 
template<class ConfigIn_t , class Velocity_t , class ConfigOut_t >
void integrate_impl (const Eigen::MatrixBase< ConfigIn_t > &q, const Eigen::MatrixBase< Velocity_t > &v, const Eigen::MatrixBase< ConfigOut_t > &qout) const
 
template<class Config_t , class Tangent_t , class JacobianOut_t >
void dIntegrate_dq_impl (const Eigen::MatrixBase< Config_t > &q, const Eigen::MatrixBase< Tangent_t > &v, const Eigen::MatrixBase< JacobianOut_t > &J) const
 
template<class Config_t , class Tangent_t , class JacobianOut_t >
void dIntegrate_dv_impl (const Eigen::MatrixBase< Config_t > &q, const Eigen::MatrixBase< Tangent_t > &v, const Eigen::MatrixBase< JacobianOut_t > &J) const
 
template<class ConfigL_t , class ConfigR_t >
Scalar squaredDistance_impl (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1) const
 
template<class Config_t >
void normalize_impl (const Eigen::MatrixBase< Config_t > &qout) const
 
template<class Config_t >
void random_impl (const Eigen::MatrixBase< Config_t > &qout) const
 
template<class ConfigL_t , class ConfigR_t , class ConfigOut_t >
void randomConfiguration_impl (const Eigen::MatrixBase< ConfigL_t > &lower, const Eigen::MatrixBase< ConfigR_t > &upper, const Eigen::MatrixBase< ConfigOut_t > &qout) const
 
template<class ConfigL_t , class ConfigR_t >
bool isSameConfiguration_impl (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Scalar &prec) const
 
- Public Member Functions inherited from LieGroupBase< CartesianProductOperation< LieGroup1, LieGroup2 > >
void integrate (const Eigen::MatrixBase< ConfigIn_t > &q, const Eigen::MatrixBase< Tangent_t > &v, const Eigen::MatrixBase< ConfigOut_t > &qout) const
 Integrate a joint's configuration with a tangent vector during one unit time duration. More...
 
void dIntegrate_dq (const Eigen::MatrixBase< Config_t > &q, const Eigen::MatrixBase< Tangent_t > &v, const Eigen::MatrixBase< JacobianOut_t > &J) const
 Computes the Jacobian of the Integrate operation. More...
 
void dIntegrate_dv (const Eigen::MatrixBase< Config_t > &q, const Eigen::MatrixBase< Tangent_t > &v, const Eigen::MatrixBase< JacobianOut_t > &J) const
 Computes the Jacobian of the Integrate operation. More...
 
void interpolate (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Scalar &u, const Eigen::MatrixBase< ConfigOut_t > &qout) const
 Interpolation between two joint's configurations. More...
 
void normalize (const Eigen::MatrixBase< Config_t > &qout) const
 Normalize the joint configuration given as input. For instance, the quaternion must be unitary. More...
 
void random (const Eigen::MatrixBase< Config_t > &qout) const
 Generate a random joint configuration, normalizing quaternions when necessary. More...
 
void randomConfiguration (const Eigen::MatrixBase< ConfigL_t > &lower_pos_limit, const Eigen::MatrixBase< ConfigR_t > &upper_pos_limit, const Eigen::MatrixBase< ConfigOut_t > &qout) const
 Generate a configuration vector uniformly sampled among provided limits. More...
 
void difference (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Eigen::MatrixBase< Tangent_t > &v) const
 Computes the tangent vector that must be integrated during one unit time to go from q0 to q1. More...
 
void Jdifference (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Eigen::MatrixBase< JacobianLOut_t > &J0, const Eigen::MatrixBase< JacobianROut_t > &J1) const
 Computes the Jacobian of the difference operation. More...
 
Scalar squaredDistance (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1) const
 Squared distance between two joint configurations. More...
 
Scalar distance (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1) const
 Distance between two configurations of the joint. More...
 
bool isSameConfiguration (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Scalar &prec=Eigen::NumTraits< Scalar >::dummy_precision()) const
 Check if two configurations are equivalent within the given precision. More...
 
ConfigVector_t integrate (const Eigen::MatrixBase< Config_t > &q, const Eigen::MatrixBase< Tangent_t > &v) const
 
ConfigVector_t interpolate (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Scalar &u) const
 
ConfigVector_t random () const
 
ConfigVector_t randomConfiguration (const Eigen::MatrixBase< ConfigL_t > &lower_pos_limit, const Eigen::MatrixBase< ConfigR_t > &upper_pos_limit) const
 
TangentVector_t difference (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1) const
 
void interpolate_impl (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Scalar &u, const Eigen::MatrixBase< ConfigOut_t > &qout) const
 
void normalize_impl (const Eigen::MatrixBase< Config_t > &qout) const
 
Scalar squaredDistance_impl (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1) const
 
bool isSameConfiguration_impl (const Eigen::MatrixBase< ConfigL_t > &q0, const Eigen::MatrixBase< ConfigR_t > &q1, const Scalar &prec) const
 
Index nq () const
 
Index nv () const
 Get dimension of Lie Group tangent space.
 
ConfigVector_t neutral () const
 Get neutral element as a vector.
 
std::string name () const
 Get name of instance.
 
CartesianProductOperation< LieGroup1, LieGroup2 > & derived ()
 
const CartesianProductOperation< LieGroup1, LieGroup2 > & derived () const
 

Additional Inherited Members

- Public Types inherited from LieGroupBase< CartesianProductOperation< LieGroup1, LieGroup2 > >
enum  
 
typedef CartesianProductOperation< LieGroup1, LieGroup2 > LieGroupDerived
 
typedef int Index
 
typedef traits< LieGroupDerived >::Scalar Scalar
 
typedef Eigen::Matrix< Scalar, NQ, 1 > ConfigVector_t
 
typedef Eigen::Matrix< Scalar, NV, 1 > TangentVector_t
 
typedef Eigen::Matrix< Scalar, NV, NV > JacobianMatrix_t
 
- Protected Member Functions inherited from LieGroupBase< CartesianProductOperation< LieGroup1, LieGroup2 > >
 LieGroupBase ()
 
 LieGroupBase (const LieGroupBase &)
 

Detailed Description

template<typename LieGroup1, typename LieGroup2>
struct se3::CartesianProductOperation< LieGroup1, LieGroup2 >

Definition at line 44 of file cartesian-product.hpp.

Member Function Documentation

Index nq ( ) const
inline

Get dimension of Lie Group vector representation

For instance, for SO(3), the dimension of the vector representation is 4 (quaternion) while the dimension of the tangent space is 3.

Definition at line 66 of file cartesian-product.hpp.


The documentation for this struct was generated from the following file: