5 #ifndef __pinocchio_algorithm_contact_dynamics_hpp__
6 #define __pinocchio_algorithm_contact_dynamics_hpp__
8 #include "pinocchio/multibody/model.hpp"
9 #include "pinocchio/multibody/data.hpp"
58 template<
typename,
int>
class JointCollectionTpl,
59 typename ConfigVectorType,
60 typename TangentVectorType1,
61 typename TangentVectorType2,
62 typename ConstraintMatrixType,
63 typename DriftVectorType>
64 PINOCCHIO_DEPRECATED
inline const typename DataTpl<Scalar, Options, JointCollectionTpl>::
69 const Eigen::MatrixBase<ConfigVectorType> & q,
70 const Eigen::MatrixBase<TangentVectorType1> & v,
71 const Eigen::MatrixBase<TangentVectorType2> & tau,
72 const Eigen::MatrixBase<ConstraintMatrixType> & J,
73 const Eigen::MatrixBase<DriftVectorType> & gamma,
74 const Scalar inv_damping = 0.);
120 template<
typename,
int>
class JointCollectionTpl,
121 typename TangentVectorType,
122 typename ConstraintMatrixType,
123 typename DriftVectorType>
129 const Eigen::MatrixBase<TangentVectorType> & tau,
130 const Eigen::MatrixBase<ConstraintMatrixType> & J,
131 const Eigen::MatrixBase<DriftVectorType> & gamma,
132 const Scalar inv_damping = 0.);
152 template<
typename,
int>
class JointCollectionTpl,
153 typename ConfigVectorType,
154 typename ConstraintMatrixType,
155 typename KKTMatrixType>
159 const Eigen::MatrixBase<ConfigVectorType> & q,
160 const Eigen::MatrixBase<ConstraintMatrixType> & J,
161 const Eigen::MatrixBase<KKTMatrixType> & KKTMatrix_inv,
162 const Scalar & inv_damping = 0.);
189 template<
typename,
int>
class JointCollectionTpl,
190 typename ConstraintMatrixType,
191 typename KKTMatrixType>
195 const Eigen::MatrixBase<ConstraintMatrixType> & J,
196 const Eigen::MatrixBase<KKTMatrixType> & KKTMatrix_inv);
235 template<
typename,
int>
class JointCollectionTpl,
236 typename ConfigVectorType,
237 typename TangentVectorType,
238 typename ConstraintMatrixType>
244 const Eigen::MatrixBase<ConfigVectorType> & q,
245 const Eigen::MatrixBase<TangentVectorType> & v_before,
246 const Eigen::MatrixBase<ConstraintMatrixType> & J,
247 const Scalar r_coeff = 0.,
248 const Scalar inv_damping = 0.);
286 template<
typename,
int>
class JointCollectionTpl,
287 typename ConfigVectorType,
288 typename TangentVectorType,
289 typename ConstraintMatrixType>
295 const Eigen::MatrixBase<TangentVectorType> & v_before,
296 const Eigen::MatrixBase<ConstraintMatrixType> & J,
297 const Scalar r_coeff = 0.,
298 const Scalar inv_damping = 0.);
302 #include "pinocchio/algorithm/contact-dynamics.hxx"
304 #if PINOCCHIO_ENABLE_TEMPLATE_INSTANTIATION
305 #include "pinocchio/algorithm/contact-dynamics.txx"
Main pinocchio namespace.
PINOCCHIO_DEPRECATED const DataTpl< Scalar, Options, JointCollectionTpl >::TangentVectorType & impulseDynamics(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const Eigen::MatrixBase< TangentVectorType > &v_before, const Eigen::MatrixBase< ConstraintMatrixType > &J, const Scalar r_coeff=0., const Scalar inv_damping=0.)
Compute the impulse dynamics with contact constraints. Internally, pinocchio::crba is called.
void computeKKTContactDynamicMatrixInverse(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const Eigen::MatrixBase< ConstraintMatrixType > &J, const Eigen::MatrixBase< KKTMatrixType > &KKTMatrix_inv, const Scalar &inv_damping=0.)
Computes the inverse of the KKT matrix for dynamics with contact constraints. It computes the followi...
PINOCCHIO_DEPRECATED const DataTpl< Scalar, Options, JointCollectionTpl >::TangentVectorType & forwardDynamics(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 > &tau, const Eigen::MatrixBase< ConstraintMatrixType > &J, const Eigen::MatrixBase< DriftVectorType > &gamma, const Scalar inv_damping=0.)
Compute the forward dynamics with contact constraints. Internally, pinocchio::computeAllTerms is call...
PINOCCHIO_DEPRECATED void getKKTContactDynamicMatrixInverse(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConstraintMatrixType > &J, const Eigen::MatrixBase< KKTMatrixType > &KKTMatrix_inv)
Computes the inverse of the KKT matrix for dynamics with contact constraints.