33#ifndef DART_DYNAMICS_GENERICJOINT_HPP_
34#define DART_DYNAMICS_GENERICJOINT_HPP_
45template <
class ConfigSpaceT>
52 static constexpr std::size_t
NumDofs = ConfigSpaceT::NumDofs;
57 using Point =
typename ConfigSpaceT::Point;
59 using Vector =
typename ConfigSpaceT::Vector;
61 using Matrix =
typename ConfigSpaceT::Matrix;
441 const
Eigen::VectorXd& q2, const
Eigen::VectorXd& q1) const override;
504 const
Eigen::VectorXd& _positions) const override;
508 const
Vector& positions) const = 0;
550 Eigen::Vector6d& partialAcceleration,
551 const
Eigen::Vector6d& childVelocity) override;
561 Eigen::Matrix6d& parentArtInertia,
562 const
Eigen::Matrix6d& childArtInertia) override;
566 Eigen::Matrix6d& parentArtInertiaImplicit,
567 const
Eigen::Matrix6d& childArtInertiaImplicit) override;
574 const
Eigen::Matrix6d& artInertia,
double timeStep) override;
578 Eigen::Vector6d& parentBiasForce,
579 const
Eigen::Matrix6d& childArtInertia,
580 const
Eigen::Vector6d& childBiasForce,
581 const
Eigen::Vector6d& childPartialAcc) override;
585 Eigen::Vector6d& parentBiasImpulse,
586 const
Eigen::Matrix6d& childArtInertia,
587 const
Eigen::Vector6d& childBiasImpulse) override;
591 double timeStep) override;
601 const
Eigen::Vector6d& spatialAcc) override;
605 const
Eigen::Matrix6d& artInertia,
606 const
Eigen::Vector6d& velocityChange) override;
611 bool withDampingForces,
612 bool withSpringForces) override;
617 bool withDampingForcese,
618 bool withSpringForces) override;
637 Eigen::Vector6d& parentBiasForce,
638 const
Eigen::Matrix6d& childArtInertia,
639 const
Eigen::Vector6d& childBiasForce) override;
643 Eigen::Vector6d& parentBiasForce,
644 const
Eigen::Matrix6d& childArtInertia,
645 const
Eigen::Vector6d& childBiasForce) override;
649 const
Eigen::Vector6d& bodyForce) override;
654 const
Eigen::Matrix6d& artInertia,
655 const
Eigen::Vector6d& spatialAcc) override;
660 const
Eigen::Matrix6d& artInertia,
661 const
Eigen::Vector6d& spatialAcc) override;
668 const
Eigen::Vector6d& spatial) override;
739 Eigen::Matrix6d& parentArtInertia,
740 const
Eigen::Matrix6d& childArtInertia);
743 Eigen::Matrix6d& parentArtInertia,
744 const
Eigen::Matrix6d& childArtInertia);
747 Eigen::Matrix6d& parentArtInertia,
748 const
Eigen::Matrix6d& childArtInertia);
751 Eigen::Matrix6d& parentArtInertia,
752 const
Eigen::Matrix6d& childArtInertia);
755 const
Eigen::Matrix6d& artInertia);
758 const
Eigen::Matrix6d& artInertia);
761 const
Eigen::Matrix6d& artInertia,
double timeStep);
764 const
Eigen::Matrix6d& artInertia,
double timeStep);
767 Eigen::Vector6d& parentBiasForce,
768 const
Eigen::Matrix6d& childArtInertia,
769 const
Eigen::Vector6d& childBiasForce,
770 const
Eigen::Vector6d& childPartialAcc);
773 Eigen::Vector6d& parentBiasForce,
774 const
Eigen::Matrix6d& childArtInertia,
775 const
Eigen::Vector6d& childBiasForce,
776 const
Eigen::Vector6d& childPartialAcc);
779 Eigen::Vector6d& parentBiasImpulse,
780 const
Eigen::Matrix6d& childArtInertia,
781 const
Eigen::Vector6d& childBiasImpulse);
784 Eigen::Vector6d& parentBiasImpulse,
785 const
Eigen::Matrix6d& childArtInertia,
786 const
Eigen::Vector6d& childBiasImpulse);
795 const
Eigen::Vector6d& bodyImpulse);
798 const
Eigen::Vector6d& bodyImpulse);
801 const
Eigen::Matrix6d& artInertia,
802 const
Eigen::Vector6d& spatialAcc);
805 const
Eigen::Matrix6d& artInertia,
806 const
Eigen::Vector6d& spatialAcc);
809 const
Eigen::Matrix6d& artInertia,
810 const
Eigen::Vector6d& velocityChange);
813 const
Eigen::Matrix6d& artInertia,
814 const
Eigen::Vector6d& velocityChange);
826#include "dart/dynamics/detail/GenericJoint.hpp"
BodyPropPtr properties
Definition SdfParser.cpp:80
std::string * name
Definition SkelParser.cpp:1642
bool * preserveName
Definition SkelParser.cpp:1641
Eigen::VectorXd velocity
Definition SkelParser.cpp:108
Eigen::VectorXd force
Definition SkelParser.cpp:110
std::size_t index
Definition SkelParser.cpp:1617
Eigen::VectorXd acceleration
Definition SkelParser.cpp:109
double * friction
Definition SkelParser.cpp:1639
Eigen::VectorXd position
Definition SkelParser.cpp:107
This is an alternative to EmbedStateAndProperties which allows your class to also inherit other Compo...
Definition EmbeddedAspect.hpp:438
typename Impl::AspectState AspectState
Definition EmbeddedAspect.hpp:444
typename Impl::Aspect Aspect
Definition EmbeddedAspect.hpp:447
typename Impl::AspectProperties AspectProperties
Definition EmbeddedAspect.hpp:446
DegreeOfFreedom class is a proxy class for accessing single degrees of freedom (aka generalized coord...
Definition DegreeOfFreedom.hpp:53
Definition GenericJoint.hpp:49
void setAspectState(const AspectState &state)
Set the AspectState of this GenericJoint.
Definition GenericJoint.hpp:114
void setForceLowerLimits(const Eigen::VectorXd &lowerLimits) override
Definition GenericJoint.hpp:1224
double getCommand(std::size_t index) const override
Definition GenericJoint.hpp:380
typename ConfigSpaceT::Matrix Matrix
Definition GenericJoint.hpp:61
void addChildArtInertiaImplicitToKinematic(Eigen::Matrix6d &parentArtInertia, const Eigen::Matrix6d &childArtInertia)
Definition GenericJoint.hpp:1848
Eigen::VectorXd getCommands() const override
Definition GenericJoint.hpp:451
void resetVelocities() override
Definition GenericJoint.hpp:924
const Vector & getPositionsStatic() const
Fixed-size version of getPositions()
Definition GenericJoint.hpp:710
void setAccelerationsStatic(const Vector &accels)
Fixed-size version of setAccelerations()
Definition GenericJoint.hpp:737
void copy(const ThisClass &otherJoint)
Copy the Properties of another GenericJoint.
Definition GenericJoint.hpp:159
void setForceUpperLimits(const Eigen::VectorXd &upperLimits) override
Definition GenericJoint.hpp:1272
void updateTotalImpulseKinematic(const Eigen::Vector6d &bodyImpulse)
Definition GenericJoint.hpp:2218
void setCoulombFriction(std::size_t index, double friction) override
Definition GenericJoint.hpp:1514
const JacobianMatrix & getRelativeJacobianTimeDerivStatic() const
Fixed-size version of getRelativeJacobianTimeDeriv()
Definition GenericJoint.hpp:1596
void setRestPosition(std::size_t index, double q0) override
Definition GenericJoint.hpp:1447
Vector mTotalForce
Total force projected on joint space.
Definition GenericJoint.hpp:718
void setAccelerations(const Eigen::VectorXd &accelerations) override
Definition GenericJoint.hpp:1014
Vector mInvM_a
Definition GenericJoint.hpp:728
void updateTotalImpulse(const Eigen::Vector6d &bodyImpulse) override
Definition GenericJoint.hpp:2185
void updateForceFD(const Eigen::Vector6d &bodyForce, double timeStep, bool withDampingForcese, bool withSpringForces) override
Definition GenericJoint.hpp:2361
const Matrix & getInvProjArtInertiaImplicit() const
Get the inverse of projected articulated inertia for implicit joint damping and spring forces.
Definition GenericJoint.hpp:1739
Eigen::VectorXd getPositionUpperLimits() const override
Definition GenericJoint.hpp:609
Vector mVelocityChanges
Change of generalized velocity.
Definition GenericJoint.hpp:682
void setVelocityUpperLimits(const Eigen::VectorXd &upperLimits) override
Definition GenericJoint.hpp:890
void updateForceID(const Eigen::Vector6d &bodyForce, double timeStep, bool withDampingForces, bool withSpringForces) override
Definition GenericJoint.hpp:2330
Eigen::VectorXd getAccelerationUpperLimits() const override
Definition GenericJoint.hpp:1131
void updateAccelerationKinematic(const Eigen::Matrix6d &artInertia, const Eigen::Vector6d &spatialAcc)
Definition GenericJoint.hpp:2272
void updateVelocityChangeDynamic(const Eigen::Matrix6d &artInertia, const Eigen::Vector6d &velocityChange)
Definition GenericJoint.hpp:2305
Eigen::VectorXd getVelocityLowerLimits() const override
Definition GenericJoint.hpp:855
void updateInvProjArtInertiaImplicit(const Eigen::Matrix6d &artInertia, double timeStep) override
Definition GenericJoint.hpp:1907
void setVelocityLowerLimits(const Eigen::VectorXd &lowerLimits) override
Definition GenericJoint.hpp:841
void updateConstrainedTermsDynamic(double timeStep)
Definition GenericJoint.hpp:2438
void setPositionLowerLimit(std::size_t index, double position) override
Definition GenericJoint.hpp:520
const GenericJoint< ConfigSpaceT >::JacobianMatrix & getRelativeJacobianStatic() const
Fixed-size version of getRelativeJacobian()
Definition GenericJoint.hpp:1566
void addChildArtInertiaToDynamic(Eigen::Matrix6d &parentArtInertia, const Eigen::Matrix6d &childArtInertia)
Definition GenericJoint.hpp:1774
const math::Jacobian getRelativeJacobianTimeDeriv() const override
Definition GenericJoint.hpp:1588
void setVelocities(const Eigen::VectorXd &velocities) override
Definition GenericJoint.hpp:790
void addChildBiasImpulseToKinematic(Eigen::Vector6d &parentBiasImpulse, const Eigen::Matrix6d &childArtInertia, const Eigen::Vector6d &childBiasImpulse)
Definition GenericJoint.hpp:2100
void addChildArtInertiaImplicitTo(Eigen::Matrix6d &parentArtInertiaImplicit, const Eigen::Matrix6d &childArtInertiaImplicit) override
Definition GenericJoint.hpp:1804
void setPosition(std::size_t index, double position) override
Definition GenericJoint.hpp:465
void updateVelocityChange(const Eigen::Matrix6d &artInertia, const Eigen::Vector6d &velocityChange) override
Definition GenericJoint.hpp:2281
void setCommand(std::size_t index, double command) override
Definition GenericJoint.hpp:326
std::array< DegreeOfFreedom *, NumDofs > mDofs
Array of DegreeOfFreedom objects.
Definition GenericJoint.hpp:675
void setInitialPosition(std::size_t index, double initial) override
Definition GenericJoint.hpp:650
Eigen::VectorXd getForces() const override
Definition GenericJoint.hpp:1190
void resetCommands() override
Definition GenericJoint.hpp:458
void setVelocityChange(std::size_t index, double velocityChange) override
Definition GenericJoint.hpp:1303
typename Base::AspectState AspectState
Definition GenericJoint.hpp:65
void setAccelerationUpperLimits(const Eigen::VectorXd &upperLimits) override
Definition GenericJoint.hpp:1117
void setPartialAccelerationTo(Eigen::Vector6d &partialAcceleration, const Eigen::Vector6d &childVelocity) override
Definition GenericJoint.hpp:1690
double getVelocity(std::size_t index) const override
Definition GenericJoint.hpp:777
Eigen::Vector6d getBodyConstraintWrench() const override
Definition GenericJoint.hpp:1645
void addAccelerationTo(Eigen::Vector6d &acc) override
Definition GenericJoint.hpp:1704
void updateTotalImpulseDynamic(const Eigen::Vector6d &bodyImpulse)
Definition GenericJoint.hpp:2208
void setForce(std::size_t index, double force) override
Definition GenericJoint.hpp:1145
Vector mConstraintImpulses
Generalized constraint impulse.
Definition GenericJoint.hpp:688
void setInitialVelocity(std::size_t index, double initial) override
Definition GenericJoint.hpp:931
double getForce(std::size_t index) const override
Definition GenericJoint.hpp:1161
void setInitialVelocities(const Eigen::VectorXd &initial) override
Definition GenericJoint.hpp:958
void updateInvProjArtInertiaDynamic(const Eigen::Matrix6d &artInertia)
Definition GenericJoint.hpp:1883
void setPositionUpperLimit(std::size_t index, double position) override
Definition GenericJoint.hpp:568
void updateInvProjArtInertiaImplicitKinematic(const Eigen::Matrix6d &artInertia, double timeStep)
Definition GenericJoint.hpp:1954
const math::Jacobian getRelativeJacobian() const override
Definition GenericJoint.hpp:1558
std::size_t getNumDofs() const override
Definition GenericJoint.hpp:215
void resetForces() override
Definition GenericJoint.hpp:1293
DegreeOfFreedom * getDof(std::size_t index) override
void addChildArtInertiaTo(Eigen::Matrix6d &parentArtInertia, const Eigen::Matrix6d &childArtInertia) override
Definition GenericJoint.hpp:1748
Eigen::VectorXd getPositionLowerLimits() const override
Definition GenericJoint.hpp:561
bool isDofNamePreserved(size_t index) const override
Definition GenericJoint.hpp:269
void addVelocityTo(Eigen::Vector6d &vel) override
Definition GenericJoint.hpp:1679
void preserveDofName(size_t index, bool preserve) override
Definition GenericJoint.hpp:256
double getVelocityUpperLimit(std::size_t index) const override
Definition GenericJoint.hpp:876
double getVelocityChange(std::size_t index) const override
Definition GenericJoint.hpp:1317
Vector mTotalImpulse
Total impluse projected on joint space.
Definition GenericJoint.hpp:721
void updateTotalForce(const Eigen::Vector6d &bodyForce, double timeStep) override
Definition GenericJoint.hpp:2112
void resetConstraintImpulses() override
Definition GenericJoint.hpp:1364
virtual Vector getPositionDifferencesStatic(const Vector &q2, const Vector &q1) const
Fixed-size version of getPositionDifferences()
Definition GenericJoint.hpp:1410
void setVelocity(std::size_t index, double velocity) override
Definition GenericJoint.hpp:756
double getRestPosition(std::size_t index) const override
Definition GenericJoint.hpp:1472
void updateConstrainedTerms(double timeStep) override
Definition GenericJoint.hpp:2416
void integrateVelocities(double dt) override
Definition GenericJoint.hpp:1382
Eigen::VectorXd getPositions() const override
Definition GenericJoint.hpp:513
void addChildBiasImpulseToDynamic(Eigen::Vector6d &parentBiasImpulse, const Eigen::Matrix6d &childArtInertia, const Eigen::Vector6d &childBiasImpulse)
Definition GenericJoint.hpp:2079
double getAcceleration(std::size_t index) const override
Definition GenericJoint.hpp:1001
Eigen::VectorXd getVelocities() const override
Definition GenericJoint.hpp:807
Eigen::VectorXd getInitialPositions() const override
Definition GenericJoint.hpp:691
Eigen::VectorXd getPositionDifferences(const Eigen::VectorXd &q2, const Eigen::VectorXd &q1) const override
Definition GenericJoint.hpp:1391
void setPositionLowerLimits(const Eigen::VectorXd &lowerLimits) override
Definition GenericJoint.hpp:547
double getAccelerationUpperLimit(std::size_t index) const override
Definition GenericJoint.hpp:1103
Matrix mInvProjArtInertia
Inverse of projected articulated inertia.
Definition GenericJoint.hpp:708
void setForceLowerLimit(size_t index, double force) override
Definition GenericJoint.hpp:1197
void setSpringStiffness(std::size_t index, double k) override
Definition GenericJoint.hpp:1419
void updateRelativePrimaryAcceleration() const override
Definition GenericJoint.hpp:1671
void setProperties(const Properties &properties)
Set the Properties of this GenericJoint.
Definition GenericJoint.hpp:98
double getForceLowerLimit(std::size_t index) const override
Definition GenericJoint.hpp:1210
static constexpr std::size_t NumDofs
Definition GenericJoint.hpp:52
const Vector & getVelocitiesStatic() const
Fixed-size version of getVelocities()
Definition GenericJoint.hpp:730
double getPositionUpperLimit(std::size_t index) const override
Definition GenericJoint.hpp:582
const std::string & getDofName(size_t index) const override
Definition GenericJoint.hpp:282
double computePotentialEnergy() const override
Definition GenericJoint.hpp:1543
double getSpringStiffness(std::size_t index) const override
Definition GenericJoint.hpp:1434
void setDampingCoefficient(std::size_t index, double coeff) override
Definition GenericJoint.hpp:1485
void updateInvProjArtInertia(const Eigen::Matrix6d &artInertia) override
Definition GenericJoint.hpp:1860
void resetVelocity(std::size_t index) override
Definition GenericJoint.hpp:911
JacobianMatrix mJacobianDeriv
Time derivative of spatial Jacobian expressed in the child body frame.
Definition GenericJoint.hpp:703
void setPositionsStatic(const Vector &positions)
Fixed-size version of setPositions()
Definition GenericJoint.hpp:698
void addChildBiasForceForInvAugMassMatrix(Eigen::Vector6d &parentBiasForce, const Eigen::Matrix6d &childArtInertia, const Eigen::Vector6d &childBiasForce) override
Definition GenericJoint.hpp:2480
void updateConstrainedTermsKinematic(double timeStep)
Definition GenericJoint.hpp:2452
void setAccelerationLowerLimits(const Eigen::VectorXd &lowerLimits) override
Definition GenericJoint.hpp:1067
void setAspectProperties(const AspectProperties &properties)
Set the AspectProperties of this GenericJoint.
Definition GenericJoint.hpp:125
Eigen::VectorXd getForceUpperLimits() const override
Definition GenericJoint.hpp:1286
void updateImpulseFD(const Eigen::Vector6d &bodyImpulse) override
Definition GenericJoint.hpp:2394
void updateInvProjArtInertiaImplicitDynamic(const Eigen::Matrix6d &artInertia, double timeStep)
Definition GenericJoint.hpp:1932
void updateTotalForceKinematic(const Eigen::Vector6d &bodyForce, double timeStep)
Definition GenericJoint.hpp:2176
void resetTotalImpulses() override
Definition GenericJoint.hpp:2226
void integratePositions(double dt) override
Definition GenericJoint.hpp:1371
void setPositions(const Eigen::VectorXd &positions) override
Definition GenericJoint.hpp:499
void addChildBiasForceToDynamic(Eigen::Vector6d &parentBiasForce, const Eigen::Matrix6d &childArtInertia, const Eigen::Vector6d &childBiasForce, const Eigen::Vector6d &childPartialAcc)
Definition GenericJoint.hpp:1994
Eigen::VectorXd getForceLowerLimits() const override
Definition GenericJoint.hpp:1238
double getInitialVelocity(std::size_t index) const override
Definition GenericJoint.hpp:945
Eigen::VectorXd getAccelerations() const override
Definition GenericJoint.hpp:1031
typename ConfigSpaceT::Vector Vector
Definition GenericJoint.hpp:59
void updateVelocityChangeKinematic(const Eigen::Matrix6d &artInertia, const Eigen::Vector6d &velocityChange)
Definition GenericJoint.hpp:2321
const Vector & getAccelerationsStatic() const
Fixed-size version of getAccelerations()
Definition GenericJoint.hpp:749
Eigen::VectorXd getInitialVelocities() const override
Definition GenericJoint.hpp:972
void setCommands(const Eigen::VectorXd &commands) override
Definition GenericJoint.hpp:393
Eigen::VectorXd getSpatialToGeneralized(const Eigen::Vector6d &spatial) override
Definition GenericJoint.hpp:2567
typename ConfigSpaceT::JacobianMatrix JacobianMatrix
Definition GenericJoint.hpp:60
void getInvAugMassMatrixSegment(Eigen::MatrixXd &invMassMat, const size_t col, const Eigen::Matrix6d &artInertia, const Eigen::Vector6d &spatialAcc) override
Definition GenericJoint.hpp:2534
double getVelocityLowerLimit(std::size_t index) const override
Definition GenericJoint.hpp:828
void updateImpulseID(const Eigen::Vector6d &bodyImpulse) override
Definition GenericJoint.hpp:2386
void setVelocityLowerLimit(std::size_t index, double velocity) override
Definition GenericJoint.hpp:814
double getInitialPosition(std::size_t index) const override
Definition GenericJoint.hpp:664
void updateAcceleration(const Eigen::Matrix6d &artInertia, const Eigen::Vector6d &spatialAcc) override
Definition GenericJoint.hpp:2233
Vector mInvMassMatrixSegment
Definition GenericJoint.hpp:731
void addChildBiasForceToKinematic(Eigen::Vector6d &parentBiasForce, const Eigen::Matrix6d &childArtInertia, const Eigen::Vector6d &childBiasForce, const Eigen::Vector6d &childPartialAcc)
Definition GenericJoint.hpp:2023
void setVelocityUpperLimit(std::size_t index, double velocity) override
Definition GenericJoint.hpp:862
typename ConfigSpaceT::Point Point
Definition GenericJoint.hpp:57
void updateInvProjArtInertiaKinematic(const Eigen::Matrix6d &artInertia)
Definition GenericJoint.hpp:1899
bool hasPositionLimit(std::size_t index) const override
Definition GenericJoint.hpp:616
JacobianMatrix mJacobian
Spatial Jacobian expressed in the child body frame.
Definition GenericJoint.hpp:697
void setInitialPositions(const Eigen::VectorXd &initial) override
Definition GenericJoint.hpp:677
void addChildBiasForceTo(Eigen::Vector6d &parentBiasForce, const Eigen::Matrix6d &childArtInertia, const Eigen::Vector6d &childBiasForce, const Eigen::Vector6d &childPartialAcc) override
Definition GenericJoint.hpp:1962
double getCoulombFriction(std::size_t index) const override
Definition GenericJoint.hpp:1530
void addInvMassMatrixSegmentTo(Eigen::Vector6d &acc) override
Definition GenericJoint.hpp:2558
Vector mImpulses
Generalized impulse.
Definition GenericJoint.hpp:685
void setConstraintImpulse(std::size_t index, double impulse) override
Definition GenericJoint.hpp:1337
void resetPosition(std::size_t index) override
Definition GenericJoint.hpp:630
double getForceUpperLimit(size_t index) const override
Definition GenericJoint.hpp:1258
void registerDofs() override
Definition GenericJoint.hpp:1631
void addVelocityChangeTo(Eigen::Vector6d &velocityChange) override
Definition GenericJoint.hpp:1716
const std::string & setDofName(std::size_t index, const std::string &name, bool preserveName=true) override
Definition GenericJoint.hpp:222
void setAccelerationUpperLimit(std::size_t index, double acceleration) override
Definition GenericJoint.hpp:1088
double getDampingCoefficient(std::size_t index) const override
Definition GenericJoint.hpp:1501
typename Base::AspectProperties AspectProperties
Definition GenericJoint.hpp:66
Matrix mInvProjArtInertiaImplicit
Inverse of projected articulated inertia for implicit joint damping and spring forces.
Definition GenericJoint.hpp:715
void setPositionUpperLimits(const Eigen::VectorXd &upperLimits) override
Definition GenericJoint.hpp:595
Eigen::VectorXd getAccelerationLowerLimits() const override
Definition GenericJoint.hpp:1081
void updateTotalForceDynamic(const Eigen::Vector6d &bodyForce, double timeStep)
Definition GenericJoint.hpp:2151
void setVelocitiesStatic(const Vector &velocities)
Fixed-size version of setVelocities()
Definition GenericJoint.hpp:717
void updateRelativeSpatialAcceleration() const override
Definition GenericJoint.hpp:1662
void updateRelativeSpatialVelocity() const override
Definition GenericJoint.hpp:1654
void setForceUpperLimit(size_t index, double force) override
Definition GenericJoint.hpp:1245
size_t getIndexInTree(size_t index) const override
Definition GenericJoint.hpp:313
Eigen::VectorXd getVelocityUpperLimits() const override
Definition GenericJoint.hpp:904
void setAccelerationLowerLimit(size_t index, double acceleration) override
Definition GenericJoint.hpp:1038
double getPosition(std::size_t index) const override
Definition GenericJoint.hpp:486
void addChildArtInertiaImplicitToDynamic(Eigen::Matrix6d &parentArtInertia, const Eigen::Matrix6d &childArtInertia)
Definition GenericJoint.hpp:1830
double getAccelerationLowerLimit(std::size_t index) const override
Definition GenericJoint.hpp:1053
void addChildBiasImpulseTo(Eigen::Vector6d &parentBiasImpulse, const Eigen::Matrix6d &childArtInertia, const Eigen::Vector6d &childBiasImpulse) override
Definition GenericJoint.hpp:2050
double getPositionLowerLimit(std::size_t index) const override
Definition GenericJoint.hpp:534
void updateAccelerationDynamic(const Eigen::Matrix6d &artInertia, const Eigen::Vector6d &spatialAcc)
Definition GenericJoint.hpp:2257
void resetPositions() override
Definition GenericJoint.hpp:643
void addChildBiasForceForInvMassMatrix(Eigen::Vector6d &parentBiasForce, const Eigen::Matrix6d &childArtInertia, const Eigen::Vector6d &childBiasForce) override
Definition GenericJoint.hpp:2460
void getInvMassMatrixSegment(Eigen::MatrixXd &invMassMat, const size_t col, const Eigen::Matrix6d &artInertia, const Eigen::Vector6d &spatialAcc) override
Definition GenericJoint.hpp:2510
typename ConfigSpaceT::EuclideanPoint EuclideanPoint
Definition GenericJoint.hpp:58
Properties getGenericJointProperties() const
Get the Properties of this GenericJoint.
Definition GenericJoint.hpp:151
const Matrix & getInvProjArtInertia() const
Get the inverse of the projected articulated inertia.
Definition GenericJoint.hpp:1729
void setForces(const Eigen::VectorXd &forces) override
Definition GenericJoint.hpp:1174
void updateTotalForceForInvMassMatrix(const Eigen::Vector6d &bodyForce) override
Definition GenericJoint.hpp:2500
void resetAccelerations() override
Definition GenericJoint.hpp:1138
void setAcceleration(std::size_t index, double acceleration) override
Definition GenericJoint.hpp:979
void addChildArtInertiaToKinematic(Eigen::Matrix6d &parentArtInertia, const Eigen::Matrix6d &childArtInertia)
Definition GenericJoint.hpp:1792
double getConstraintImpulse(std::size_t index) const override
Definition GenericJoint.hpp:1351
size_t getIndexInSkeleton(size_t index) const override
Definition GenericJoint.hpp:300
void resetVelocityChanges() override
Definition GenericJoint.hpp:1330
#define DART_BAKE_SPECIALIZED_ASPECT_IRREGULAR(TypeName, AspectName)
Definition Composite.hpp:164
Definition MathTypes.hpp:47
Definition BulletCollisionDetector.cpp:63
Definition SharedLibraryManager.hpp:43
Definition GenericJointAspect.hpp:178
Definition GenericJointAspect.hpp:87