Drake

A class to hold a set of forces applied to a MultibodyTree system. More...
#include <drake/multibody/tree/multibody_forces.h>
Public Types  
template<typename U >  
using  MultibodyPlantSurrogate = internal::MultibodyTreeSystem< U > 
Public Member Functions  
MultibodyForces (const MultibodyPlantSurrogate< T > &plant)  
Constructs a force object to store a set of forces to be applied to the multibody model for plant . More...  
MultibodyForces (const internal::MultibodyTree< T > &model)  
(Advanced) Tree overload. More...  
MultibodyForces< T > &  SetZero () 
Sets this to store zero forces (no applied forces). More...  
int  num_bodies () const 
Returns the number of bodies for which this force object applies. More...  
int  num_velocities () const 
Returns the number of generalized velocities for the model to which these forces apply. More...  
const VectorX< T > &  generalized_forces () const 
(Advanced) Returns a constant reference to the vector of generalized forces stored by this forces object. More...  
VectorX< T > &  mutable_generalized_forces () 
(Advanced) Mutable version of generalized_forces(). More...  
const std::vector< SpatialForce< T > > &  body_forces () const 
(Advanced) Returns a constant reference to the vector of spatial body forces F_BBo_W on each body B in the model, at the body's frame origin Bo , expressed in the world frame W. More...  
std::vector< SpatialForce< T > > &  mutable_body_forces () 
(Advanced) Mutable version of body_forces(). More...  
void  AddInForces (const MultibodyForces< T > &addend) 
Adds into this the force contribution stored in addend . More...  
bool  CheckHasRightSizeForModel (const MultibodyPlantSurrogate< T > &plant) const 
Utility that checks that the forces stored by this object have the proper sizes to represent the set of forces for the given plant . More...  
bool  CheckHasRightSizeForModel (const internal::MultibodyTree< T > &model) const 
(Advanced) Tree overload. More...  
Implements CopyConstructible, CopyAssignable, MoveConstructible, MoveAssignable  
MultibodyForces (const MultibodyForces &)=default  
MultibodyForces &  operator= (const MultibodyForces &)=default 
MultibodyForces (MultibodyForces &&)=default  
MultibodyForces &  operator= (MultibodyForces &&)=default 
A class to hold a set of forces applied to a MultibodyTree system.
Forces can include generalized forces as well as body spatial forces.
T  The scalar type. Must be a valid Eigen scalar. 
Instantiated templates for the following kinds of T's are provided:
They are already available to link against in the containing library. No other values for T are currently supported.

default 

default 

explicit 
Constructs a force object to store a set of forces to be applied to the multibody model for plant
.
Forces are initialized to zero, meaning no forces are applied. plant
must have been already finalized with MultibodyPlant::Finalize() or this constructor will abort.

explicit 
(Advanced) Tree overload.
void AddInForces  (  const MultibodyForces< T > &  addend  ) 
Adds into this
the force contribution stored in addend
.
const std::vector<SpatialForce<T> >& body_forces  (  )  const 
(Advanced) Returns a constant reference to the vector of spatial body forces F_BBo_W
on each body B in the model, at the body's frame origin Bo
, expressed in the world frame W.
bool CheckHasRightSizeForModel  (  const MultibodyPlantSurrogate< T > &  plant  )  const 
Utility that checks that the forces stored by this
object have the proper sizes to represent the set of forces for the given plant
.
this
forces object has the proper sizes for the given plant
. bool CheckHasRightSizeForModel  (  const internal::MultibodyTree< T > &  model  )  const 
(Advanced) Tree overload.
const VectorX<T>& generalized_forces  (  )  const 
(Advanced) Returns a constant reference to the vector of generalized forces stored by this
forces object.
std::vector<SpatialForce<T> >& mutable_body_forces  (  ) 
(Advanced) Mutable version of body_forces().
VectorX<T>& mutable_generalized_forces  (  ) 
(Advanced) Mutable version of generalized_forces().
int num_bodies  (  )  const 
Returns the number of bodies for which this
force object applies.
Determined at construction from the given model MultibodyTree object.
int num_velocities  (  )  const 
Returns the number of generalized velocities for the model to which these forces apply.
The number of generalized forces in a multibody model always equals the number of generalized velocities. Determined at construction from the given model MultibodyTree object.

default 

default 
MultibodyForces< T > & SetZero  (  ) 
Sets this
to store zero forces (no applied forces).