1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- //////////////////////////////////////////////////////////////////////
- //
- // InequalityConstraints.h: interface of the InequalityConstaints class.
- //
- // Written By: Matthias Wacker
- //
- //
- // Constraints of the form: G(x) \le 0 (less or equal)
- // where G is the vector of all
- // inequality constraints
- //
- //////////////////////////////////////////////////////////////////////
- #ifndef _INEQUALITYCONSTRAINTS_H_
- #define _INEQUALITYCONSTRAINTS_H_
- #include "optimization/Constraints.h"
- /*!
- class Abstract base class for all equality constraints.
- */
- class InequalityConstraints : public Constraints
- {
- public:
-
- typedef Constraints SuperClass;
- typedef SuperClass::matrix_type matrix_type;
-
- /*!
- default constructor
- */
- InequalityConstraints() : SuperClass(){};
- /*!
- Constructor.
- \param numOfParameters
- \param numOfConstraints
- */
- InequalityConstraints(unsigned int numOfParameters, unsigned int numOfConstraints): SuperClass(numOfParameters,numOfConstraints){};
-
- /*!
- Copy constructor
- */
- InequalityConstraints(const Constraints &con):SuperClass(con){};
- /*!
- Destructor.
- */
- ~InequalityConstraints(){};
-
- /*!
- Initialization for the cost function
- */
- virtual void init() = 0;
- /*!
- evaluate the constraints
- \param x =^ position
- \return matrix_type containing the i-th constraint result in the i-th component
- */
- virtual matrix_type evaluate(const matrix_type & x) = 0;
- protected:
- };
- #endif
|