pinocchio  3.7.0
A fast and flexible implementation of Rigid Body Dynamics algorithms and their analytical derivatives
 
Loading...
Searching...
No Matches
pv.hpp
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
9#include "pinocchio/algorithm/contact-info.hpp"
10
11namespace 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")
34 const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
35 DataTpl<Scalar, Options, JointCollectionTpl> & data,
36 const std::vector<RigidConstraintModelTpl<Scalar, Options>, Allocator> & contact_models);
37
65 typename Scalar,
66 int Options,
67 template<typename, int> class JointCollectionTpl,
68 typename ConfigVectorType,
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,
80 const std::vector<RigidConstraintModelTpl<Scalar, Options>, ContactModelAllocator> &
82 std::vector<RigidConstraintDataTpl<Scalar, Options>, ContactDataAllocator> & contact_datas,
84
112 template<
113 typename Scalar,
114 int Options,
115 template<typename, int> class JointCollectionTpl,
116 typename ConfigVectorType,
121 PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
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,
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__
Main pinocchio namespace.
Definition treeview.dox:11
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...
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.
Definition proximal.hpp:25