DART  6.6.2
dart::dynamics::PointMass Class Reference

#include <PointMass.hpp>

Inheritance diagram for dart::dynamics::PointMass:
dart::common::Subject

Classes

struct  Properties
 Properties for each PointMass. More...
 
struct  State
 State for each PointMass. More...
 

Public Member Functions

virtual ~PointMass ()
 Default destructor. More...
 
StategetState ()
 State of this PointMass. More...
 
const StategetState () const
 State of this PointMass. More...
 
std::size_t getIndexInSoftBodyNode () const
 
void setMass (double _mass)
 
double getMass () const
 
double getPsi () const
 
double getImplicitPsi () const
 
double getPi () const
 
double getImplicitPi () const
 
void addConnectedPointMass (PointMass *_pointMass)
 
std::size_t getNumConnectedPointMasses () const
 
PointMassgetConnectedPointMass (std::size_t _idx)
 
const PointMassgetConnectedPointMass (std::size_t _idx) const
 
void setColliding (bool _isColliding)
 Set whether this point mass is colliding with other objects. More...
 
bool isColliding ()
 Return whether this point mass is set to be colliding with other objects. More...
 
std::size_t getNumDofs () const
 
void setPosition (std::size_t _index, double _position)
 
double getPosition (std::size_t _index) const
 
void setPositions (const Eigen::Vector3d &_positions)
 
const Eigen::Vector3d & getPositions () const
 
void resetPositions ()
 
void setVelocity (std::size_t _index, double _velocity)
 
double getVelocity (std::size_t _index) const
 
void setVelocities (const Eigen::Vector3d &_velocities)
 
const Eigen::Vector3d & getVelocities () const
 
void resetVelocities ()
 
void setAcceleration (std::size_t _index, double _acceleration)
 
double getAcceleration (std::size_t _index) const
 
void setAccelerations (const Eigen::Vector3d &_accelerations)
 
const Eigen::Vector3d & getAccelerations () const
 
const Eigen::Vector3d & getPartialAccelerations () const
 Get the Eta term of this PointMass. More...
 
void resetAccelerations ()
 
void setForce (std::size_t _index, double _force)
 
double getForce (std::size_t _index)
 
void setForces (const Eigen::Vector3d &_forces)
 
const Eigen::Vector3d & getForces () const
 
void resetForces ()
 
void setVelocityChange (std::size_t _index, double _velocityChange)
 
double getVelocityChange (std::size_t _index)
 
void resetVelocityChanges ()
 
void setConstraintImpulse (std::size_t _index, double _impulse)
 
double getConstraintImpulse (std::size_t _index)
 
void resetConstraintImpulses ()
 
void integratePositions (double _dt)
 
void integrateVelocities (double _dt)
 
void addExtForce (const Eigen::Vector3d &_force, bool _isForceLocal=false)
 Add linear Cartesian force to this node. More...
 
void clearExtForce ()
 
void setConstraintImpulse (const Eigen::Vector3d &_constImp, bool _isLocal=false)
 Set constraint impulse. More...
 
void addConstraintImpulse (const Eigen::Vector3d &_constImp, bool _isLocal=false)
 Add constraint impulse. More...
 
void clearConstraintImpulse ()
 Clear constraint impulse. More...
 
Eigen::Vector3d getConstraintImpulses () const
 Get constraint impulse. More...
 
void setRestingPosition (const Eigen::Vector3d &_p)
 
const Eigen::Vector3d & getRestingPosition () const
 
const Eigen::Vector3d & getLocalPosition () const
 
const Eigen::Vector3d & getWorldPosition () const
 
Eigen::Matrix< double, 3, Eigen::Dynamic > getBodyJacobian ()
 
Eigen::Matrix< double, 3, Eigen::Dynamic > getWorldJacobian ()
 
const Eigen::Vector3d & getBodyVelocityChange () const
 Return velocity change due to impulse. More...
 
SoftBodyNodegetParentSoftBodyNode ()
 
const SoftBodyNodegetParentSoftBodyNode () const
 
const Eigen::Vector3d & getBodyVelocity () const
 The number of the generalized coordinates by which this node is affected. More...
 
Eigen::Vector3d getWorldVelocity () const
 Get the generalized velocity at the position of this point mass where the velocity is expressed in the world frame. More...
 
