momentumopt
momentumopt::DynamicsState Struct Reference

This class is a container for all variables required to define a dynamic state: center of mass position, linear and angular momenta and its rates; forces, torques and center of pressure of the end- effectors; positions, orientations, activations and contact types of each end-effector. More...

#include <DynamicsState.hpp>

Public Member Functions

double & time ()
 
Eigen::Vector3d & centerOfMass ()
 
Eigen::Vector3d & linearMomentum ()
 
Eigen::Vector3d & angularMomentum ()
 
Eigen::Vector3d & linearMomentumRate ()
 
Eigen::Vector3d & angularMomentumRate ()
 
const double & time () const
 
const Eigen::Vector3d & centerOfMass () const
 
const Eigen::Vector3d & linearMomentum () const
 
const Eigen::Vector3d & angularMomentum () const
 
const Eigen::Vector3d & linearMomentumRate () const
 
const Eigen::Vector3d & angularMomentumRate () const
 
void time (const double &dtime)
 
void centerOfMass (const Eigen::Vector3d &com)
 
void linearMomentum (const Eigen::Vector3d &lmom)
 
void angularMomentum (const Eigen::Vector3d &amom)
 
void linearMomentumRate (const Eigen::Vector3d &lmomd)
 
void angularMomentumRate (const Eigen::Vector3d &amomd)
 
Eigen::Vector3d & endeffectorCoP (int eff_id)
 
Eigen::Vector3d & endeffectorForce (int eff_id)
 
Eigen::Vector3d & endeffectorTorque (int eff_id)
 
Eigen::Vector3d & endeffectorTorqueAtContactPoint (int eff_id)
 
const long endeffectorNum ()
 
const Eigen::Vector3d & endeffectorCoP (int eff_id) const
 
const Eigen::Vector3d & endeffectorForce (int eff_id) const
 
const Eigen::Vector3d & endeffectorTorque (int eff_id) const
 
const Eigen::Vector3d & endeffectorTorqueAtContactPoint (int eff_id) const
 
const std::vector< Eigen::Vector3d > & pyEndeffectorCops () const
 
const std::vector< Eigen::Vector3d > & pyEndeffectorForces () const
 
const std::vector< Eigen::Vector3d > & pyEndeffectorTorques () const
 
void pyEndeffectorCops (const std::vector< Eigen::Vector3d > &eff_cops)
 
void pyEndeffectorForces (const std::vector< Eigen::Vector3d > &eff_forces)
 
void pyEndeffectorTorques (const std::vector< Eigen::Vector3d > &eff_torques)
 
int & endeffectorContactId (int eff_id)
 
int & endeffectorActivationId (int eff_id)
 
bool & endeffectorActivation (int eff_id)
 
const int & endeffectorContactId (int eff_id) const
 
const int & endeffectorActivationId (int eff_id) const
 
bool endeffectorActivation (int eff_id) const
 
Eigen::Vector3d & endeffectorPosition (int eff_id)
 
Eigen::Vector3d & endeffectorVelocity (int eff_id)
 
Eigen::Vector3d & endeffectorAcceleration (int eff_id)
 
Eigen::Quaternion< double > & endeffectorOrientation (int eff_id)
 
const Eigen::Vector3d & endeffectorPosition (int eff_id) const
 
const Eigen::Vector3d & endeffectorVelocity (int eff_id) const
 
const Eigen::Vector3d & endeffectorAcceleration (int eff_id) const
 
const Eigen::Quaternion< double > & endeffectorOrientation (int eff_id) const
 
const std::vector< Eigen::Vector3d > & pyEndeffectorPositions () const
 
void pyEndeffectorPositions (const std::vector< Eigen::Vector3d > &eff_positions)
 
std::string toString () const
 
void fillInitialRobotState (const std::string cfg_file, const std::string robot_state="initial_robot_configuration")
 

Private Attributes

double dtime_
 
Eigen::Vector3d com_
 
Eigen::Vector3d amom_
 
Eigen::Vector3d lmom_
 
Eigen::Vector3d amomd_
 
Eigen::Vector3d lmomd_
 
std::array< bool, Problem::n_endeffs_eff_activations_
 
std::array< int, Problem::n_endeffs_eff_ids_
 
std::array< int, Problem::n_endeffs_cnt_ids_
 
std::vector< Eigen::Quaternion< double > > eff_orientations_
 
std::vector< Eigen::Vector3d > eff_positions_
 
std::vector< Eigen::Vector3d > eff_velocities_
 
std::vector< Eigen::Vector3d > eff_accelerations_
 
std::vector< Eigen::Vector3d > eff_forces_
 
std::vector< Eigen::Vector3d > eff_torques_
 
std::vector< Eigen::Vector3d > eff_cops_
 
std::vector< Eigen::Vector3d > eefs_trqs_contact_point_
 

Friends

std::ostream & operator<< (std::ostream &os, const DynamicsState &obj)
 

Detailed Description

This class is a container for all variables required to define a dynamic state: center of mass position, linear and angular momenta and its rates; forces, torques and center of pressure of the end- effectors; positions, orientations, activations and contact types of each end-effector.


The documentation for this struct was generated from the following files: