Couenne::exprTrilinear Class Reference

class for multiplications More...

#include <CouenneExprTrilinear.hpp>

List of all members.

Public Member Functions

 exprTrilinear (expression **, int)
 Constructor.
 exprTrilinear (expression *, expression *, expression *)
 Constructor with two arguments.
expressionclone (Domain *d=NULL) const
 Cloning method.
CouNumber gradientNorm (const double *x)
 return l-2 norm of gradient at given point
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
virtual enum expr_type code ()
 code for comparison
bool impliedBound (int, CouNumber *, CouNumber *, t_chg_bounds *, enum Couenne::expression::auxSign=Couenne::expression::AUX_EQ)
 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
 compute $y^{lv}$ and $y^{uv}$ for Violation Transfer algorithm

Detailed Description

class for multiplications

Definition at line 21 of file CouenneExprTrilinear.hpp.


Constructor & Destructor Documentation

Couenne::exprTrilinear::exprTrilinear ( expression **  ,
int   
)

Constructor.

Referenced by clone().

Couenne::exprTrilinear::exprTrilinear ( expression ,
expression ,
expression  
)

Constructor with two arguments.


Member Function Documentation

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

Cloning method.

Definition at line 32 of file CouenneExprTrilinear.hpp.

References exprTrilinear().

CouNumber Couenne::exprTrilinear::gradientNorm ( const double *  x  ) 

return l-2 norm of gradient at given point

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

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

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

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

void Couenne::exprTrilinear::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

virtual enum expr_type Couenne::exprTrilinear::code (  )  [inline, virtual]

code for comparison

Definition at line 52 of file CouenneExprTrilinear.hpp.

References Couenne::COU_EXPRTRILINEAR.

bool Couenne::exprTrilinear::impliedBound ( int  ,
CouNumber ,
CouNumber ,
t_chg_bounds ,
enum Couenne::expression::auxSign  = Couenne::expression::AUX_EQ 
)

implied bound processing

virtual CouNumber Couenne::exprTrilinear::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

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

compute $y^{lv}$ and $y^{uv}$ for Violation Transfer algorithm


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 2 Aug 2012 for Couenne by  doxygen 1.6.1