|
virtual | ~PointMass () |
| Default destructor.
|
|
State & | getState () |
| State of this PointMass.
|
|
const State & | getState () const |
| State of this PointMass.
|
|
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 |
|
PointMass * | getConnectedPointMass (std::size_t _idx) |
|
const PointMass * | getConnectedPointMass (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.
|
|
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.
|
|
void | addConstraintImpulse (const Eigen::Vector3d &_constImp, bool _isLocal=false) |
| Add constraint impulse.
|
|
void | clearConstraintImpulse () |
| Clear constraint impulse.
|
|
Eigen::Vector3d | getConstraintImpulses () const |
| Get constraint impulse.
|
|
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.
|
|
SoftBodyNode * | getParentSoftBodyNode () |
|
const SoftBodyNode * | getParentSoftBodyNode () 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...
|
|
virtual | ~Subject () |
| Destructor will notify all Observers that it is destructing.
|
|
|
| PointMass (SoftBodyNode *_softBodyNode) |
| Constructor used by SoftBodyNode.
|
|
void | init () |
|
|
void | updateTransform () const |
| Update transformation.
|
|
void | updateVelocity () const |
| Update body velocity.
|
|
void | updatePartialAcceleration () const |
| Update partial body acceleration due to parent joint's velocity.
|
|
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.
|
|
void | updateAccelerationFD () |
| Update body acceleration. Forward dynamics routine.
|
|
void | updateVelocityChangeFD () |
| Update body velocity change. More...
|
|
void | updateTransmittedForceID (const Eigen::Vector3d &_gravity, bool _withExternalForces=false) |
| Update body force. Inverse dynamics routine.
|
|
void | updateTransmittedForce () |
| Update body force. Forward dynamics routine.
|
|
void | updateTransmittedImpulse () |
| Update body force. Impulse-based forward dynamics routine.
|
|
void | updateJointForceID (double _timeStep, double _withDampingForces, double _withSpringForces) |
| Update the joint force. Inverse dynamics routine.
|
|
void | updateConstrainedTermsFD (double _timeStep) |
| Update constrained terms due to the constraint impulses. More...
|
|
|
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...
|
|
void | sendDestructionNotification () const |
| Send a destruction notification to all Observers. More...
|
|
void | addObserver (Observer *_observer) const |
| Add an Observer to the list of Observers.
|
|
void | removeObserver (Observer *_observer) const |
| Remove an Observer from the list of Observers.
|
|
|
Eigen::Vector3d | mM_dV |
|
Eigen::Vector3d | mM_F |
|
Eigen::Vector3d | mBiasForceForInvMeta |
|
Eigen::Vector3d | mG_F |
|
Eigen::Vector3d | mCg_dV |
|
Eigen::Vector3d | mCg_F |
|
SoftBodyNode * | mParentSoftBodyNode |
| SoftBodyNode that this PointMass belongs to.
|
|
std::size_t | mIndex |
| Index of this PointMass within the SoftBodyNode.
|
|
Eigen::Vector3d | mPositionDeriv |
| Derivatives w.r.t. an arbitrary scalr variable.
|
|
Eigen::Vector3d | mVelocitiesDeriv |
| Derivatives w.r.t. an arbitrary scalr variable.
|
|
Eigen::Vector3d | mAccelerationsDeriv |
| Derivatives w.r.t. an arbitrary scalr variable.
|
|
Eigen::Vector3d | mForcesDeriv |
| Derivatives w.r.t. an arbitrary scalr variable.
|
|
Eigen::Vector3d | mVelocityChanges |
| Change of generalized velocity.
|
|
Eigen::Vector3d | mConstraintImpulses |
| Generalized constraint impulse.
|
|
Eigen::Vector3d | mW |
| Current position viewed in world frame.
|
|
Eigen::Vector3d | mX |
| Current position viewed in parent soft body node frame.
|
|
Eigen::Vector3d | mV |
| Current velocity viewed in parent soft body node frame.
|
|
Eigen::Vector3d | mEta |
| Partial Acceleration of this PointMass.
|
|
Eigen::Vector3d | mAlpha |
|
Eigen::Vector3d | mBeta |
|
Eigen::Vector3d | mA |
| Current acceleration viewed in parent body node frame.
|
|
Eigen::Vector3d | mF |
|
double | mPsi |
|
double | mImplicitPsi |
|
double | mPi |
|
double | mImplicitPi |
|
Eigen::Vector3d | mB |
| Bias force.
|
|
Eigen::Vector3d | mFext |
| External force.
|
|
std::vector< std::size_t > | mDependentGenCoordIndices |
| A increasingly sorted list of dependent dof indices.
|
|
bool | mIsColliding |
| Whether the node is currently in collision with another node.
|
|
Eigen::Vector3d | mDelV |
| Velocity change due to constraint impulse.
|
|
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.
|
|
Eigen::Vector3d | mImpBeta |
| Cache data for mImpB.
|
|
Eigen::Vector3d | mImpF |
| Generalized impulsive body force w.r.t. body frame.
|
|
PointMassNotifier * | mNotifier |
|
std::set< Observer * > | mObservers |
| List of current Observers.
|
|