PatternGeneratorJRL::FootConstraintsAsLinearSystemForVelRef Class Reference

#include <Mathematics/FootConstraintsAsLinearSystemForVelRef.hh>

List of all members.

Public Member Functions

 FootConstraintsAsLinearSystemForVelRef (SimplePluginManager *aSPM, CjrlHumanoidDynamicRobot *aHS, double ConstraintOnX, double ConstraintOnY)
 ~FootConstraintsAsLinearSystemForVelRef ()
int ComputeLinearSystem (std::vector< CH_Point > aVecOfPoints, MAL_MATRIX(&A, double), MAL_MATRIX(&B, double), MAL_VECTOR(&C, double))
int computeLinearSystem (std::vector< CH_Point > aVecOfPoints, MAL_MATRIX(&D, double), MAL_MATRIX(&Dc, double), SupportState_t PrwSupport)
int buildLinearConstraintInequalities (std::deque< FootAbsolutePosition > &LeftFootAbsolutePositions, std::deque< FootAbsolutePosition > &RightFootAbsolutePositions, std::deque< LinearConstraintInequalityFreeFeet_t > &QueueOfLConstraintInequalities, std::deque< LinearConstraintInequalityFreeFeet_t > &QueueOfFeetPosInequalities, ReferenceAbsoluteVelocity &RefVel, double StartingTime, double m_QP_N, SupportFSM *SupportFSM, SupportState_t CurrentSupport, SupportState_t &PrwSupport, std::deque< double > &PreviewedSupportAngles, int &NbOfConstraints)
int BuildLinearConstraintInequalities2 (std::deque< FootAbsolutePosition > &LeftFootAbsolutePositions, std::deque< FootAbsolutePosition > &RightFootAbsolutePositions, std::deque< LinearConstraintInequality_t > &QueueOfLConstraintInequalities, double ConstraintOnX, double ConstraintOnY)
int FindSimilarConstraints (MAL_MATRIX(&A, double), std::vector< int > &SimilarConstraints)
virtual void CallMethod (std::string &Method, std::istringstream &Args)

Detailed Description

This class generates matrix representation of linear constraint based on foot position. It handles a stack of constraint on a sliding mode for QP solving.


Constructor & Destructor Documentation


Member Function Documentation

int FootConstraintsAsLinearSystemForVelRef::buildLinearConstraintInequalities ( std::deque< FootAbsolutePosition > &  LeftFootAbsolutePositions,
std::deque< FootAbsolutePosition > &  RightFootAbsolutePositions,
std::deque< LinearConstraintInequalityFreeFeet_t > &  QueueOfLConstraintInequalities,
std::deque< LinearConstraintInequalityFreeFeet_t > &  QueueOfFeetPosInequalities,
ReferenceAbsoluteVelocity RefVel,
double  StartingTime,
double  m_QP_N,
SupportFSM SupportFSM,
SupportState_t  CurrentSupport,
SupportState_t &  PrwSupport,
std::deque< double > &  PreviewedSupportAngles,
int &  NbOfConstraints 
)
int PatternGeneratorJRL::FootConstraintsAsLinearSystemForVelRef::BuildLinearConstraintInequalities2 ( std::deque< FootAbsolutePosition > &  LeftFootAbsolutePositions,
std::deque< FootAbsolutePosition > &  RightFootAbsolutePositions,
std::deque< LinearConstraintInequality_t > &  QueueOfLConstraintInequalities,
double  ConstraintOnX,
double  ConstraintOnY 
)

Build a queue of constraint Inequalities based on a list of Foot Absolute Position.

void FootConstraintsAsLinearSystemForVelRef::CallMethod ( std::string &  Method,
std::istringstream &  Args 
) [virtual]

Reimplement the interface of SimplePluginManager

Parameters:
[in]Method,:The method to be called.
[in]Args,:Arguments of the methods.

References PatternGeneratorJRL::FootHalfSize::setConstraints().

int PatternGeneratorJRL::FootConstraintsAsLinearSystemForVelRef::ComputeLinearSystem ( std::vector< CH_Point aVecOfPoints,
MAL_MATRIX &,  double,
MAL_MATRIX &,  double,
MAL_VECTOR &,  double 
)

Compute the linear system ${\bf A}{\bf x} \geq {\bf b}$ associated with the set of points specified by aVecOfPoints. aVecOfPoints is supposed to represent the convex hull of the robot contact points with the ground.

int FootConstraintsAsLinearSystemForVelRef::computeLinearSystem ( std::vector< CH_Point aVecOfPoints,
MAL_MATRIX &,  double,
MAL_MATRIX &,  double,
SupportState_t  PrwSupport 
)

Compute the linear system ${\bf D}{\bf x} \geq {\bf b}$ associated with the set of points specified by aVecOfPoints. aVecOfPoints is supposed can represent either the convex hull of the robot contact points with the ground or the constraints on the placement of the feet.

References MAL_MATRIX, MAL_MATRIX_RESIZE, and n.

Referenced by buildLinearConstraintInequalities().

int FootConstraintsAsLinearSystemForVelRef::FindSimilarConstraints ( MAL_MATRIX &,  double,
std::vector< int > &  SimilarConstraints 
)

Find Similar Constraints

References MAL_MATRIX, and MAL_MATRIX_NB_ROWS.

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Friends Defines