const Eigen::Vector3d & getBodyAcceleration () const
 Get the generalized acceleration at the position of this point mass where the acceleration is expressed in the parent soft body node frame. More...
 
Eigen::Vector3d getWorldAcceleration () const
 Get the generalized acceleration at the position of this point mass where the acceleration is expressed in the world frame. More...
 

Protected Member Functions

 PointMass (SoftBodyNode *_softBodyNode)
 Constructor used by SoftBodyNode. More...
 
void init ()
 
void sendDestructionNotification () const
 Send a destruction notification to all Observers. More...
 
void addObserver (Observer *_observer) const
 Add an Observer to the list of Observers. More...
 
void removeObserver (Observer *_observer) const
 Remove an Observer from the list of Observers. More...
 
Recursive dynamics routines
void updateTransform () const
 Update transformation. More...
 
void updateVelocity () const
 Update body velocity. More...
 
void updatePartialAcceleration () const
 Update partial body acceleration due to parent joint's velocity. More...
 
void updateArtInertiaFD (double _timeStep) const
 Update articulated body inertia. More...
 
void updateBiasForceFD (double _dt, const Eigen::Vector3d &_gravity)
 Update bias force associated with the articulated body inertia. More...
 
void updateBiasImpulseFD ()
 Update bias impulse associated with the articulated body inertia. More...
 
void updateAccelerationID () const
 Update body acceleration with the partial body acceleration. More...
 
void updateAccelerationFD ()
 Update body acceleration. Forward dynamics routine. More...
 
void updateVelocityChangeFD ()
 Update body velocity change. More...
 
void updateTransmittedForceID (const Eigen::Vector3d &_gravity, bool _withExternalForces=false)
 Update body force. Inverse dynamics routine. More...
 
void updateTransmittedForce ()
 Update body force. Forward dynamics routine. More...
 
void updateTransmittedImpulse ()
 Update body force. Impulse-based forward dynamics routine. More...
 
void updateJointForceID (double _timeStep, double _withDampingForces, double _withSpringForces)
 Update the joint force. Inverse dynamics routine. More...
 
void updateConstrainedTermsFD (double _timeStep)
 Update constrained terms due to the constraint impulses. More...
 
Equations of motion related routines
void updateMassMatrix ()
 
void aggregateMassMatrix (Eigen::MatrixXd &_MCol, int _col)
 
void aggregateAugMassMatrix (Eigen::MatrixXd &_MCol, int _col, double _timeStep)
 
void updateInvMassMatrix ()
 
void updateInvAugMassMatrix ()
 
void aggregateInvMassMatrix (Eigen::MatrixXd &_MInvCol, int _col)
 
void aggregateInvAugMassMatrix (Eigen::MatrixXd &_MInvCol, int _col, double _timeStep)
 
void aggregateGravityForceVector (Eigen::VectorXd &_g, const Eigen::Vector3d &_gravity)
 
void updateCombinedVector ()
 
void aggregateCombinedVector (Eigen::VectorXd &_Cg, const Eigen::Vector3d &_gravity)
 
void aggregateExternalForces (Eigen::VectorXd &_Fext)
 Aggregate the external forces mFext in the generalized coordinates recursively. More...
 

Protected Attributes

Eigen::Vector3d mM_dV
 
Eigen::Vector3d mM_F
 
Eigen::Vector3d mBiasForceForInvMeta
 
Eigen::Vector3d mG_F
 
Eigen::Vector3d mCg_dV
 
Eigen::Vector3d mCg_F
 
SoftBodyNodemParentSoftBodyNode
 SoftBodyNode that this PointMass belongs to. More...
 
std::size_t mIndex
 Index of this PointMass within the SoftBodyNode. More...
 
Eigen::Vector3d mPositionDeriv
 Derivatives w.r.t. an arbitrary scalr variable. More...
 
Eigen::Vector3d mVelocitiesDeriv
 Derivatives w.r.t. an arbitrary scalr variable. More...
 
Eigen::Vector3d mAccelerationsDeriv
 Derivatives w.r.t. an arbitrary scalr variable. More...
 
Eigen::Vector3d mForcesDeriv
 Derivatives w.r.t. an arbitrary scalr variable. More...
 
Eigen::Vector3d mVelocityChanges
 Change of generalized velocity. More...
 
Eigen::Vector3d mConstraintImpulses
 Generalized constraint impulse. More...
 
Eigen::Vector3d mW
 Current position viewed in world frame. More...
 
Eigen::Vector3d mX
 Current position viewed in parent soft body node frame. More...
 
Eigen::Vector3d mV
 Current velocity viewed in parent soft body node frame. More...
 
Eigen::Vector3d mEta
 Partial Acceleration of this PointMass. More...
 
Eigen::Vector3d mAlpha
 
Eigen::Vector3d mBeta
 
Eigen::Vector3d mA
 Current acceleration viewed in parent body node frame. More...
 
Eigen::Vector3d mF
 
double mPsi
 
double mImplicitPsi
 
double mPi
 
double mImplicitPi
 
Eigen::Vector3d mB
 Bias force. More...
 
Eigen::Vector3d mFext
 External force. More...
 
std::vector< std::size_t > mDependentGenCoordIndices
 A increasingly sorted list of dependent dof indices. More...
 
bool mIsColliding
 Whether the node is currently in collision with another node. More...
 
Eigen::Vector3d mDelV
 Velocity change due to constraint impulse. More...
 
Eigen::Vector3d mImpB
 Impulsive bias force due to external impulsive force exerted on bodies of the parent skeleton. More...
 
Eigen::Vector3d mImpAlpha
 Cache data for mImpB. More...
 
Eigen::Vector3d mImpBeta
 Cache data for mImpB. More...
 
Eigen::Vector3d mImpF
 Generalized impulsive body force w.r.t. body frame. More...
 
PointMassNotifiermNotifier
 
std::set< Observer * > mObservers
 List of current Observers. More...
 

Friends

class SoftBodyNode
 

Constructor & Destructor Documentation

◆ ~PointMass()

dart::dynamics::PointMass::~PointMass ( )
virtual

Default destructor.

◆ PointMass()

dart::dynamics::PointMass::PointMass ( SoftBodyNode _softBodyNode)
explicitprotected

Constructor used by SoftBodyNode.

Member Function Documentation

◆ addConnectedPointMass()

void dart::dynamics::PointMass::addConnectedPointMass ( PointMass _pointMass)

◆ addConstraintImpulse()

void dart::dynamics::PointMass::addConstraintImpulse ( const Eigen::Vector3d &  _constImp,
bool  _isLocal = false 
)

Add constraint impulse.

◆ addExtForce()

void dart::dynamics::PointMass::addExtForce ( const Eigen::Vector3d &  _force,
bool  _isForceLocal = false 
)

Add linear Cartesian force to this node.

Parameters
[in]_forceExternal force.
[in]_isForceLocalTrue if _force's reference frame is of the parent soft body node. False if _force's reference frame is of the world.

◆ addObserver()

void dart::common::Subject::addObserver ( Observer _observer) const
protectedinherited

Add an Observer to the list of Observers.

◆ aggregateAugMassMatrix()

void dart::dynamics::PointMass::aggregateAugMassMatrix ( Eigen::MatrixXd &  _MCol,
int  _col,
double  _timeStep 
)
protected

◆ aggregateCombinedVector()

void dart::dynamics::PointMass::aggregateCombinedVector ( Eigen::VectorXd &  _Cg,
const Eigen::Vector3d &  _gravity 
)
protected

◆ aggregateExternalForces()

void dart::dynamics::PointMass::aggregateExternalForces ( Eigen::VectorXd &  _Fext)
protected

Aggregate the external forces mFext in the generalized coordinates recursively.

◆ aggregateGravityForceVector()

void dart::dynamics::PointMass::aggregateGravityForceVector ( Eigen::VectorXd &  _g,
const Eigen::Vector3d &  _gravity 
)
protected

◆ aggregateInvAugMassMatrix()

void dart::dynamics::PointMass::aggregateInvAugMassMatrix ( Eigen::MatrixXd &  _MInvCol,
int  _col,
double  _timeStep 
)
protected

◆ aggregateInvMassMatrix()

void dart::dynamics::PointMass::aggregateInvMassMatrix ( Eigen::MatrixXd &  _MInvCol,
int  _col 
)
protected

