6#ifndef __pinocchio_algorithm_pv_hpp__ 7#define __pinocchio_algorithm_pv_hpp__ 9#include "pinocchio/algorithm/contact-info.hpp" 30 template<
typename,
int>
class JointCollectionTpl,
67 template<typename,
int> class JointCollectionTpl,
68 typename ConfigVectorType,
69 typename TangentVectorType1,
70 typename TangentVectorType2,
71 class ContactModelAllocator,
72 class ContactDataAllocator>
74 inline const typename
DataTpl<
Scalar, Options, JointCollectionTpl>::TangentVectorType &
pv(
77 const Eigen::MatrixBase<ConfigVectorType> & q,
78 const Eigen::MatrixBase<TangentVectorType1> & v,
79 const Eigen::MatrixBase<TangentVectorType2> & tau,
115 template<typename,
int> class JointCollectionTpl,
116 typename ConfigVectorType,
117 typename TangentVectorType1,
118 typename TangentVectorType2,
119 class ContactModelAllocator,
120 class ContactDataAllocator>
126 const Eigen::MatrixBase<ConfigVectorType> & q,
127 const Eigen::MatrixBase<TangentVectorType1> & v,
128 const Eigen::MatrixBase<TangentVectorType2> & tau,
137#include "pinocchio/algorithm/pv.hxx" Main pinocchio namespace.
const DataTpl< Scalar, Options, JointCollectionTpl >::TangentVectorType & pv(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 std::vector< RigidConstraintModelTpl< Scalar, Options >, ContactModelAllocator > &contact_models, std::vector< RigidConstraintDataTpl< Scalar, Options >, ContactDataAllocator > &contact_datas, ProximalSettingsTpl< Scalar > &settings)
The Popov-Vereshchagin algorithm. It computes constrained forward dynamics, aka the joint acceleratio...
struct PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility") ContactCholeskyDecompositionTpl
Contact Cholesky decomposition structure. This structure allows to compute in a efficient and parsimo...
const DataTpl< Scalar, Options, JointCollectionTpl >::TangentVectorType & constrainedABA(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 std::vector< RigidConstraintModelTpl< Scalar, Options >, ContactModelAllocator > &contact_models, std::vector< RigidConstraintDataTpl< Scalar, Options >, ContactDataAllocator > &contact_datas, ProximalSettingsTpl< Scalar > &settings)
The constrained Articulated Body Algorithm (constrainedABA). It computes constrained forward dynamics...
void initPvSolver(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const std::vector< RigidConstraintModelTpl< Scalar, Options >, Allocator > &contact_models)
Init the data according to the contact information contained in contact_models.
Structure containing all the settings parameters for the proximal algorithms.