5 #ifndef __pinocchio_algorithm_rnea_derivatives_hpp__
6 #define __pinocchio_algorithm_rnea_derivatives_hpp__
38 template<
typename,
int>
class JointCollectionTpl,
39 typename ConfigVectorType,
40 typename ReturnMatrixType>
42 const ModelTpl<Scalar, Options, JointCollectionTpl> &
model,
43 DataTpl<Scalar, Options, JointCollectionTpl> &
data,
44 const Eigen::MatrixBase<ConfigVectorType> &
q,
45 const Eigen::MatrixBase<ReturnMatrixType> & gravity_partial_dq);
71 template<
typename,
int>
class JointCollectionTpl,
72 typename ConfigVectorType,
73 typename ReturnMatrixType>
75 const ModelTpl<Scalar, Options, JointCollectionTpl> &
model,
76 DataTpl<Scalar, Options, JointCollectionTpl> &
data,
77 const Eigen::MatrixBase<ConfigVectorType> &
q,
79 const Eigen::MatrixBase<ReturnMatrixType> & static_torque_partial_dq);
113 template<
typename,
int>
class JointCollectionTpl,
114 typename ConfigVectorType,
115 typename TangentVectorType1,
116 typename TangentVectorType2,
117 typename MatrixType1,
118 typename MatrixType2,
119 typename MatrixType3>
121 const ModelTpl<Scalar, Options, JointCollectionTpl> &
model,
122 DataTpl<Scalar, Options, JointCollectionTpl> &
data,
123 const Eigen::MatrixBase<ConfigVectorType> &
q,
124 const Eigen::MatrixBase<TangentVectorType1> &
v,
125 const Eigen::MatrixBase<TangentVectorType2> &
a,
126 const Eigen::MatrixBase<MatrixType1> & rnea_partial_dq,
127 const Eigen::MatrixBase<MatrixType2> & rnea_partial_dv,
128 const Eigen::MatrixBase<MatrixType3> & rnea_partial_da);
164 template<
typename,
int>
class JointCollectionTpl,
165 typename ConfigVectorType,
166 typename TangentVectorType1,
167 typename TangentVectorType2,
168 typename MatrixType1,
169 typename MatrixType2,
170 typename MatrixType3>
172 const ModelTpl<Scalar, Options, JointCollectionTpl> &
model,
173 DataTpl<Scalar, Options, JointCollectionTpl> &
data,
174 const Eigen::MatrixBase<ConfigVectorType> &
q,
175 const Eigen::MatrixBase<TangentVectorType1> &
v,
176 const Eigen::MatrixBase<TangentVectorType2> &
a,
178 const Eigen::MatrixBase<MatrixType1> & rnea_partial_dq,
179 const Eigen::MatrixBase<MatrixType2> & rnea_partial_dv,
180 const Eigen::MatrixBase<MatrixType3> & rnea_partial_da);
208 template<
typename,
int>
class JointCollectionTpl,
209 typename ConfigVectorType,
210 typename TangentVectorType1,
211 typename TangentVectorType2>
213 const ModelTpl<Scalar, Options, JointCollectionTpl> &
model,
214 DataTpl<Scalar, Options, JointCollectionTpl> &
data,
215 const Eigen::MatrixBase<ConfigVectorType> &
q,
216 const Eigen::MatrixBase<TangentVectorType1> &
v,
217 const Eigen::MatrixBase<TangentVectorType2> &
a);
247 template<
typename,
int>
class JointCollectionTpl,
248 typename ConfigVectorType,
249 typename TangentVectorType1,
250 typename TangentVectorType2>
252 const ModelTpl<Scalar, Options, JointCollectionTpl> &
model,
253 DataTpl<Scalar, Options, JointCollectionTpl> &
data,
254 const Eigen::MatrixBase<ConfigVectorType> &
q,
255 const Eigen::MatrixBase<TangentVectorType1> &
v,
256 const Eigen::MatrixBase<TangentVectorType2> &
a,
261 #include "pinocchio/algorithm/rnea-derivatives.hxx"
263 #if PINOCCHIO_ENABLE_TEMPLATE_INSTANTIATION
264 #include "pinocchio/algorithm/rnea-derivatives.txx"
265 #endif // PINOCCHIO_ENABLE_TEMPLATE_INSTANTIATION
267 #endif // ifndef __pinocchio_algorithm_rnea_derivatives_hpp__