◆ aggregateMassMatrix()

void dart::dynamics::PointMass::aggregateMassMatrix ( Eigen::MatrixXd &  _MCol,
int  _col 
)
protected

◆ clearConstraintImpulse()

void dart::dynamics::PointMass::clearConstraintImpulse ( )

Clear constraint impulse.

◆ clearExtForce()

void dart::dynamics::PointMass::clearExtForce ( )

◆ getAcceleration()

double dart::dynamics::PointMass::getAcceleration ( std::size_t  _index) const

◆ getAccelerations()

const Vector3d & dart::dynamics::PointMass::getAccelerations ( ) const

◆ getBodyAcceleration()

const Eigen::Vector3d & dart::dynamics::PointMass::getBodyAcceleration ( ) const

Get the generalized acceleration at the position of this point mass where the acceleration is expressed in the parent soft body node frame.

◆ getBodyJacobian()

Eigen::Matrix< double, 3, Eigen::Dynamic > dart::dynamics::PointMass::getBodyJacobian ( )

◆ getBodyVelocity()

const Eigen::Vector3d & dart::dynamics::PointMass::getBodyVelocity ( ) const

The number of the generalized coordinates by which this node is affected.

Return a generalized coordinate index from the array index (< getNumDependentDofs). Get the generalized velocity at the position of this point mass where the velocity is expressed in the parent soft body node frame.

◆ getBodyVelocityChange()

const Eigen::Vector3d & dart::dynamics::PointMass::getBodyVelocityChange ( ) const

Return velocity change due to impulse.

◆ getConnectedPointMass() [1/2]

PointMass * dart::dynamics::PointMass::getConnectedPointMass ( std::size_t  _idx)

◆ getConnectedPointMass() [2/2]

const PointMass * dart::dynamics::PointMass::getConnectedPointMass ( std::size_t  _idx) const

◆ getConstraintImpulse()

double dart::dynamics::PointMass::getConstraintImpulse ( std::size_t  _index)

◆ getConstraintImpulses()

Eigen::Vector3d dart::dynamics::PointMass::getConstraintImpulses ( ) const

Get constraint impulse.

◆ getForce()

double dart::dynamics::PointMass::getForce ( std::size_t  _index)

◆ getForces()

const Vector3d & dart::dynamics::PointMass::getForces ( ) const

◆ getImplicitPi()

double dart::dynamics::PointMass::getImplicitPi ( ) const

◆ getImplicitPsi()

double dart::dynamics::PointMass::getImplicitPsi ( ) const

◆ getIndexInSoftBodyNode()

std::size_t dart::dynamics::PointMass::getIndexInSoftBodyNode ( ) const

◆ getLocalPosition()

const Eigen::Vector3d & dart::dynamics::PointMass::getLocalPosition ( ) const

◆ getMass()

double dart::dynamics::PointMass::getMass ( ) const

◆ getNumConnectedPointMasses()

std::size_t dart::dynamics::PointMass::getNumConnectedPointMasses ( ) const

◆ getNumDofs()

std::size_t dart::dynamics::PointMass::getNumDofs ( ) const

◆ getParentSoftBodyNode() [1/2]

SoftBodyNode * dart::dynamics::PointMass::getParentSoftBodyNode ( )

◆ getParentSoftBodyNode() [2/2]

const SoftBodyNode * dart::dynamics::PointMass::getParentSoftBodyNode ( ) const

◆ getPartialAccelerations()

const Vector3d & dart::dynamics::PointMass::getPartialAccelerations ( ) const

Get the Eta term of this PointMass.

◆ getPi()

double dart::dynamics::PointMass::getPi ( ) const

◆ getPosition()

double dart::dynamics::PointMass::getPosition ( std::size_t  _index) const

◆ getPositions()

const Vector3d & dart::dynamics::PointMass::getPositions ( ) const

◆ getPsi()

double dart::dynamics::PointMass::getPsi ( ) const

◆ getRestingPosition()

const Eigen::Vector3d & dart::dynamics::PointMass::getRestingPosition ( ) const

◆ getState() [1/2]

PointMass::State & dart::dynamics::PointMass::getState ( )

State of this PointMass.

◆ getState() [2/2]

const PointMass::State & dart::dynamics::PointMass::getState ( ) const

