Couenne  0.2
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
Couenne::CouenneThreeWayBranchObj Class Reference

Spatial, three-way branching object. More...

#include <CouenneThreeWayBranchObj.hpp>

Inheritance diagram for Couenne::CouenneThreeWayBranchObj:

Public Member Functions

 CouenneThreeWayBranchObj (JnlstPtr jnlst, expression *, CouNumber, CouNumber, int=THREE_CENTER)
 Constructor. More...
 
 CouenneThreeWayBranchObj (const CouenneThreeWayBranchObj &src)
 Copy constructor. More...
 
virtual OsiBranchingObject * clone () const
 Cloning method. More...
 
virtual double branch (OsiSolverInterface *solver=NULL)
 Execute the actions required to branch, as specified by the current state of the branching object, and advance the object's state. More...
 

Protected Attributes

expressionbrVar_
 The variable this branching object refers to. More...
 
CouNumber lcrop_
 left divider More...
 
CouNumber rcrop_
 right divider More...
 
int firstBranch_
 First branch to be performed: 0 is left, 1 is central, 2 is right. More...
 
JnlstPtr jnlst_
 True if the associated variable is integer. More...
 

Detailed Description

Spatial, three-way branching object.

Branching is performed on continuous variables but a better convexification is sought around the current point by dividing the interval in three parts

Definition at line 28 of file CouenneThreeWayBranchObj.hpp.

Constructor & Destructor Documentation

Couenne::CouenneThreeWayBranchObj::CouenneThreeWayBranchObj ( JnlstPtr  jnlst,
expression ,
CouNumber  ,
CouNumber  ,
int  = THREE_CENTER 
)

Constructor.

Referenced by clone().

Couenne::CouenneThreeWayBranchObj::CouenneThreeWayBranchObj ( const CouenneThreeWayBranchObj src)
inline

Copy constructor.

Definition at line 42 of file CouenneThreeWayBranchObj.hpp.

Member Function Documentation

virtual OsiBranchingObject* Couenne::CouenneThreeWayBranchObj::clone ( ) const
inlinevirtual

Cloning method.

Definition at line 51 of file CouenneThreeWayBranchObj.hpp.

References CouenneThreeWayBranchObj().

virtual double Couenne::CouenneThreeWayBranchObj::branch ( OsiSolverInterface *  solver = NULL)
virtual

Execute the actions required to branch, as specified by the current state of the branching object, and advance the object's state.

Returns change in guessed objective on next (what does "next" mean here?) branch

Member Data Documentation

expression* Couenne::CouenneThreeWayBranchObj::brVar_
protected

The variable this branching object refers to.

If the corresponding CouenneObject was created on w=f(x,y), it is either x or y.

Definition at line 67 of file CouenneThreeWayBranchObj.hpp.

CouNumber Couenne::CouenneThreeWayBranchObj::lcrop_
protected

left divider

Definition at line 69 of file CouenneThreeWayBranchObj.hpp.

CouNumber Couenne::CouenneThreeWayBranchObj::rcrop_
protected

right divider

Definition at line 70 of file CouenneThreeWayBranchObj.hpp.

int Couenne::CouenneThreeWayBranchObj::firstBranch_
protected

First branch to be performed: 0 is left, 1 is central, 2 is right.

Definition at line 73 of file CouenneThreeWayBranchObj.hpp.

JnlstPtr Couenne::CouenneThreeWayBranchObj::jnlst_
protected

True if the associated variable is integer.

SmartPointer to the Journalist

Definition at line 79 of file CouenneThreeWayBranchObj.hpp.


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