pv.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2023-2024 Inria
3 // Copyright (c) 2023 KU Leuven
4 //
5 
6 #ifndef __pinocchio_algorithm_pv_hpp__
7 #define __pinocchio_algorithm_pv_hpp__
8 
10 
11 namespace pinocchio
12 {
13 
27  template<
28  typename Scalar,
29  int Options,
30  template<typename, int>
31  class JointCollectionTpl,
32  class Allocator>
33  PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
34  inline void initPvSolver(
35  const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
36  DataTpl<Scalar, Options, JointCollectionTpl> & data,
37  const std::vector<RigidConstraintModelTpl<Scalar, Options>, Allocator> & contact_models);
38 
65  template<
66  typename Scalar,
67  int Options,
68  template<typename, int>
69  class JointCollectionTpl,
70  typename ConfigVectorType,
71  typename TangentVectorType1,
72  typename TangentVectorType2,
73  class ContactModelAllocator,
74  class ContactDataAllocator>
75  PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
76  inline const typename DataTpl<Scalar, Options, JointCollectionTpl>::TangentVectorType & pv(
77  const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
78  DataTpl<Scalar, Options, JointCollectionTpl> & data,
79  const Eigen::MatrixBase<ConfigVectorType> & q,
80  const Eigen::MatrixBase<TangentVectorType1> & v,
81  const Eigen::MatrixBase<TangentVectorType2> & tau,
82  const std::vector<RigidConstraintModelTpl<Scalar, Options>, ContactModelAllocator> &
84  std::vector<RigidConstraintDataTpl<Scalar, Options>, ContactDataAllocator> & contact_datas,
85  ProximalSettingsTpl<Scalar> & settings);
86 
114  template<
115  typename Scalar,
116  int Options,
117  template<typename, int>
118  class JointCollectionTpl,
119  typename ConfigVectorType,
120  typename TangentVectorType1,
121  typename TangentVectorType2,
122  class ContactModelAllocator,
123  class ContactDataAllocator>
124  PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
125  inline const
126  typename DataTpl<Scalar, Options, JointCollectionTpl>::TangentVectorType & constrainedABA(
127  const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
128  DataTpl<Scalar, Options, JointCollectionTpl> & data,
129  const Eigen::MatrixBase<ConfigVectorType> & q,
130  const Eigen::MatrixBase<TangentVectorType1> & v,
131  const Eigen::MatrixBase<TangentVectorType2> & tau,
132  const std::vector<RigidConstraintModelTpl<Scalar, Options>, ContactModelAllocator> &
134  std::vector<RigidConstraintDataTpl<Scalar, Options>, ContactDataAllocator> & contact_datas,
135  ProximalSettingsTpl<Scalar> & settings);
136 
137 } // namespace pinocchio
138 
139 /* --- Details -------------------------------------------------------------------- */
140 #include "pinocchio/algorithm/pv.hxx"
141 
142 #endif // ifndef __pinocchio_algorithm_pv_hpp__
Eigen
pinocchio::constrainedABA
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...
pinocchio::Options
Options
Definition: joint-configuration.hpp:1116
pinocchio::pv
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...
setup.data
data
Definition: cmake/cython/setup.in.py:48
pinocchio::PINOCCHIO_UNSUPPORTED_MESSAGE
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...
Definition: algorithm/contact-cholesky.hpp:55
pinocchio::python::Scalar
context::Scalar Scalar
Definition: admm-solver.cpp:29
pinocchio::initPvSolver
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.
simulation-contact-dynamics.contact_datas
list contact_datas
Definition: simulation-contact-dynamics.py:65
forward-dynamics-derivatives.tau
tau
Definition: forward-dynamics-derivatives.py:23
pinocchio::q
JointCollectionTpl const Eigen::MatrixBase< ConfigVectorType > & q
Definition: joint-configuration.hpp:1117
pinocchio::v
JointCollectionTpl const Eigen::MatrixBase< ConfigVectorType > const Eigen::MatrixBase< TangentVectorType > & v
Definition: joint-configuration.hpp:1118
std
Definition: autodiff/casadi/utils/static-if.hpp:64
contact-cholesky.contact_models
list contact_models
Definition: contact-cholesky.py:25
contact-info.hpp
pinocchio::model
JointCollectionTpl & model
Definition: joint-configuration.hpp:1116
pinocchio
Main pinocchio namespace.
Definition: timings.cpp:27


pinocchio
Author(s):
autogenerated on Tue Jun 25 2024 02:42:40