expose-constrained-dynamics-derivatives.cpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2021-2022 INRIA
3 //
4 
7 
11 
12 namespace bp = boost::python;
13 
14 namespace pinocchio
15 {
16  namespace python
17  {
19  RigidConstraintModelVector;
21  RigidConstraintDataVector;
22 
24  const context::Model & model,
26  const RigidConstraintModelVector & contact_models,
27  RigidConstraintDataVector & contact_datas,
29  {
32  const_cast<context::ProximalSettings &>(settings));
33 
34  return bp::make_tuple(
35  make_ref(data.ddq_dq), make_ref(data.ddq_dv), make_ref(data.ddq_dtau),
36  make_ref(data.dlambda_dq), make_ref(data.dlambda_dv), make_ref(data.dlambda_dtau));
37  }
38 
40  {
41  using namespace Eigen;
42 
43  bp::def(
44  "computeConstraintDynamicsDerivatives", computeConstraintDynamicsDerivatives_proxy,
45  (bp::arg("model"), bp::arg("data"), bp::arg("contact_models"), bp::arg("contact_datas"),
46  bp::arg("settings") = context::ProximalSettings()),
47  "Computes the derivatives of the forward dynamics with kinematic constraints (given in the "
48  "list of constraint models).\n"
49  "Assumes that constraintDynamics has been called first. See constraintDynamics for more "
50  "details.\n"
51  "This function returns the derivatives of joint acceleration (ddq) and contact forces "
52  "(lambda_c) of the system with respect to q, v and tau.\n"
53  "The output is a tuple with ddq_dq, ddq_dv, ddq_da, dlambda_dq, dlambda_dv, dlambda_da.",
55  }
56  } // namespace python
57 } // namespace pinocchio
boost::python
Eigen
pinocchio::python::context::RigidConstraintData
RigidConstraintDataTpl< Scalar, Options > RigidConstraintData
Definition: bindings/python/context/generic.hpp:149
pinocchio::DataTpl
Definition: context/generic.hpp:25
pinocchio::computeConstraintDynamicsDerivatives
void computeConstraintDynamicsDerivatives(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const std::vector< RigidConstraintModelTpl< Scalar, Options >, ConstraintModelAllocator > &contact_models, std::vector< RigidConstraintDataTpl< Scalar, Options >, ConstraintDataAllocator > &contact_data, const ProximalSettingsTpl< Scalar > &settings, const Eigen::MatrixBase< MatrixType1 > &ddq_partial_dq, const Eigen::MatrixBase< MatrixType2 > &ddq_partial_dv, const Eigen::MatrixBase< MatrixType3 > &ddq_partial_dtau, const Eigen::MatrixBase< MatrixType4 > &lambda_partial_dq, const Eigen::MatrixBase< MatrixType5 > &lambda_partial_dv, const Eigen::MatrixBase< MatrixType6 > &lambda_partial_dtau)
setup.data
data
Definition: cmake/cython/setup.in.py:48
pinocchio::python::exposeConstraintDynamicsDerivatives
void exposeConstraintDynamicsDerivatives()
Definition: expose-constrained-dynamics-derivatives.cpp:39
constrained-dynamics-derivatives.hpp
pinocchio::python::computeConstraintDynamicsDerivatives_proxy
bp::tuple computeConstraintDynamicsDerivatives_proxy(const context::Model &model, context::Data &data, const RigidConstraintModelVector &contact_models, RigidConstraintDataVector &contact_datas, const context::ProximalSettings &settings=context::ProximalSettings())
Definition: expose-constrained-dynamics-derivatives.cpp:23
simulation-contact-dynamics.contact_datas
list contact_datas
Definition: simulation-contact-dynamics.py:60
pinocchio::ProximalSettingsTpl
Structure containing all the settings parameters for the proximal algorithms.
Definition: algorithm/fwd.hpp:13
algorithms.hpp
python
pinocchio::python::mimic_not_supported_function
Definition: model-checker.hpp:22
pinocchio::python::PINOCCHIO_STD_VECTOR_WITH_EIGEN_ALLOCATOR
typedef PINOCCHIO_STD_VECTOR_WITH_EIGEN_ALLOCATOR(context::RigidConstraintModel) RigidConstraintModelVector
contact-cholesky.contact_models
list contact_models
Definition: contact-cholesky.py:22
std-vector.hpp
model-checker.hpp
pinocchio::python::make_ref
Eigen::Ref< Matrix > make_ref(const Eigen::PlainObjectBase< Matrix > &mat)
Definition: bindings/python/utils/eigen.hpp:17
pinocchio::ModelTpl
Definition: context/generic.hpp:20
pinocchio::python::context::RigidConstraintModel
RigidConstraintModelTpl< Scalar, Options > RigidConstraintModel
Definition: bindings/python/context/generic.hpp:148
eigen.hpp
pinocchio::model
JointCollectionTpl & model
Definition: joint-configuration.hpp:1082
pinocchio
Main pinocchio namespace.
Definition: timings.cpp:33


pinocchio
Author(s):
autogenerated on Thu Apr 10 2025 02:42:18