- 3.0.2 rigid body dynamics module.
|
This class provides methods for converting the non-inertia base frame Jacobian matrix to an user defined inertia frame (called as inertia frame). More...
#include <FrameJacobian.h>
Public Types | |
typedef Eigen::Matrix< SCALAR, 3, 1 > | Vector3s |
Public Member Functions | |
FrameJacobian () | |
~FrameJacobian () | |
Static Public Member Functions | |
static void | FromBaseJacobianToInertiaJacobian (const Matrix3s &i_R_b, const Vector3s &b_r_point, const Eigen::Matrix< SCALAR, 6, NUM_JOINTS > &b_J_point, Eigen::Matrix< SCALAR, 6, NUM_JOINTS+6 > &i_J_point) |
static void | FromBaseJacToInertiaJacOrientation (const Matrix3s &i_R_b, const Vector3s &b_r_point, const Eigen::Matrix< SCALAR, 3, NUM_JOINTS > &b_J_point, Eigen::Matrix< SCALAR, 3, NUM_JOINTS+6 > &i_J_point) |
static void | FromBaseJacToInertiaJacTranslation (const Matrix3s &i_R_b, const Vector3s &b_r_point, const Eigen::Matrix< SCALAR, 3, NUM_JOINTS > &b_J_point, Eigen::Matrix< SCALAR, 3, NUM_JOINTS+6 > &i_J_point) |
static void | FromBaseJacobianDevToInertiaJacobianDev (const Eigen::Matrix< SCALAR, NUM_JOINTS+6, 1 > &generalizedVelocities, const Matrix3s &i_R_b, const Vector3s &b_r_point, const Eigen::Matrix< SCALAR, 6, NUM_JOINTS > &b_J_point, const Eigen::Matrix< SCALAR, 6, NUM_JOINTS > &b_dJdt_point, Eigen::Matrix< SCALAR, 6, NUM_JOINTS+6 > &i_dJdt_point) |
static void | FromBaseJacobianDevToInertiaJacobianDevOrientation (const Eigen::Matrix< SCALAR, NUM_JOINTS+6, 1 > &generalizedVelocities, const Matrix3s &i_R_b, const Vector3s &b_r_point, const Eigen::Matrix< SCALAR, 3, NUM_JOINTS > &b_J_point, const Eigen::Matrix< SCALAR, 3, NUM_JOINTS > &b_dJdt_point, Eigen::Matrix< SCALAR, 3, NUM_JOINTS+6 > &i_dJdt_point) |
static void | FromBaseJacobianDevToInertiaJacobianDevTranslation (const Eigen::Matrix< SCALAR, NUM_JOINTS+6, 1 > &generalizedVelocities, const Matrix3s &i_R_b, const Vector3s &b_r_point, const Eigen::Matrix< SCALAR, 3, NUM_JOINTS > &b_J_point, const Eigen::Matrix< SCALAR, 3, NUM_JOINTS > &b_dJdt_point, Eigen::Matrix< SCALAR, 3, NUM_JOINTS+6 > &i_dJdt_point) |
Public Attributes | |
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef Eigen::Matrix< SCALAR, 3, 3 > | Matrix3s |
This class provides methods for converting the non-inertia base frame Jacobian matrix to an user defined inertia frame (called as inertia frame).
typedef Eigen::Matrix<SCALAR, 3, 1> ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::Vector3s |
|
inline |
|
inline |
|
inlinestatic |
This method calculates the inertia frame (frame i) Jacobian (rotational and translation part) given the non-inertia base frame full Jacobian (frame b).
[in] | i_R_b | Rotation matrix from base frame to the desired inertia frame. |
[in] | b_r_point | Position of the desired inertia frame origin expressed in the base frame. |
[in] | b_J_point | A 6-by-NUM_JOINTS Jacobian matrix (rotational and translation part) expressed in the base frame. |
[out] | i_J_point | A 6-by-(6+NUM_JOINTS) Jacobian matrix (rotational and linear translation) expressed in the desired inertia frame. |
References ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::FromBaseJacToInertiaJacOrientation(), and ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::FromBaseJacToInertiaJacTranslation().
|
inlinestatic |
This method calculates the inertia frame (frame i) rotational Jacobian given the non-inertia frame rotational Jacobian (frame b).
[in] | i_R_b | Rotation matrix from base frame to the desired inertia frame. |
[in] | b_r_point | Position of the desired inertia frame origin expressed in the base frame. |
[in] | b_J_point | A 3-by-NUM_JOINTS rotational Jacobian matrix expressed in the base frame. |
[out] | i_J_point | A 3-by-(6+NUM_JOINTS) rotational Jacobian matrix expressed in the desired inertia frame. |
Referenced by ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::FromBaseJacobianToInertiaJacobian().
|
inlinestatic |
This method calculates the inertia frame (frame i) translational Jacobian given the non-inertia base frame translation Jacobian (frame b).
[in] | i_R_b | Rotation matrix from base frame to the desired inertia frame. |
[in] | b_r_point | Position of the desired inertia frame origin expressed in the base frame. |
[in] | b_J_point | A 3-by-NUM_JOINTS translational Jacobian matrix expressed in the base frame. |
[out] | i_J_point | A 3-by-(6+NUM_JOINTS) translational Jacobian matrix expressed in the desired inertia frame. |
Referenced by ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::FromBaseJacobianToInertiaJacobian(), ct::rbd::tpl::ConstraintJacobian< ct::rbd::Kinematics< RBD, NEE >, MAX_JAC_SIZE, NJOINTS, Scalar >::getJacobianOrigin(), and ct::rbd::tpl::OperationalModelRBD< RBDContainer, NUM_CONTACTPOINTS, SCALAR >::update().
|
inlinestatic |
This method calculates the time derivative of the inertia frame (frame i) Jacobian (rotational and translation part) given the non-inertia base frame Jacobian (frame b).
[in] | generalizedVelocities | Generalized coordinate velocities. |
[in] | i_R_b | Rotation matrix from base frame to the desired inertia frame. |
[in] | b_r_point | Position of the desired inertia frame origin expressed in the base frame. |
[in] | b_J_point | A 6-by-NUM_JOINTS Jacobian matrix (rotational and translation part) expressed in the base frame. |
[in] | b_dJdt_point | A 6-by-NUM_JOINTS Jacobian matrix time derivative (rotational and translation part) expressed in the base frame. |
[out] | i_dJdt_point | A 6-by-(6+NUM_JOINTS) Jacobian matrix time derivative (rotational and translation part) expressed in the desired inertia frame. |
References ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::FromBaseJacobianDevToInertiaJacobianDevOrientation(), and ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::FromBaseJacobianDevToInertiaJacobianDevTranslation().
|
inlinestatic |
This method calculates the time derivative of the inertia frame (frame i) rotational Jacobian given the non-inertia base frame rotational Jacobian (frame b).
[in] | generalizedVelocities | Generalized coordinate velocities. |
[in] | i_R_b | Rotation matrix from base frame to the desired inertia frame. |
[in] | b_r_point | Position of the desired inertia frame origin expressed in the base frame. |
[in] | b_J_point | A 6-by-NUM_JOINTS rotational Jacobian matrix expressed in the base frame. |
[in] | b_dJdt_point | A 6-by-NUM_JOINTS rotational Jacobian matrix time derivative expressed in the base frame. |
[out] | i_dJdt_point | A 6-by-(6+NUM_JOINTS) rotational Jacobian matrix time derivative expressed in the desired inertia frame. |
Referenced by ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::FromBaseJacobianDevToInertiaJacobianDev().
|
inlinestatic |
This method calculates the time derivative of the inertia frame (frame i) translational Jacobian given the non-inertia base frame rotational Jacobian (frame b).
[in] | generalizedVelocities | Generalized coordinate velocities. |
[in] | i_R_b | Rotation matrix from base frame to the desired inertia frame. |
[in] | b_r_point | Position of the desired inertia frame origin expressed in the base frame. |
[in] | b_J_point | A 6-by-NUM_JOINTS translational Jacobian matrix expressed in the base frame. |
[in] | b_dJdt_point | A 6-by-NUM_JOINTS translational Jacobian matrix time derivative expressed in the base frame. |
[out] | i_dJdt_point | A 6-by-(6+NUM_JOINTS) translational Jacobian matrix time derivative expressed in the desired inertia frame. |
Referenced by ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::FromBaseJacobianDevToInertiaJacobianDev().
EIGEN_MAKE_ALIGNED_OPERATOR_NEW typedef Eigen::Matrix<SCALAR, 3, 3> ct::rbd::tpl::FrameJacobian< NUM_JOINTS, SCALAR >::Matrix3s |