Drake
BoundingBoxConstraint Class Reference

Implements a constraint of the form lb <= x <= ub . More...

#include <drake/solvers/Constraint.h>

Inheritance diagram for BoundingBoxConstraint:
Collaboration diagram for BoundingBoxConstraint:

Public Member Functions

template<typename DerivedLB , typename DerivedUB >
 BoundingBoxConstraint (const Eigen::MatrixBase< DerivedLB > &lb, const Eigen::MatrixBase< DerivedUB > &ub)
 
 ~BoundingBoxConstraint () override
 
void eval (const Eigen::Ref< const Eigen::VectorXd > &x, Eigen::VectorXd &y) const override
 
void eval (const Eigen::Ref< const Drake::TaylorVecXd > &x, Drake::TaylorVecXd &y) const override
 
- Public Member Functions inherited from LinearConstraint
 LinearConstraint (size_t num_constraints)
 
template<typename DerivedA , typename DerivedLB , typename DerivedUB >
 LinearConstraint (const Eigen::MatrixBase< DerivedA > &a, const Eigen::MatrixBase< DerivedLB > &lb, const Eigen::MatrixBase< DerivedUB > &ub)
 
 ~LinearConstraint () override
 
virtual Eigen::SparseMatrix< doubleGetSparseMatrix () const
 
virtual const Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > & A () const
 
- Public Member Functions inherited from Constraint
 Constraint (size_t num_constraints)
 
template<typename DerivedLB , typename DerivedUB >
 Constraint (size_t num_constraints, Eigen::MatrixBase< DerivedLB > const &lb, Eigen::MatrixBase< DerivedUB > const &ub)
 
virtual ~Constraint ()
 
Eigen::VectorXd const & lower_bound () const
 
Eigen::VectorXd const & upper_bound () const
 
size_t num_constraints () const
 

Additional Inherited Members

- Protected Attributes inherited from LinearConstraint
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > A_
 
- Protected Attributes inherited from Constraint
Eigen::VectorXd lower_bound_
 
Eigen::VectorXd upper_bound_
 

Detailed Description

Implements a constraint of the form lb <= x <= ub .

Note: the base Constraint class (as implemented at the moment) could play this role. But this class enforces that it is ONLY a bounding box constraint, and not something more general. Some solvers use this information to handle bounding box constraints differently than general constraints, so use of this form is encouraged.

Constructor & Destructor Documentation

BoundingBoxConstraint ( const Eigen::MatrixBase< DerivedLB > &  lb,
const Eigen::MatrixBase< DerivedUB > &  ub 
)
inline
~BoundingBoxConstraint ( )
inlineoverride

Member Function Documentation

void eval ( const Eigen::Ref< const Eigen::VectorXd > &  x,
Eigen::VectorXd &  y 
) const
inlineoverridevirtual

Reimplemented from LinearConstraint.

Here is the call graph for this function:

void eval ( const Eigen::Ref< const Drake::TaylorVecXd > &  x,
Drake::TaylorVecXd y 
) const
inlineoverridevirtual

Reimplemented from LinearConstraint.

Here is the call graph for this function:


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