gbionics / gbionics/idynfor

Implement forwardDynamics

Open
#33 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
16
Forks
2
PR merge metrics
No merged PRs in 30d

Description

I initially wanted to implement this, but it turned out at this moment it is not strictly required.

So I will dump the only code I wrote in here:
~~~
/**
* @brief Compute the free floating forward dynamics.
*
* This method computes \f$ M(q)^{-1} (\tau_{gen} - C(q, \nu) \nu - G(q)) \f$.
*
* The semantics of the generalized torques and depend on the choosen FrameVelocityRepresentation .
*
* The state is the one given set by the setRobotState method.
*
* In particular $\tau_{gen}$ is composed by stacking the inputs totalBase6DForce and totalJointTorques.
*
* \warning This method is not implemented in iDynTree::KinDynComputatons, it is just implemented in
* iDynFor as it is easy to obtain it from the underlying pinocchio implementation.
*
* @param[in] totalBase6DForce the total base 6D force due to external 6D forces on all links
* @param[out] totalJointTorques the total joint torque, due to internal torques and torques induced by the external 6D forces on all links
* @return true if all went well, false otherwise
*/
bool forwardDynamics(const Eigen::Ref& totalBase6DForce,
const Eigen::Ref& totalJointTorques);

~~~

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by reviewing the proposed forwardDynamics signature and the existing iDynFor implementation that the issue references, then compare it with iDynTree::KinDynComputations and the underlying pinocchio behavior. The issue names no files or tests, so identify the relevant dynamics entry points and establish tests for the documented free-floating dynamics semantics before implementation.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
robotics
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.