tsid  1.8.0
Efficient Task Space Inverse Dynamics for Multi-body Systems based on Pinocchio
tsid::math::ConstraintBase Class Referenceabstract

Abstract class representing a linear equality/inequality constraint. Equality constraints are represented by a matrix A and a vector b: A*x = b Inequality constraints are represented by a matrix A and two vectors lb and ub: lb <= A*x <= ub Bounds are represented by two vectors lb and ub: lb <= x <= ub. More...

#include <tsid/math/constraint-base.hpp>

Inheritance diagram for tsid::math::ConstraintBase:
Collaboration diagram for tsid::math::ConstraintBase:

Public Member Functions

EIGEN_MAKE_ALIGNED_OPERATOR_NEW ConstraintBase (const std::string &name)
 
 ConstraintBase (const std::string &name, const unsigned int rows, const unsigned int cols)
 
 ConstraintBase (const std::string &name, ConstRefMatrix A)
 
virtual ~ConstraintBase ()=default
 
virtual const std::string & name () const
 
virtual unsigned int rows () const =0
 
virtual unsigned int cols () const =0
 
virtual void resize (const unsigned int r, const unsigned int c)=0
 
virtual bool isEquality () const =0
 
virtual bool isInequality () const =0
 
virtual bool isBound () const =0
 
virtual const Matrixmatrix () const
 
virtual const Vectorvector () const =0
 
virtual const VectorlowerBound () const =0
 
virtual const VectorupperBound () const =0
 
virtual Matrixmatrix ()
 
virtual Vectorvector ()=0
 
virtual VectorlowerBound ()=0
 
virtual VectorupperBound ()=0
 
virtual bool setMatrix (ConstRefMatrix A)
 
virtual bool setVector (ConstRefVector b)=0
 
virtual bool setLowerBound (ConstRefVector lb)=0
 
virtual bool setUpperBound (ConstRefVector ub)=0
 
virtual bool checkConstraint (ConstRefVector x, double tol=1e-6) const =0
 

Protected Attributes

std::string m_name
 
Matrix m_A
 

Detailed Description

Abstract class representing a linear equality/inequality constraint. Equality constraints are represented by a matrix A and a vector b: A*x = b Inequality constraints are represented by a matrix A and two vectors lb and ub: lb <= A*x <= ub Bounds are represented by two vectors lb and ub: lb <= x <= ub.

Constructor & Destructor Documentation

◆ ConstraintBase() [1/3]

ConstraintBase::ConstraintBase ( const std::string &  name)

◆ ConstraintBase() [2/3]

ConstraintBase::ConstraintBase ( const std::string &  name,
const unsigned int  rows,
const unsigned int  cols 
)

◆ ConstraintBase() [3/3]

ConstraintBase::ConstraintBase ( const std::string &  name,
ConstRefMatrix  A 
)

◆ ~ConstraintBase()

virtual tsid::math::ConstraintBase::~ConstraintBase ( )
virtualdefault

Member Function Documentation

◆ checkConstraint()

virtual bool tsid::math::ConstraintBase::checkConstraint ( ConstRefVector  x,
double  tol = 1e-6 
) const
pure virtual

◆ cols()

virtual unsigned int tsid::math::ConstraintBase::cols ( ) const
pure virtual

◆ isBound()

virtual bool tsid::math::ConstraintBase::isBound ( ) const
pure virtual

◆ isEquality()

virtual bool tsid::math::ConstraintBase::isEquality ( ) const
pure virtual

◆ isInequality()

virtual bool tsid::math::ConstraintBase::isInequality ( ) const
pure virtual

◆ lowerBound() [1/2]

virtual const Vector& tsid::math::ConstraintBase::lowerBound ( ) const
pure virtual

◆ lowerBound() [2/2]

virtual Vector& tsid::math::ConstraintBase::lowerBound ( )
pure virtual

◆ matrix() [1/2]

Matrix & ConstraintBase::matrix ( )
virtual

◆ matrix() [2/2]

const Matrix & ConstraintBase::matrix ( ) const
virtual

◆ name()

const std::string & ConstraintBase::name ( ) const
virtual

◆ resize()

virtual void tsid::math::ConstraintBase::resize ( const unsigned int  r,
const unsigned int  c 
)
pure virtual

◆ rows()

virtual unsigned int tsid::math::ConstraintBase::rows ( ) const
pure virtual

◆ setLowerBound()

virtual bool tsid::math::ConstraintBase::setLowerBound ( ConstRefVector  lb)
pure virtual

◆ setMatrix()

bool ConstraintBase::setMatrix ( ConstRefMatrix  A)
virtual

◆ setUpperBound()

virtual bool tsid::math::ConstraintBase::setUpperBound ( ConstRefVector  ub)
pure virtual

◆ setVector()

virtual bool tsid::math::ConstraintBase::setVector ( ConstRefVector  b)
pure virtual

◆ upperBound() [1/2]

virtual const Vector& tsid::math::ConstraintBase::upperBound ( ) const
pure virtual

◆ upperBound() [2/2]

virtual Vector& tsid::math::ConstraintBase::upperBound ( )
pure virtual

◆ vector() [1/2]

virtual const Vector& tsid::math::ConstraintBase::vector ( ) const
pure virtual

◆ vector() [2/2]

virtual Vector& tsid::math::ConstraintBase::vector ( )
pure virtual

Member Data Documentation

◆ m_A

Matrix tsid::math::ConstraintBase::m_A
protected

◆ m_name

std::string tsid::math::ConstraintBase::m_name
protected

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