State of this PointMass.

◆ getVelocities()

const Vector3d & dart::dynamics::PointMass::getVelocities ( ) const

◆ getVelocity()

double dart::dynamics::PointMass::getVelocity ( std::size_t  _index) const

◆ getVelocityChange()

double dart::dynamics::PointMass::getVelocityChange ( std::size_t  _index)

◆ getWorldAcceleration()

Eigen::Vector3d dart::dynamics::PointMass::getWorldAcceleration ( ) const

Get the generalized acceleration at the position of this point mass where the acceleration is expressed in the world frame.

◆ getWorldJacobian()

Eigen::Matrix< double, 3, Eigen::Dynamic > dart::dynamics::PointMass::getWorldJacobian ( )

◆ getWorldPosition()

const Eigen::Vector3d & dart::dynamics::PointMass::getWorldPosition ( ) const

◆ getWorldVelocity()

Eigen::Vector3d dart::dynamics::PointMass::getWorldVelocity ( ) const

Get the generalized velocity at the position of this point mass where the velocity is expressed in the world frame.

◆ init()

void dart::dynamics::PointMass::init ( )
protected

◆ integratePositions()

void dart::dynamics::PointMass::integratePositions ( double  _dt)

◆ integrateVelocities()

void dart::dynamics::PointMass::integrateVelocities ( double  _dt)

◆ isColliding()

bool dart::dynamics::PointMass::isColliding ( )

Return whether this point mass is set to be colliding with other objects.

Returns
True if this point mass is colliding.

◆ removeObserver()

void dart::common::Subject::removeObserver ( Observer _observer) const
protectedinherited

Remove an Observer from the list of Observers.

◆ resetAccelerations()

void dart::dynamics::PointMass::resetAccelerations ( )

◆ resetConstraintImpulses()

void dart::dynamics::PointMass::resetConstraintImpulses ( )

◆ resetForces()

void dart::dynamics::PointMass::resetForces ( )

◆ resetPositions()

void dart::dynamics::PointMass::resetPositions ( )

◆ resetVelocities()

void dart::dynamics::PointMass::resetVelocities ( )

◆ resetVelocityChanges()

void dart::dynamics::PointMass::resetVelocityChanges ( )

◆ sendDestructionNotification()

void dart::common::Subject::sendDestructionNotification ( ) const
protectedinherited

Send a destruction notification to all Observers.

This will cause all Observers to behave as if this Subject has been permanently deleted, so it should only be called when that behavior is desired.

◆ setAcceleration()

void dart::dynamics::PointMass::setAcceleration ( std::size_t  _index,
double  _acceleration 
)

◆ setAccelerations()

void dart::dynamics::PointMass::setAccelerations ( const Eigen::Vector3d &  _accelerations)

◆ setColliding()

void dart::dynamics::PointMass::setColliding ( bool  _isColliding)

Set whether this point mass is colliding with other objects.

Note that this status is set by the constraint solver during dynamics simulation but not by collision detector.

Parameters
[in]Trueif this point mass is colliding.

◆ setConstraintImpulse() [1/2]

void dart::dynamics::PointMass::setConstraintImpulse ( const Eigen::Vector3d &  _constImp,
bool  _isLocal = false 
)

Set constraint impulse.

◆ setConstraintImpulse() [2/2]

void dart::dynamics::PointMass::setConstraintImpulse ( std::size_t  _index,
double  _impulse 
)

◆ setForce()

void dart::dynamics::PointMass::setForce ( std::size_t  _index,
double  _force 
)

◆ setForces()

void dart::dynamics::PointMass::setForces ( const Eigen::Vector3d &  _forces)

◆ setMass()

void dart::dynamics::PointMass::setMass ( double  _mass)

◆ setPosition()

void dart::dynamics::PointMass::setPosition ( std::size_t  _index,
double  _position 
)

◆ setPositions()

void dart::dynamics::PointMass::setPositions ( const Eigen::Vector3d &  _positions)

◆ setRestingPosition()

void dart::dynamics::PointMass::setRestingPosition ( const Eigen::Vector3d &  _p)

◆ setVelocities()

void dart::dynamics::PointMass::setVelocities ( const Eigen::Vector3d &  _velocities)

◆ setVelocity()

