#include <CbcBranchLotsize.hpp>
Inheritance diagram for CbcLotsizeBranchingObject:
Public Member Functions | |
CbcLotsizeBranchingObject () | |
Default constructor. | |
CbcLotsizeBranchingObject (CbcModel *model, int variable, int way, double value, const CbcLotsize *lotsize) | |
Create a lotsize floor/ceiling branch object. | |
CbcLotsizeBranchingObject (CbcModel *model, int variable, int way, double lowerValue, double upperValue) | |
Create a degenerate branch object. | |
CbcLotsizeBranchingObject (const CbcLotsizeBranchingObject &) | |
Copy constructor. | |
CbcLotsizeBranchingObject & | operator= (const CbcLotsizeBranchingObject &rhs) |
Assignment operator. | |
virtual CbcBranchingObject * | clone () const |
Clone. | |
virtual | ~CbcLotsizeBranchingObject () |
Destructor. | |
virtual double | branch (bool normalBranch=false) |
Sets the bounds for the variable according to the current arm of the branch and advances the object state to the next arm. | |
virtual void | print (bool normalBranch) |
Print something about branch - only if log level high. | |
Protected Attributes | |
double | down_ [2] |
Lower [0] and upper [1] bounds for the down arm (way_ = -1). | |
double | up_ [2] |
Lower [0] and upper [1] bounds for the up arm (way_ = 1). |
This object can specify a two-way branch on an integer variable. For each arm of the branch, the upper and lower bounds on the variable can be independently specified.
Variable_ holds the index of the integer variable in the integerVariable_ array of the model.
Definition at line 148 of file CbcBranchLotsize.hpp.
CbcLotsizeBranchingObject::CbcLotsizeBranchingObject | ( | ) |
Default constructor.
CbcLotsizeBranchingObject::CbcLotsizeBranchingObject | ( | CbcModel * | model, | |
int | variable, | |||
int | way, | |||
double | value, | |||
const CbcLotsize * | lotsize | |||
) |
Create a lotsize floor/ceiling branch object.
Specifies a simple two-way branch. Let value
= x*. One arm of the branch will be is lb <= x <= valid range below(x*), the other valid range above(x*) <= x <= ub. Specify way = -1 to set the object state to perform the down arm first, way = 1 for the up arm.
CbcLotsizeBranchingObject::CbcLotsizeBranchingObject | ( | CbcModel * | model, | |
int | variable, | |||
int | way, | |||
double | lowerValue, | |||
double | upperValue | |||
) |
Create a degenerate branch object.
Specifies a `one-way branch'. Calling branch() for this object will always result in lowerValue <= x <= upperValue. Used to fix in valid range
CbcLotsizeBranchingObject::CbcLotsizeBranchingObject | ( | const CbcLotsizeBranchingObject & | ) |
Copy constructor.
virtual CbcLotsizeBranchingObject::~CbcLotsizeBranchingObject | ( | ) | [virtual] |
Destructor.
CbcLotsizeBranchingObject& CbcLotsizeBranchingObject::operator= | ( | const CbcLotsizeBranchingObject & | rhs | ) |
Assignment operator.
virtual CbcBranchingObject* CbcLotsizeBranchingObject::clone | ( | ) | const [virtual] |
virtual double CbcLotsizeBranchingObject::branch | ( | bool | normalBranch = false |
) | [virtual] |
Sets the bounds for the variable according to the current arm of the branch and advances the object state to the next arm.
Implements CbcBranchingObject.
virtual void CbcLotsizeBranchingObject::print | ( | bool | normalBranch | ) | [virtual] |
double CbcLotsizeBranchingObject::down_[2] [protected] |
Lower [0] and upper [1] bounds for the down arm (way_ = -1).
Definition at line 197 of file CbcBranchLotsize.hpp.
double CbcLotsizeBranchingObject::up_[2] [protected] |
Lower [0] and upper [1] bounds for the up arm (way_ = 1).
Definition at line 199 of file CbcBranchLotsize.hpp.