Couenne::CouenneConstraint Class Reference

Class to represent nonlinear constraints. More...

#include <CouenneProblemElem.hpp>

Collaboration diagram for Couenne::CouenneConstraint:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 CouenneConstraint (expression *body=NULL, expression *lb=NULL, expression *ub=NULL)
 Constructor.
 ~CouenneConstraint ()
 Destructor.
 CouenneConstraint (const CouenneConstraint &c, Domain *d=NULL)
 Copy constructor.
CouenneConstraintclone (Domain *d=NULL) const
 Cloning method.
expressionLb () const
 Expression of lower bound.
expressionUb () const
 Expression of upper bound.
expressionBody () const
 Expression of body of constraint.
expressionBody (expression *newBody)
 Set body of constraint.
exprAuxstandardize (CouenneProblem *)
 decompose body of constraint through auxiliary variables
void print (std::ostream &=std::cout)
 print constraint

Protected Attributes

expressionbody_
 Body of constraint.
expressionlb_
 Lower bound (expression).
expressionub_
 Upper bound (expression).

Detailed Description

Class to represent nonlinear constraints.

It consists of an expression as the body and two range expressions as lower- and upper bounds.

A general constraint is defined as lb_ <= body_ <= ub_, where all three components are expressions, depending on variables, auxiliaries and bounds. If the constraint is 2 <= exp (x1+x2) <= 4, then:

body_ = exp (x1+x2), that is,

new exprExp (new exprSum (new exprVar (1), new exprVar (2))

while lb_ = new exprConst (2.) and ub_ = new exprConst (4.).

Definition at line 39 of file CouenneProblemElem.hpp.


Constructor & Destructor Documentation

Couenne::CouenneConstraint::CouenneConstraint ( expression body = NULL,
expression lb = NULL,
expression ub = NULL 
) [inline]

Constructor.

Definition at line 50 of file CouenneProblemElem.hpp.

Couenne::CouenneConstraint::~CouenneConstraint (  )  [inline]

Destructor.

Definition at line 67 of file CouenneProblemElem.hpp.

Couenne::CouenneConstraint::CouenneConstraint ( const CouenneConstraint c,
Domain d = NULL 
) [inline]

Copy constructor.

Definition at line 74 of file CouenneProblemElem.hpp.


Member Function Documentation

CouenneConstraint* Couenne::CouenneConstraint::clone ( Domain d = NULL  )  const [inline]

Cloning method.

Definition at line 80 of file CouenneProblemElem.hpp.

expression* Couenne::CouenneConstraint::Lb (  )  const [inline]

Expression of lower bound.

Definition at line 84 of file CouenneProblemElem.hpp.

expression* Couenne::CouenneConstraint::Ub (  )  const [inline]

Expression of upper bound.

Definition at line 85 of file CouenneProblemElem.hpp.

expression* Couenne::CouenneConstraint::Body (  )  const [inline]

Expression of body of constraint.

Definition at line 86 of file CouenneProblemElem.hpp.

expression* Couenne::CouenneConstraint::Body ( expression newBody  )  [inline]

Set body of constraint.

Definition at line 89 of file CouenneProblemElem.hpp.

exprAux * CouenneConstraint::standardize ( CouenneProblem p  ) 

decompose body of constraint through auxiliary variables

Definition at line 31 of file constrStandardize.cpp.

void CouenneConstraint::print ( std::ostream &  out = std::cout  ) 

print constraint

Definition at line 19 of file constraint.cpp.


Member Data Documentation

Body of constraint.

Definition at line 43 of file CouenneProblemElem.hpp.

Lower bound (expression).

Definition at line 44 of file CouenneProblemElem.hpp.

Upper bound (expression).

Definition at line 45 of file CouenneProblemElem.hpp.


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

Generated on 16 Feb 2012 by  doxygen 1.6.1