GCC Code Coverage Report


Directory: ./
File: include/pinocchio/algorithm/impulse-dynamics-derivatives.hpp
Date: 2024-08-27 18:20:05
Exec Total Coverage
Lines: 5 5 100.0%
Branches: 0 0 -%

Line Branch Exec Source
1 //
2 // Copyright (c) 2020 CNRS INRIA
3 //
4
5 #ifndef __pinocchio_algorithm_impulse_dynamics_derivatives_hpp__
6 #define __pinocchio_algorithm_impulse_dynamics_derivatives_hpp__
7
8 #include "pinocchio/algorithm/contact-info.hpp"
9
10 namespace pinocchio
11 {
12
13 template<
14 typename Scalar,
15 int Options,
16 template<typename, int>
17 class JointCollectionTpl,
18 class ConstraintModelAllocator,
19 class ConstraintDataAllocator,
20 typename MatrixType1,
21 typename MatrixType2,
22 typename MatrixType3,
23 typename MatrixType4>
24 PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
25 inline void computeImpulseDynamicsDerivatives(
26 const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
27 DataTpl<Scalar, Options, JointCollectionTpl> & data,
28 const std::vector<RigidConstraintModelTpl<Scalar, Options>, ConstraintModelAllocator> &
29 contact_models,
30 std::vector<RigidConstraintDataTpl<Scalar, Options>, ConstraintDataAllocator> & contact_data,
31 const Scalar r_coeff,
32 const ProximalSettingsTpl<Scalar> & settings,
33 const Eigen::MatrixBase<MatrixType1> & dvimpulse_partial_dq,
34 const Eigen::MatrixBase<MatrixType2> & dvimpulse_partial_dv,
35 const Eigen::MatrixBase<MatrixType3> & impulse_partial_dq,
36 const Eigen::MatrixBase<MatrixType4> & impulse_partial_dv);
37
38 template<
39 typename Scalar,
40 int Options,
41 template<typename, int>
42 class JointCollectionTpl,
43 class ConstraintModelAllocator,
44 class ConstraintDataAllocator>
45 PINOCCHIO_UNSUPPORTED_MESSAGE("The API will change towards more flexibility")
46 4 inline void computeImpulseDynamicsDerivatives(
47 const ModelTpl<Scalar, Options, JointCollectionTpl> & model,
48 DataTpl<Scalar, Options, JointCollectionTpl> & data,
49 const std::vector<RigidConstraintModelTpl<Scalar, Options>, ConstraintModelAllocator> &
50 contact_models,
51 std::vector<RigidConstraintDataTpl<Scalar, Options>, ConstraintDataAllocator> & contact_data,
52 const Scalar r_coeff,
53 const ProximalSettingsTpl<Scalar> & settings)
54 {
55 4 computeImpulseDynamicsDerivatives(
56 4 model, data, contact_models, contact_data, r_coeff, settings, data.ddq_dq, data.ddq_dv,
57 4 data.dlambda_dq, data.dlambda_dv);
58 4 };
59
60 } // namespace pinocchio
61
62 #include "pinocchio/algorithm/impulse-dynamics-derivatives.hxx"
63
64 #endif // ifndef __pinocchio_algorithm_impulse_dynamics_derivatives_hpp__
65