exprLowerBound Class Reference

lower bound More...

#include <exprBound.hpp>

Inheritance diagram for exprLowerBound:

Inheritance graph
[legend]
Collaboration diagram for exprLowerBound:

Collaboration graph
[legend]
List of all members.

Public Member Functions

enum nodeType Type () const
 Node type.
 exprLowerBound (int varIndex, Domain *d=NULL)
 Constructor.
 exprLowerBound (const exprLowerBound &src, Domain *d=NULL)
 Copy constructor.
exprLowerBoundclone (Domain *d=NULL) const
 cloning method
void print (std::ostream &out=std::cout, bool=false) const
 Print to iostream.
CouNumber operator() ()
 return the value of the variable
expressiondifferentiate (int)
 differentiation
int dependsOn (int *, int, enum dig_type type=STOP_AT_AUX)
 dependence on variable set
virtual int Linearity ()
 get a measure of "how linear" the expression is:
virtual enum expr_type code ()
 code for comparisons

Detailed Description

lower bound

They are used in the parametric convexification part to obtain lower/upper bounds of an expression as a function of the expression itself.

For example, the lower and upper bounds to expression (x1 - exp (x2)) are (l1 - exp (u2)) and (u1 - exp (l2)), respectively, where l1 (l2) is the lower bound of x1 (x2) and u1 (u2) is the upper bound of x1 (x2).

A lower/upper bound of an expression is a function of all bounds in the expression and is known only when all variables bounds are known.

Definition at line 36 of file exprBound.hpp.


Constructor & Destructor Documentation

exprLowerBound::exprLowerBound ( int  varIndex,
Domain d = NULL 
) [inline]

Constructor.

Definition at line 45 of file exprBound.hpp.

Referenced by clone().

exprLowerBound::exprLowerBound ( const exprLowerBound src,
Domain d = NULL 
) [inline]

Copy constructor.

Definition at line 49 of file exprBound.hpp.


Member Function Documentation

enum nodeType exprLowerBound::Type (  )  const [inline, virtual]

Node type.

Reimplemented from exprVar.

Definition at line 41 of file exprBound.hpp.

References CONST.

exprLowerBound* exprLowerBound::clone ( Domain d = NULL  )  const [inline, virtual]

cloning method

Reimplemented from exprVar.

Definition at line 53 of file exprBound.hpp.

References exprLowerBound().

void exprLowerBound::print ( std::ostream &  out = std::cout,
bool  = false 
) const [inline, virtual]

Print to iostream.

Reimplemented from exprVar.

Definition at line 57 of file exprBound.hpp.

References exprVar::varIndex_.

CouNumber exprLowerBound::operator() (  )  [inline, virtual]

return the value of the variable

Reimplemented from exprVar.

Definition at line 62 of file exprBound.hpp.

References exprVar::domain_, exprVar::lb(), and exprVar::varIndex_.

expression* exprLowerBound::differentiate ( int   )  [inline, virtual]

differentiation

Reimplemented from exprVar.

Definition at line 66 of file exprBound.hpp.

int exprLowerBound::dependsOn ( int *  ,
int  ,
enum dig_type  type = STOP_AT_AUX 
) [inline, virtual]

dependence on variable set

Reimplemented from expression.

Definition at line 70 of file exprBound.hpp.

virtual int exprLowerBound::Linearity (  )  [inline, virtual]

get a measure of "how linear" the expression is:

Reimplemented from exprVar.

Definition at line 74 of file exprBound.hpp.

References CONST.

virtual enum expr_type exprLowerBound::code (  )  [inline, virtual]

code for comparisons

Reimplemented from exprVar.

Definition at line 78 of file exprBound.hpp.

References COU_EXPRLBOUND.


The documentation for this class was generated from the following file:
Generated on Wed May 19 03:15:43 2010 for Couenne by  doxygen 1.4.7