14#include <rbdyn/config.hh>
21struct MultiBodyConfig;
77 inline const Eigen::MatrixXd &
jacobian() const noexcept
115 Eigen::MatrixXd jac_;
116 Eigen::MatrixXd jacDot_;
117 Eigen::MatrixXd jacFull_;
119 std::vector<Jacobian> jacVec_;
121 std::vector<double> bodiesWeight_;
149 const std::vector<double> &
weight()
const;
166 inline const Eigen::MatrixXd &
jacobian() const noexcept
213 const std::vector<sva::MotionVecd> & normalAccB)
const;
253 const std::vector<sva::MotionVecd> & normalAccB)
const;
259 Eigen::MatrixXd jac_;
260 Eigen::MatrixXd jacDot_;
262 std::vector<double> bodiesCoeff_;
265 std::vector<sva::PTransformd> bodiesCoM_;
266 std::vector<std::vector<int>> jointsSubBodies_;
269 std::vector<sva::PTransformd> bodiesCoMWorld_;
270 std::vector<sva::MotionVecd> bodiesCoMVelB_;
272 std::vector<sva::MotionVecd> normalAcc_;
274 std::vector<double> weight_;
const Eigen::MatrixXd & sJacobian(const MultiBody &mb, const MultiBodyConfig &mbc)
const Eigen::MatrixXd & jacobian() const noexcept
Definition CoM.h:77
const Eigen::MatrixXd & jacobian(const MultiBody &mb, const MultiBodyConfig &mbc)
CoMJacobianDummy(const MultiBody &mb)
const Eigen::MatrixXd & sJacobianDot(const MultiBody &mb, const MultiBodyConfig &mbc)
const Eigen::MatrixXd & jacobianDot() const noexcept
Definition CoM.h:94
CoMJacobianDummy(const MultiBody &mb, std::vector< double > weight)
const Eigen::MatrixXd & jacobianDot(const MultiBody &mb, const MultiBodyConfig &mbc)
void sWeight(const MultiBody &mb, std::vector< double > w)
const Eigen::MatrixXd & sJacobian(const MultiBody &mb, const MultiBodyConfig &mbc)
const Eigen::MatrixXd & jacobian(const MultiBody &mb, const MultiBodyConfig &mbc)
CoMJacobian(const MultiBody &mb, std::vector< double > weight)
void weight(const MultiBody &mb, std::vector< double > w)
Per bodies weight setter.
void updateInertialParameters(const MultiBody &mb)
const Eigen::MatrixXd & jacobianDot(const MultiBody &mb, const MultiBodyConfig &mbc)
Eigen::Vector3d sNormalAcceleration(const MultiBody &mb, const MultiBodyConfig &mbc)
CoMJacobian(const MultiBody &mb)
Eigen::Vector3d sVelocity(const MultiBody &mb, const MultiBodyConfig &mbc) const
Eigen::Vector3d velocity(const MultiBody &mb, const MultiBodyConfig &mbc) const
void sUpdateInertialParameters(const MultiBody &mb)
const Eigen::MatrixXd & jacobianDot() const noexcept
Definition CoM.h:183
Eigen::Vector3d normalAcceleration(const MultiBody &mb, const MultiBodyConfig &mbc)
Eigen::Vector3d normalAcceleration(const MultiBody &mb, const MultiBodyConfig &mbc, const std::vector< sva::MotionVecd > &normalAccB) const
const Eigen::MatrixXd & sJacobianDot(const MultiBody &mb, const MultiBodyConfig &mbc)
const Eigen::MatrixXd & jacobian() const noexcept
Definition CoM.h:166
Eigen::Vector3d sNormalAcceleration(const MultiBody &mb, const MultiBodyConfig &mbc, const std::vector< sva::MotionVecd > &normalAccB) const
const std::vector< double > & weight() const
Definition MultiBody.h:30
RBDYN_DLLAPI Eigen::Vector3d sComputeCoM(const MultiBody &mb, const MultiBodyConfig &mbc)
RBDYN_DLLAPI Eigen::Vector3d sComputeCoMAcceleration(const MultiBody &mb, const MultiBodyConfig &mbc)
RBDYN_DLLAPI Eigen::Vector3d sComputeCoMVelocity(const MultiBody &mb, const MultiBodyConfig &mbc)
RBDYN_DLLAPI Eigen::Vector3d computeCoMAcceleration(const MultiBody &mb, const MultiBodyConfig &mbc)
RBDYN_DLLAPI Eigen::Vector3d computeCoM(const MultiBody &mb, const MultiBodyConfig &mbc)
RBDYN_DLLAPI Eigen::Vector3d computeCoMVelocity(const MultiBody &mb, const MultiBodyConfig &mbc)
Definition MultiBodyConfig.h:24