5 #ifndef __pinocchio_algorithm_jacobian_hpp__
6 #define __pinocchio_algorithm_jacobian_hpp__
8 #include "pinocchio/multibody/model.hpp"
9 #include "pinocchio/multibody/data.hpp"
35 template<
typename,
int>
class JointCollectionTpl,
36 typename ConfigVectorType>
40 const Eigen::MatrixBase<ConfigVectorType> & q);
59 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl>
105 template<
typename,
int>
class JointCollectionTpl,
106 typename Matrix6Like>
110 const JointIndex joint_id,
112 const Eigen::MatrixBase<Matrix6Like> & J);
126 template<
typename Scalar,
int Options,
template<
typename,
int>
class JointCollectionTpl>
130 const JointIndex joint_id,
133 typedef Eigen::Matrix<Scalar, 6, Eigen::Dynamic, Options> ReturnType;
134 ReturnType res(ReturnType::Zero(6, model.nv));
170 template<
typename,
int>
class JointCollectionTpl,
171 typename ConfigVectorType,
172 typename Matrix6Like>
176 const Eigen::MatrixBase<ConfigVectorType> & q,
177 const JointIndex joint_id,
178 const Eigen::MatrixBase<Matrix6Like> & J);
199 template<
typename,
int>
class JointCollectionTpl,
200 typename ConfigVectorType,
201 typename TangentVectorType>
206 const Eigen::MatrixBase<ConfigVectorType> & q,
207 const Eigen::MatrixBase<TangentVectorType> & v);
228 template<
typename,
int>
class JointCollectionTpl,
229 typename Matrix6Like>
233 const JointIndex joint_id,
235 const Eigen::MatrixBase<Matrix6Like> & dJ);
243 #include "pinocchio/algorithm/jacobian.hxx"
245 #if PINOCCHIO_ENABLE_TEMPLATE_INSTANTIATION
246 #include "pinocchio/algorithm/jacobian.txx"
ReferenceFrame
Various conventions to express the velocity of a moving frame.
Main pinocchio namespace.
const DataTpl< Scalar, Options, JointCollectionTpl >::Matrix6x & computeJointJacobians(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q)
Computes the full model Jacobian, i.e. the stack of all motion subspace expressed in the world frame....
void computeJointJacobian(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const JointIndex joint_id, const Eigen::MatrixBase< Matrix6Like > &J)
Computes the Jacobian of a specific joint frame expressed in the local frame of the joint and store t...
const DataTpl< Scalar, Options, JointCollectionTpl >::Matrix6x & computeJointJacobiansTimeVariation(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const Eigen::MatrixBase< TangentVectorType > &v)
Computes the full model Jacobian variations with respect to time. It corresponds to dJ/dt which depen...
void getJointJacobian(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const JointIndex joint_id, const ReferenceFrame reference_frame, const Eigen::MatrixBase< Matrix6Like > &J)
Computes the Jacobian of a specific joint frame expressed in one of the pinocchio::ReferenceFrame opt...
void getJointJacobianTimeVariation(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const JointIndex joint_id, const ReferenceFrame reference_frame, const Eigen::MatrixBase< Matrix6Like > &dJ)
Computes the Jacobian time variation of a specific joint frame expressed either in the world frame (r...
Eigen::Matrix< Scalar, 6, Eigen::Dynamic, Options > Matrix6x
The 6d jacobian type (temporary)