void dart::dynamics::PointMass::setVelocity ( std::size_t  _index,
double  _velocity 
)

◆ setVelocityChange()

void dart::dynamics::PointMass::setVelocityChange ( std::size_t  _index,
double  _velocityChange 
)

◆ updateAccelerationFD()

void dart::dynamics::PointMass::updateAccelerationFD ( )
protected

Update body acceleration. Forward dynamics routine.

◆ updateAccelerationID()

void dart::dynamics::PointMass::updateAccelerationID ( ) const
protected

Update body acceleration with the partial body acceleration.

◆ updateArtInertiaFD()

void dart::dynamics::PointMass::updateArtInertiaFD ( double  _timeStep) const
protected

Update articulated body inertia.

Forward dynamics routine.

Parameters
[in]_timeStepRquired for implicit joint stiffness and damping.

◆ updateBiasForceFD()

void dart::dynamics::PointMass::updateBiasForceFD ( double  _dt,
const Eigen::Vector3d &  _gravity 
)
protected

Update bias force associated with the articulated body inertia.

Forward dynamics routine.

Parameters
[in]_gravityVector of gravitational acceleration
[in]_timeStepRquired for implicit joint stiffness and damping.

◆ updateBiasImpulseFD()

void dart::dynamics::PointMass::updateBiasImpulseFD ( )
protected

Update bias impulse associated with the articulated body inertia.

Impulse-based forward dynamics routine.

◆ updateCombinedVector()

void dart::dynamics::PointMass::updateCombinedVector ( )
protected

◆ updateConstrainedTermsFD()

void dart::dynamics::PointMass::updateConstrainedTermsFD ( double  _timeStep)
protected

Update constrained terms due to the constraint impulses.

Foward dynamics routine.

◆ updateInvAugMassMatrix()

void dart::dynamics::PointMass::updateInvAugMassMatrix ( )
protected

◆ updateInvMassMatrix()

void dart::dynamics::PointMass::updateInvMassMatrix ( )
protected

◆ updateJointForceID()

void dart::dynamics::PointMass::updateJointForceID ( double  _timeStep,
double  _withDampingForces,
double  _withSpringForces 
)
protected

Update the joint force. Inverse dynamics routine.

◆ updateMassMatrix()

void dart::dynamics::PointMass::updateMassMatrix ( )
protected

◆ updatePartialAcceleration()

void dart::dynamics::PointMass::updatePartialAcceleration ( ) const
protected

Update partial body acceleration due to parent joint's velocity.

◆ updateTransform()

void dart::dynamics::PointMass::updateTransform ( ) const
protected

Update transformation.

◆ updateTransmittedForce()

void dart::dynamics::PointMass::updateTransmittedForce ( )
protected

Update body force. Forward dynamics routine.

◆ updateTransmittedForceID()

void dart::dynamics::PointMass::updateTransmittedForceID ( const Eigen::Vector3d &  _gravity,
bool  _withExternalForces = false 
)
protected

Update body force. Inverse dynamics routine.

◆ updateTransmittedImpulse()

void dart::dynamics::PointMass::updateTransmittedImpulse ( )
protected

Update body force. Impulse-based forward dynamics routine.

◆ updateVelocity()

void dart::dynamics::PointMass::updateVelocity ( ) const
protected

Update body velocity.

◆ updateVelocityChangeFD()

void dart::dynamics::PointMass::updateVelocityChangeFD ( )
protected

Update body velocity change.

Impluse-based forward dynamics routine.

Friends And Related Function Documentation

◆ SoftBodyNode

friend class SoftBodyNode
friend

Member Data Documentation

◆ mA

Eigen::Vector3d dart::dynamics::PointMass::mA
mutableprotected

Current acceleration viewed in parent body node frame.

◆ mAccelerationsDeriv

Eigen::Vector3d dart::dynamics::PointMass::mAccelerationsDeriv
protected

Derivatives w.r.t. an arbitrary scalr variable.

◆ mAlpha

Eigen::Vector3d dart::dynamics::PointMass::mAlpha
protected

◆ mB

Eigen::Vector3d dart::dynamics::PointMass::mB
protected

Bias force.

◆ mBeta

Eigen::Vector3d dart::dynamics::PointMass::mBeta
protected

