exprAbs Class Reference

class for $w=|f(x)|$ More...

#include <exprAbs.hpp>

Inheritance diagram for exprAbs:

Inheritance graph
[legend]
Collaboration diagram for exprAbs:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 exprAbs (expression *al)
 Constructor.
unary_function F ()
 The operator's function.
expressionclone (Domain *d=NULL) const
 cloning method
std::string printOp () const
 output
CouNumber gradientNorm (const double *x)
 return l_2 norm of gradient at given point
expressiondifferentiate (int index)
 differentiation
virtual void getBounds (expression *&, expression *&)
 Get lower and upper bound of an expression (if any).
virtual void getBounds (CouNumber &lb, CouNumber &ub)
 Get value of lower and upper bound of an expression (if any).
void generateCuts (expression *w, OsiCuts &cs, const CouenneCutGenerator *cg, t_chg_bounds *=NULL, int=-1, CouNumber=-COUENNE_INFINITY, CouNumber=COUENNE_INFINITY)
 generate equality between *this and *w
enum expr_type code ()
 code for comparisons
bool isInteger ()
 is this expression integer?
bool impliedBound (int, CouNumber *, CouNumber *, t_chg_bounds *)
 implied bound processing
virtual CouNumber selectBranch (const CouenneObject *obj, const OsiBranchingInformation *info, expression *&var, double *&brpts, double *&brDist, int &way)
 set up branching object by evaluating many branching points for each expression's arguments
virtual void closestFeasible (expression *varind, expression *vardep, CouNumber &left, CouNumber &right) const
 closest feasible points in function in both directions
virtual bool isCuttable (CouenneProblem *problem, int index) const
 can this expression be further linearized or are we on its concave ("bad") side

Detailed Description

class for $w=|f(x)|$

Definition at line 22 of file exprAbs.hpp.


Constructor & Destructor Documentation

exprAbs::exprAbs ( expression al  )  [inline]

Constructor.

Definition at line 27 of file exprAbs.hpp.

Referenced by clone().


Member Function Documentation

unary_function exprAbs::F (  )  [inline, virtual]

The operator's function.

Reimplemented from exprUnary.

Definition at line 31 of file exprAbs.hpp.

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

cloning method

Reimplemented from expression.

Definition at line 34 of file exprAbs.hpp.

References exprUnary::argument_, and exprAbs().

std::string exprAbs::printOp (  )  const [inline, virtual]

output

Reimplemented from exprUnary.

Definition at line 38 of file exprAbs.hpp.

CouNumber exprAbs::gradientNorm ( const double *  x  )  [inline, virtual]

return l_2 norm of gradient at given point

Reimplemented from expression.

Definition at line 42 of file exprAbs.hpp.

References exprUnary::argument_, and expression::Index().

expression* exprAbs::differentiate ( int  index  )  [virtual]

differentiation

Reimplemented from expression.

virtual void exprAbs::getBounds ( expression *&  ,
expression *&   
) [virtual]

Get lower and upper bound of an expression (if any).

Reimplemented from expression.

virtual void exprAbs::getBounds ( CouNumber lb,
CouNumber ub 
) [virtual]

Get value of lower and upper bound of an expression (if any).

Reimplemented from expression.

void exprAbs::generateCuts ( expression w,
OsiCuts &  cs,
const CouenneCutGenerator cg,
t_chg_bounds = NULL,
int  = -1,
CouNumber  = -COUENNE_INFINITY,
CouNumber  = COUENNE_INFINITY 
) [virtual]

generate equality between *this and *w

Reimplemented from expression.

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

code for comparisons

Reimplemented from exprUnary.

Definition at line 62 of file exprAbs.hpp.

References COU_EXPRABS.

bool exprAbs::isInteger (  )  [inline, virtual]

is this expression integer?

Reimplemented from exprUnary.

Definition at line 65 of file exprAbs.hpp.

References exprUnary::argument_.

bool exprAbs::impliedBound ( int  ,
CouNumber ,
CouNumber ,
t_chg_bounds  
) [virtual]

implied bound processing

Reimplemented from expression.

virtual CouNumber exprAbs::selectBranch ( const CouenneObject obj,
const OsiBranchingInformation *  info,
expression *&  var,
double *&  brpts,
double *&  brDist,
int &  way 
) [virtual]

set up branching object by evaluating many branching points for each expression's arguments

Reimplemented from expression.

virtual void exprAbs::closestFeasible ( expression varind,
expression vardep,
CouNumber left,
CouNumber right 
) const [virtual]

closest feasible points in function in both directions

Reimplemented from expression.

virtual bool exprAbs::isCuttable ( CouenneProblem problem,
int  index 
) const [virtual]

can this expression be further linearized or are we on its concave ("bad") side

Reimplemented from expression.


The documentation for this class was generated from the following file:
Generated on Sun Feb 14 03:04:13 2010 for Couenne by  doxygen 1.4.7