These are bound expression classes. More...
#include <CouenneExprBound.hpp>


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. | |
| exprLowerBound * | clone (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 | |
| expression * | differentiate (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 | |
These are bound expression classes.
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. lower bound
Definition at line 38 of file CouenneExprBound.hpp.
| Couenne::exprLowerBound::exprLowerBound | ( | int | varIndex, | |
| Domain * | d = NULL | |||
| ) | [inline] |
Constructor.
Definition at line 47 of file CouenneExprBound.hpp.
| Couenne::exprLowerBound::exprLowerBound | ( | const exprLowerBound & | src, | |
| Domain * | d = NULL | |||
| ) | [inline] |
Copy constructor.
Definition at line 51 of file CouenneExprBound.hpp.
| enum nodeType Couenne::exprLowerBound::Type | ( | ) | const [inline, virtual] |
| exprLowerBound* Couenne::exprLowerBound::clone | ( | Domain * | d = NULL |
) | const [inline, virtual] |
cloning method
Reimplemented from Couenne::exprVar.
Definition at line 55 of file CouenneExprBound.hpp.
| void Couenne::exprLowerBound::print | ( | std::ostream & | out = std::cout, |
|
| bool | = false | |||
| ) | const [inline, virtual] |
Print to iostream.
Reimplemented from Couenne::exprVar.
Definition at line 59 of file CouenneExprBound.hpp.
| CouNumber Couenne::exprLowerBound::operator() | ( | ) | [inline, virtual] |
return the value of the variable
Reimplemented from Couenne::exprVar.
Definition at line 64 of file CouenneExprBound.hpp.
| expression* Couenne::exprLowerBound::differentiate | ( | int | ) | [inline, virtual] |
differentiation
Reimplemented from Couenne::exprVar.
Definition at line 68 of file CouenneExprBound.hpp.
| int Couenne::exprLowerBound::dependsOn | ( | int * | , | |
| int | , | |||
| enum dig_type | type = STOP_AT_AUX | |||
| ) | [inline, virtual] |
dependence on variable set
Reimplemented from Couenne::expression.
Definition at line 72 of file CouenneExprBound.hpp.
| virtual int Couenne::exprLowerBound::Linearity | ( | ) | [inline, virtual] |
get a measure of "how linear" the expression is:
Reimplemented from Couenne::exprVar.
Definition at line 76 of file CouenneExprBound.hpp.
| virtual enum expr_type Couenne::exprLowerBound::code | ( | ) | [inline, virtual] |
code for comparisons
Reimplemented from Couenne::exprVar.
Definition at line 80 of file CouenneExprBound.hpp.
1.6.1