Go to the documentation of this file.
21 const context::MatrixXs &
J,
36 const context::MatrixXs &
J,
52 const context::MatrixXs &
J,
67 const context::MatrixXs &
J,
82 const context::MatrixXs &
J,
85 context::MatrixXs KKTMatrix_inv(
model.nv +
J.rows(),
model.nv +
J.rows());
93 context::MatrixXs MJtJ_inv(
model.nv +
J.rows(),
model.nv +
J.rows());
105 using namespace Eigen;
109 (bp::arg(
"model"), bp::arg(
"data"), bp::arg(
"q"), bp::arg(
"v"), bp::arg(
"tau"),
110 bp::arg(
"constraint_jacobian"), bp::arg(
"constraint_drift"), bp::arg(
"damping") = 0),
111 "Solves the constrained dynamics problem with contacts, puts the result in "
112 "context::Data::ddq and return it. The contact forces are stored in data.lambda_c.\n"
113 "Note: internally, pinocchio.computeAllTerms is called.",
118 (bp::arg(
"model"), bp::arg(
"data"), bp::arg(
"tau"), bp::arg(
"constraint_jacobian"),
119 bp::arg(
"constraint_drift"), bp::arg(
"damping") = 0),
120 "Solves the forward dynamics problem with contacts, puts the result in "
121 "context::Data::ddq and return it. The contact forces are stored in data.lambda_c.\n"
122 "Note: this function assumes that pinocchio.computeAllTerms has been called first.",
127 (bp::arg(
"model"), bp::arg(
"data"), bp::arg(
"q"), bp::arg(
"v_before"),
128 bp::arg(
"constraint_jacobian"), bp::arg(
"restitution_coefficient") = 0,
129 bp::arg(
"damping") = 0),
130 "Solves the impact dynamics problem with contacts, store the result in "
131 "context::Data::dq_after and return it. The contact impulses are stored in "
133 "Note: internally, pinocchio.crba is called.",
138 (bp::arg(
"model"), bp::arg(
"data"), bp::arg(
"v_before"), bp::arg(
"constraint_jacobian"),
139 bp::arg(
"restitution_coefficient") = 0, bp::arg(
"damping") = 0),
140 "Solves the impact dynamics problem with contacts, store the result in "
141 "context::Data::dq_after and return it. The contact impulses are stored in "
143 "Note: this function assumes that pinocchio.crba has been called first.",
148 (bp::arg(
"model"), bp::arg(
"data"), bp::arg(
"q"), bp::arg(
"constraint_jacobian"),
149 bp::arg(
"damping") = 0),
150 "Computes the inverse of the constraint matrix [[M J^T], [J 0]].",
155 bp::args(
"model",
"data",
"constraint_jacobian"),
156 "Computes the inverse of the constraint matrix [[M Jt], [J 0]].\n forwardDynamics or "
157 "impulseDynamics must have been called first.\n"
158 "Note: the constraint Jacobian should be the same that was provided to "
159 "forwardDynamics or impulseDynamics.",
PINOCCHIO_DEPRECATED void getKKTContactDynamicMatrixInverse(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, const DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConstraintMatrixType > &J, const Eigen::MatrixBase< KKTMatrixType > &KKTMatrix_inv)
Computes the inverse of the KKT matrix for dynamics with contact constraints.
static const context::MatrixXs getKKTContactDynamicMatrixInverse_proxy(const context::Model &model, context::Data &data, const context::MatrixXs &J)
static const context::VectorXs forwardDynamics_proxy_no_q(const context::Model &model, context::Data &data, const context::VectorXs &tau, const context::MatrixXs &J, const context::VectorXs &gamma, const context::Scalar inv_damping=context::Scalar(0.0))
void exposeContactDynamics()
static const context::VectorXs impulseDynamics_proxy_no_q(const context::Model &model, context::Data &data, const context::VectorXs &v_before, const context::MatrixXs &J, const context::Scalar r_coeff=context::Scalar(0.), const context::Scalar inv_damping=context::Scalar(0.))
static const context::VectorXs impulseDynamics_proxy(const context::Model &model, context::Data &data, const context::VectorXs &q, const context::VectorXs &v_before, const context::MatrixXs &J, const context::Scalar r_coeff=context::Scalar(0.), const context::Scalar inv_damping=context::Scalar(0.))
#define PINOCCHIO_COMPILER_DIAGNOSTIC_POP
void computeKKTContactDynamicMatrixInverse(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const Eigen::MatrixBase< ConstraintMatrixType > &J, const Eigen::MatrixBase< KKTMatrixType > &KKTMatrix_inv, const Scalar &inv_damping=0.)
Computes the inverse of the KKT matrix for dynamics with contact constraints. It computes the followi...
context::VectorXs VectorXs
static context::MatrixXs computeKKTContactDynamicMatrixInverse_proxy(const context::Model &model, context::Data &data, const context::VectorXs &q, const context::MatrixXs &J, const context::Scalar mu=context::Scalar(0))
const PINOCCHIO_DEPRECATED DataTpl< Scalar, Options, JointCollectionTpl >::TangentVectorType & forwardDynamics(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< ConstraintMatrixType > &J, const Eigen::MatrixBase< DriftVectorType > &gamma, const Scalar inv_damping=0.)
Compute the forward dynamics with contact constraints. Internally, pinocchio::computeAllTerms is call...
#define PINOCCHIO_COMPILER_DIAGNOSTIC_IGNORED_DEPRECECATED_DECLARATIONS
#define PINOCCHIO_COMPILER_DIAGNOSTIC_PUSH
macros for pragma push/pop/ignore deprecated warnings
JointCollectionTpl const Eigen::MatrixBase< ConfigVectorType > & q
static const context::VectorXs forwardDynamics_proxy(const context::Model &model, context::Data &data, const context::VectorXs &q, const context::VectorXs &v, const context::VectorXs &tau, const context::MatrixXs &J, const context::VectorXs &gamma, const context::Scalar inv_damping=context::Scalar(0.0))
const PINOCCHIO_DEPRECATED DataTpl< Scalar, Options, JointCollectionTpl >::TangentVectorType & impulseDynamics(const ModelTpl< Scalar, Options, JointCollectionTpl > &model, DataTpl< Scalar, Options, JointCollectionTpl > &data, const Eigen::MatrixBase< ConfigVectorType > &q, const Eigen::MatrixBase< TangentVectorType > &v_before, const Eigen::MatrixBase< ConstraintMatrixType > &J, const Scalar r_coeff=0., const Scalar inv_damping=0.)
Compute the impulse dynamics with contact constraints. Internally, pinocchio::crba is called.
PINOCCHIO_PYTHON_SCALAR_TYPE Scalar
JointCollectionTpl & model
Main pinocchio namespace.
pinocchio
Author(s):
autogenerated on Thu Apr 10 2025 02:42:18