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> class JointCollectionTpl,
31  class Allocator>
32  PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
33  inline void initPvSolver(
34  const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
35  DataTpl<Scalar, Options, JointCollectionTpl> & data,
36  const std::vector<RigidConstraintModelTpl<Scalar, Options>, Allocator> & contact_models);
37 
64  template<
65  typename Scalar,
66  int Options,
67  template<typename, int> class JointCollectionTpl,
68  typename ConfigVectorType,
69  typename TangentVectorType1,
70  typename TangentVectorType2,
71  class ContactModelAllocator,
72  class ContactDataAllocator>
73  PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
74  inline const typename DataTpl<Scalar, Options, JointCollectionTpl>::TangentVectorType & pv(
75  const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
76  DataTpl<Scalar, Options, JointCollectionTpl> & data,
77  const Eigen::MatrixBase<ConfigVectorType> & q,
78  const Eigen::MatrixBase<TangentVectorType1> & v,
79  const Eigen::MatrixBase<TangentVectorType2> & tau,
80  const std::vector<RigidConstraintModelTpl<Scalar, Options>, ContactModelAllocator> &
82  std::vector<RigidConstraintDataTpl<Scalar, Options>, ContactDataAllocator> & contact_datas,
83  ProximalSettingsTpl<Scalar> & settings);
84 
112  template<
113  typename Scalar,
114  int Options,
115  template<typename, int> class JointCollectionTpl,
116  typename ConfigVectorType,
117  typename TangentVectorType1,
118  typename TangentVectorType2,
119  class ContactModelAllocator,
120  class ContactDataAllocator>
121  PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
122  inline const
123  typename DataTpl<Scalar, Options, JointCollectionTpl>::TangentVectorType & constrainedABA(
124  const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
125  DataTpl<Scalar, Options, JointCollectionTpl> & data,
126  const Eigen::MatrixBase<ConfigVectorType> & q,
127  const Eigen::MatrixBase<TangentVectorType1> & v,
128  const Eigen::MatrixBase<TangentVectorType2> & tau,
129  const std::vector<RigidConstraintModelTpl<Scalar, Options>, ContactModelAllocator> &
131  std::vector<RigidConstraintDataTpl<Scalar, Options>, ContactDataAllocator> & contact_datas,
132  ProximalSettingsTpl<Scalar> & settings);
133 
134 } // namespace pinocchio
135 
136 /* --- Details -------------------------------------------------------------------- */
137 #include "pinocchio/algorithm/pv.hxx"
138 
139 #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:1082
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:60
forward-dynamics-derivatives.tau
tau
Definition: forward-dynamics-derivatives.py:25
pinocchio::q
JointCollectionTpl const Eigen::MatrixBase< ConfigVectorType > & q
Definition: joint-configuration.hpp:1083
pinocchio::v
JointCollectionTpl const Eigen::MatrixBase< ConfigVectorType > const Eigen::MatrixBase< TangentVectorType > & v
Definition: joint-configuration.hpp:1084
std
Definition: autodiff/casadi/utils/static-if.hpp:64
contact-cholesky.contact_models
list contact_models
Definition: contact-cholesky.py:22
contact-info.hpp
pinocchio::model
JointCollectionTpl & model
Definition: joint-configuration.hpp:1082
pinocchio
Main pinocchio namespace.
Definition: timings.cpp:27


pinocchio
Author(s):
autogenerated on Sun Dec 22 2024 03:41:12