5#ifndef __pinocchio_algorithm_centroidal_derivatives_hpp__
6#define __pinocchio_algorithm_centroidal_derivatives_hpp__
8#include "pinocchio/multibody/model.hpp"
9#include "pinocchio/multibody/data.hpp"
10#include "pinocchio/algorithm/check.hpp"
50 template<
typename,
int>
class JointCollectionTpl,
51 typename ConfigVectorType,
52 typename TangentVectorType1,
53 typename TangentVectorType2,
54 typename Matrix6xLike0,
55 typename Matrix6xLike1,
56 typename Matrix6xLike2,
57 typename Matrix6xLike3>
61 const Eigen::MatrixBase<ConfigVectorType> & q,
62 const Eigen::MatrixBase<TangentVectorType1> & v,
63 const Eigen::MatrixBase<TangentVectorType2> &
a,
64 const Eigen::MatrixBase<Matrix6xLike0> &
dh_dq,
65 const Eigen::MatrixBase<Matrix6xLike1> &
dhdot_dq,
66 const Eigen::MatrixBase<Matrix6xLike2> &
dhdot_dv,
67 const Eigen::MatrixBase<Matrix6xLike3> &
dhdot_da);
96 template<
typename,
int>
class JointCollectionTpl,
104 const Eigen::MatrixBase<Matrix6xLike1> &
dh_dq,
105 const Eigen::MatrixBase<Matrix6xLike1> &
dhdot_dq,
106 const Eigen::MatrixBase<Matrix6xLike2> &
dhdot_dv,
107 const Eigen::MatrixBase<Matrix6xLike3> &
dhdot_da);
112#include "pinocchio/algorithm/centroidal-derivatives.hxx"
114#if PINOCCHIO_ENABLE_TEMPLATE_INSTANTIATION
115 #include "pinocchio/algorithm/centroidal-derivatives.txx"
Main pinocchio namespace.
void getCentroidalDynamicsDerivatives(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< Matrix6xLike1 > &dh_dq, const Eigen::MatrixBase< Matrix6xLike1 > &dhdot_dq, const Eigen::MatrixBase< Matrix6xLike2 > &dhdot_dv, const Eigen::MatrixBase< Matrix6xLike3 > &dhdot_da)
Retrive the analytical derivatives of the centroidal dynamics from the RNEA derivatives....
void computeCentroidalDynamicsDerivatives(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const Eigen::MatrixBase< TangentVectorType1 > &v, const Eigen::MatrixBase< TangentVectorType2 > &a, const Eigen::MatrixBase< Matrix6xLike0 > &dh_dq, const Eigen::MatrixBase< Matrix6xLike1 > &dhdot_dq, const Eigen::MatrixBase< Matrix6xLike2 > &dhdot_dv, const Eigen::MatrixBase< Matrix6xLike3 > &dhdot_da)
Computes the analytical derivatives of the centroidal dynamics with respect to the joint configuratio...