Drake
BodyNodeWelded< T > Class Template Reference

This class represents a BodyNode for nodes with zero degrees of freedom. More...

#include <multibody/multibody_tree/body_node_welded.h>

Inheritance diagram for BodyNodeWelded< T >:
[legend]
Collaboration diagram for BodyNodeWelded< T >:
[legend]

Public Member Functions

 BodyNodeWelded (const Body< T > *body)
 
- Public Member Functions inherited from BodyNode< T >
 BodyNode (const BodyNode< T > *parent_node, const Body< T > *body, const Mobilizer< T > *mobilizer)
 A node encompasses a Body in a MultibodyTree and the inboard Mobilizer that connects this body to the rest of tree. More...
 
void add_child_node (const BodyNode< T > *child)
 Method to update the list of child body nodes maintained by this node, outboard to this node. More...
 
const Body< T > & get_body () const
 Returns a constant reference to the body B associated with this node. More...
 
const Body< T > & get_parent_body () const
 Returns a constant reference to the unique parent body P of the body B associated with this node. More...
 
const Mobilizer< T > & get_mobilizer () const
 Returns a constant reference to the mobilizer associated with this node. More...
 
void CalcPositionKinematicsCache_BaseToTip (const MultibodyTreeContext< T > &context, PositionKinematicsCache< T > *pc) const
 This method is used by MultibodyTree within a base-to-tip loop to compute this node's kinematics that only depend on generalized positions. More...
 
void CalcVelocityKinematicsCache_BaseToTip (const MultibodyTreeContext< T > &context, const PositionKinematicsCache< T > &pc, const Eigen::Ref< const MatrixUpTo6< T >> &H_PB_W, VelocityKinematicsCache< T > *vc) const
 This method is used by MultibodyTree within a base-to-tip loop to compute this node's kinematics that depend on the generalized velocities. More...
 
void CalcSpatialAcceleration_BaseToTip (const MultibodyTreeContext< T > &context, const PositionKinematicsCache< T > &pc, const VelocityKinematicsCache< T > &vc, const VectorX< T > &mbt_vdot, std::vector< SpatialAcceleration< T >> *A_WB_array_ptr) const
 This method is used by MultibodyTree within a base-to-tip loop to compute this node's kinematics that depend on the generalized accelerations, i.e. More...
 
void CalcInverseDynamics_TipToBase (const MultibodyTreeContext< T > &context, const PositionKinematicsCache< T > &pc, const VelocityKinematicsCache< T > &vc, const std::vector< SpatialAcceleration< T >> &A_WB_array, const SpatialForce< T > &Fapplied_Bo_W, const Eigen::Ref< const VectorX< T >> &tau_applied, std::vector< SpatialForce< T >> *F_BMo_W_array_ptr, EigenPtr< VectorX< T >> tau_array) const
 Computes the generalized forces tau for a single BodyNode. More...
 
const BodyNodeTopologyget_topology () const
 Returns the topology information for this body node. More...
 
void CalcAcrossNodeGeometricJacobianExpressedInWorld (const MultibodyTreeContext< T > &context, const PositionKinematicsCache< T > &pc, EigenPtr< MatrixX< T >> H_PB_W) const
 Computes the geometric Jacobian H_PB_W which relates to the spatial velocity of a body B in its parent body P by V_PB_W = H_PB_W(q)⋅v_B, where v_B denotes the generalized velocities associated with body B's node. More...
 
Eigen::Map< const MatrixUpTo6< T > > GetJacobianFromArray (const std::vector< Vector6< T >> &H_array) const
 Helper method to retrieve a Jacobian matrix for this node from an array storing the columns of a set of Jacobian matrices for each node. More...
 
Eigen::Map< MatrixUpTo6< T > > GetMutableJacobianFromArray (std::vector< Vector6< T >> *H_array) const
 Mutable version of GetJacobianFromArray(). More...
 
 BodyNode (const BodyNode &)=delete
 
BodyNodeoperator= (const BodyNode &)=delete
 
 BodyNode (BodyNode &&)=delete
 
BodyNodeoperator= (BodyNode &&)=delete
 
int get_num_mobilizer_positions () const
 Returns the number of generalized positions for the Mobilizer in this node. More...
 
int get_num_mobilizer_velocites () const
 Returns the number of generalized velocities for the Mobilizer in this node. More...
 

Additional Inherited Members

- Protected Member Functions inherited from BodyNode< T >
const Frame< T > & get_inboard_frame () const
 Returns the inboard frame F of this node's mobilizer. More...
 
const Frame< T > & get_outboard_frame () const
 Returns the outboard frame M of this node's mobilizer. More...
 

Detailed Description

template<typename T>
class drake::multibody::internal::BodyNodeWelded< T >

This class represents a BodyNode for nodes with zero degrees of freedom.

These include the world body and the WeldMobilzer. Overrides in this class of general BodyNode methods conveniently reduce to no-ops for body nodes with zero degrees of freedom. In addition, it also solves the problem of instantiating a BodyNodeImpl with zero compile-time sizes, which leads to Eigen expressions that assert at compile-time.

Constructor & Destructor Documentation

BodyNodeWelded ( const Body< T > *  body)
inlineexplicit

The documentation for this class was generated from the following file: