8 #ifndef __RDL_SPATIAL_MOMENTUM_HP__ 9 #define __RDL_SPATIAL_MOMENTUM_HP__ 101 set(inertia, vector);
112 inertia.
getReferenceFrame()->checkReferenceFramesMatch(vector.getReferenceFrame());
174 typedef std::vector<SpatialMomentum, Eigen::aligned_allocator<SpatialMomentum>>
SpatialMomentumV;
178 #endif //__RDL_SPATIAL_MOMENTUM_HP__
ReferenceFramePtr getReferenceFrame() const
Get a pointer to the reference frame this FrameObject is expressed in.
EIGEN_STRONG_INLINE double & ly()
SpatialMomentum(ReferenceFramePtr referenceFrame, const ForceVector &forceVector)
Constructor.
SpatialMomentum(const SpatialInertia &inertia, const SpatialMotion &vector)
Constructor. Momentum is computed from SpatialInertia and SpatialMotion by . Frame checks are perform...
std::vector< SpatialMomentum, Eigen::aligned_allocator< SpatialMomentum > > SpatialMomentumV
SpatialMomentum(ReferenceFramePtr referenceFrame)
Constructor.
ReferenceFramePtr referenceFrame
A ForceVector is a SpatialVector containing 3 moments and 3 linear forces.
EIGEN_STRONG_INLINE double & kz()
void computeMomentum(const RigidBodyInertia &I, const MotionVector &v)
Computes momentum from inertia and velocity.
void checkReferenceFramesMatch(const FrameObject *frameObject) const
Check if two ReferenceFrameHolders hold the same ReferenceFrame.
A SpatialMomentum is a Momentum expressed in a RobotDynamics::ReferenceFrame. The angular portion of ...
std::shared_ptr< ReferenceFrame > ReferenceFramePtr
Momentum is mass/inertia multiplied by velocity.
This class stores a bodies mass, center of mass, and inertia information. The inertia elements are st...
A SpatialMotion vector is a MotionVector with a RobotDynamics::ReferenceFrame it is expressed in...
SpatialMomentum(ReferenceFramePtr referenceFrame, const double kx, const double ky, const double kz, const double lx, const double ly, const double lz)
Costructor.
EIGEN_STRONG_INLINE double & kx()
A Math::SpatialInertia is a RigidBodyInertia explicitly expressed in a RobotDynamics::ReferenceFrame...
EIGEN_STRONG_INLINE double operator*(const MotionVector &vector)
Operator for computing kinetic energy. With momentum, and Math::MotionVector, this performs perform...
EIGEN_STRONG_INLINE double & lx()
SpatialMomentum(ReferenceFramePtr referenceFrame, const Vector3d &k, const Vector3d l)
Constructor.
TransformableGeometricObject * getTransformableGeometricObject()
Pure virtual method that FrameObjects are required to implement so the FrameObject::changeFrame metho...
void setIncludingFrame(ReferenceFramePtr referenceFrame, const RigidBodyInertia &inertia, const MotionVector &vector)
Set a momentum by multiplying the supplied motion vector by the supplied inertia. Set the stored Robo...
double operator*(const SpatialMotion &vector)
Operator that returns the kinetic energy. Given a momentum, and motion vector , the resulting kineti...
EIGEN_STRONG_INLINE double & lz()
SpatialMomentum()
Constructor. RobotDynamics::ReferenceFrame is initialized to nullptr.
SpatialMomentum(const SpatialMomentum &SpatialMomentum)
Copy constructor.
EIGEN_STRONG_INLINE double & ky()
An interface that objects with a ReferenceFrame extend to inherit the FrameObject::changeFrame method...
Namespace for all structures of the RobotDynamics library.
EIGEN_STRONG_INLINE void set(const ForceVector &f)
Setter.
void setIncludingFrame(ReferenceFramePtr referenceFrame, const ForceVector &f)
Constructor.