◆ mBiasForceForInvMeta

Eigen::Vector3d dart::dynamics::PointMass::mBiasForceForInvMeta
protected

◆ mCg_dV

Eigen::Vector3d dart::dynamics::PointMass::mCg_dV
protected

◆ mCg_F

Eigen::Vector3d dart::dynamics::PointMass::mCg_F
protected

◆ mConstraintImpulses

Eigen::Vector3d dart::dynamics::PointMass::mConstraintImpulses
protected

Generalized constraint impulse.

◆ mDelV

Eigen::Vector3d dart::dynamics::PointMass::mDelV
protected

Velocity change due to constraint impulse.

◆ mDependentGenCoordIndices

std::vector<std::size_t> dart::dynamics::PointMass::mDependentGenCoordIndices
protected

A increasingly sorted list of dependent dof indices.

◆ mEta

Eigen::Vector3d dart::dynamics::PointMass::mEta
mutableprotected

Partial Acceleration of this PointMass.

◆ mF

Eigen::Vector3d dart::dynamics::PointMass::mF
protected

◆ mFext

Eigen::Vector3d dart::dynamics::PointMass::mFext
protected

External force.

◆ mForcesDeriv

Eigen::Vector3d dart::dynamics::PointMass::mForcesDeriv
protected

Derivatives w.r.t. an arbitrary scalr variable.

◆ mG_F

Eigen::Vector3d dart::dynamics::PointMass::mG_F
protected

◆ mImpAlpha

Eigen::Vector3d dart::dynamics::PointMass::mImpAlpha
protected

Cache data for mImpB.

◆ mImpB

Eigen::Vector3d dart::dynamics::PointMass::mImpB
protected

Impulsive bias force due to external impulsive force exerted on bodies of the parent skeleton.

◆ mImpBeta

Eigen::Vector3d dart::dynamics::PointMass::mImpBeta
protected

Cache data for mImpB.

◆ mImpF

Eigen::Vector3d dart::dynamics::PointMass::mImpF
protected

Generalized impulsive body force w.r.t. body frame.

◆ mImplicitPi

double dart::dynamics::PointMass::mImplicitPi
mutableprotected

◆ mImplicitPsi

double dart::dynamics::PointMass::mImplicitPsi
mutableprotected

◆ mIndex

std::size_t dart::dynamics::PointMass::mIndex
protected

Index of this PointMass within the SoftBodyNode.

◆ mIsColliding

bool dart::dynamics::PointMass::mIsColliding
protected

Whether the node is currently in collision with another node.

◆ mM_dV

Eigen::Vector3d dart::dynamics::PointMass::mM_dV
protected

◆ mM_F

Eigen::Vector3d dart::dynamics::PointMass::mM_F
protected

◆ mNotifier

PointMassNotifier* dart::dynamics::PointMass::mNotifier
protected

◆ mObservers

std::set<Observer*> dart::common::Subject::mObservers
mutableprotectedinherited

List of current Observers.

◆ mParentSoftBodyNode

SoftBodyNode* dart::dynamics::PointMass::mParentSoftBodyNode
protected

SoftBodyNode that this PointMass belongs to.

◆ mPi

double dart::dynamics::PointMass::mPi
mutableprotected

◆ mPositionDeriv

Eigen::Vector3d dart::dynamics::PointMass::mPositionDeriv
protected

Derivatives w.r.t. an arbitrary scalr variable.

◆ mPsi

double dart::dynamics::PointMass::mPsi
mutableprotected

◆ mV

Eigen::Vector3d dart::dynamics::PointMass::mV
mutableprotected

Current velocity viewed in parent soft body node frame.

◆ mVelocitiesDeriv

Eigen::Vector3d dart::dynamics::PointMass::mVelocitiesDeriv
protected

Derivatives w.r.t. an arbitrary scalr variable.

◆ mVelocityChanges

Eigen::Vector3d dart::dynamics::PointMass::mVelocityChanges
protected

Change of generalized velocity.

◆ mW

Eigen::Vector3d dart::dynamics::PointMass::mW
mutableprotected

Current position viewed in world frame.

◆ mX

Eigen::Vector3d dart::dynamics::PointMass::mX
mutableprotected

Current position viewed in parent soft body node frame.