src/algorithm/aba-derivatives.cpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2022 INRIA
3 //
4 
6 
7 namespace pinocchio
8 {
9  namespace impl
10  {
11 
12  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void computeABADerivatives<
15  JointCollectionDefaultTpl,
16  Eigen::Ref<const context::VectorXs>,
17  Eigen::Ref<const context::VectorXs>,
18  Eigen::Ref<const context::VectorXs>,
19  Eigen::Ref<context::MatrixXs>,
20  Eigen::Ref<context::MatrixXs>,
21  Eigen::Ref<context::MatrixXs>>(
22  const context::Model &,
23  context::Data &,
24  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
25  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
26  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
27  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
28  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
29  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &);
30 
31  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void computeABADerivatives<
34  JointCollectionDefaultTpl,
35  Eigen::Ref<const context::VectorXs>,
36  Eigen::Ref<const context::VectorXs>,
37  Eigen::Ref<const context::VectorXs>,
38  Eigen::Ref<context::MatrixXs>,
39  Eigen::Ref<context::MatrixXs>,
40  Eigen::Ref<context::RowMatrixXs>>(
41  const context::Model &,
42  context::Data &,
43  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
44  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
45  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
46  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
47  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
48  const Eigen::MatrixBase<Eigen::Ref<context::RowMatrixXs>> &);
49 
50  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void computeABADerivatives<
53  JointCollectionDefaultTpl,
54  Eigen::Ref<const context::VectorXs>,
55  Eigen::Ref<const context::VectorXs>,
56  Eigen::Ref<const context::VectorXs>,
57  Eigen::Ref<context::MatrixXs>,
58  Eigen::Ref<context::MatrixXs>,
59  Eigen::Ref<context::MatrixXs>>(
60  const context::Model &,
61  context::Data &,
62  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
63  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
64  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
65  const container::aligned_vector<ForceTpl<context::Scalar, context::Options>> &,
66  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
67  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
68  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &);
69 
70  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void computeABADerivatives<
73  JointCollectionDefaultTpl,
74  Eigen::Ref<const context::VectorXs>,
75  Eigen::Ref<const context::VectorXs>,
76  Eigen::Ref<const context::VectorXs>,
77  Eigen::Ref<context::MatrixXs>,
78  Eigen::Ref<context::MatrixXs>,
79  Eigen::Ref<context::RowMatrixXs>>(
80  const context::Model &,
81  context::Data &,
82  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
83  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
84  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
85  const container::aligned_vector<ForceTpl<context::Scalar, context::Options>> &,
86  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
87  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
88  const Eigen::MatrixBase<Eigen::Ref<context::RowMatrixXs>> &);
89 
90  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void computeABADerivatives<
93  JointCollectionDefaultTpl,
94  Eigen::Ref<const context::VectorXs>,
95  Eigen::Ref<const context::VectorXs>,
96  Eigen::Ref<const context::VectorXs>>(
97  const context::Model &,
98  context::Data &,
99  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
100  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
101  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &);
102 
103  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void computeABADerivatives<
106  JointCollectionDefaultTpl,
107  Eigen::Ref<const context::VectorXs>,
108  Eigen::Ref<const context::VectorXs>,
109  Eigen::Ref<const context::VectorXs>>(
110  const context::Model &,
111  context::Data &,
112  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
113  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
114  const Eigen::MatrixBase<Eigen::Ref<const context::VectorXs>> &,
115  const container::aligned_vector<ForceTpl<context::Scalar, context::Options>> &);
116 
117  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void computeABADerivatives<
120  JointCollectionDefaultTpl,
121  Eigen::Ref<context::MatrixXs>,
122  Eigen::Ref<context::MatrixXs>,
123  Eigen::Ref<context::MatrixXs>>(
124  const context::Model &,
125  context::Data &,
126  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
127  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
128  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &);
129  } // namespace impl
130 
131  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void
132  computeABADerivatives<context::Scalar, context::Options, JointCollectionDefaultTpl>(
133  const context::Model &, context::Data &);
134 
135  namespace impl
136  {
137  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void computeABADerivatives<
140  JointCollectionDefaultTpl,
141  Eigen::Ref<context::MatrixXs>,
142  Eigen::Ref<context::MatrixXs>,
143  Eigen::Ref<context::MatrixXs>>(
144  const context::Model &,
145  context::Data &,
146  const container::aligned_vector<ForceTpl<context::Scalar, context::Options>> &,
147  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
148  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &,
149  const Eigen::MatrixBase<Eigen::Ref<context::MatrixXs>> &);
150  } // namespace impl
151 
152  template PINOCCHIO_EXPLICIT_INSTANTIATION_DEFINITION_DLLAPI void
153  computeABADerivatives<context::Scalar, context::Options, JointCollectionDefaultTpl>(
154  const context::Model &,
155  context::Data &,
156  const container::aligned_vector<ForceTpl<context::Scalar, context::Options>> &);
157 } // namespace pinocchio
pinocchio::context::Model
ModelTpl< Scalar, Options > Model
Definition: context/generic.hpp:56
aba-derivatives.hpp
pinocchio::context::Options
@ Options
Definition: context/generic.hpp:45
pinocchio::container::aligned_vector
std::vector< T, Eigen::aligned_allocator< T > > aligned_vector
Definition: container/aligned-vector.hpp:21
pinocchio::computeABADerivatives
void computeABADerivatives(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< MatrixType1 > &aba_partial_dq, const Eigen::MatrixBase< MatrixType2 > &aba_partial_dv, const Eigen::MatrixBase< MatrixType3 > &aba_partial_dtau)
The derivatives of the Articulated-Body algorithm.
pinocchio::context::Data
DataTpl< Scalar, Options > Data
Definition: context/generic.hpp:57
pinocchio::context::Scalar
PINOCCHIO_SCALAR_TYPE Scalar
Definition: context/generic.hpp:42
pinocchio
Main pinocchio namespace.
Definition: timings.cpp:27


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