Holds complete information for recreating a subproblem. More...
#include <CbcNode.hpp>
Public Member Functions | |
virtual void | applyToModel (CbcModel *model, CoinWarmStartBasis *&basis, CbcCountRowCut **addCuts, int ¤tNumberCuts) const |
Modify model according to information at node. | |
virtual int | applyBounds (int iColumn, double &lower, double &upper, int force) |
Just apply bounds to one variable - force means overwrite by lower,upper (1=>infeasible). | |
virtual CbcNodeInfo * | buildRowBasis (CoinWarmStartBasis &basis) const |
Builds up row basis backwards (until original model). | |
CbcFullNodeInfo () | |
CbcFullNodeInfo (CbcModel *model, int numberRowsAtContinuous) | |
Constructor from continuous or satisfied. | |
CbcFullNodeInfo (const CbcFullNodeInfo &) | |
~CbcFullNodeInfo () | |
virtual CbcNodeInfo * | clone () const |
Clone. | |
const double * | lower () const |
Lower bounds. | |
const double * | upper () const |
Upper bounds. | |
Protected Attributes | |
CoinWarmStartBasis * | basis_ |
Full basis. | |
int | numberIntegers_ |
double * | lower_ |
double * | upper_ |
Private Member Functions | |
CbcFullNodeInfo & | operator= (const CbcFullNodeInfo &rhs) |
Illegal Assignment operator. |
Holds complete information for recreating a subproblem.
A CbcFullNodeInfo object contains all necessary information (bounds, basis, and cuts) required to recreate a subproblem.
Definition at line 317 of file CbcNode.hpp.
CbcFullNodeInfo::CbcFullNodeInfo | ( | ) |
CbcFullNodeInfo::CbcFullNodeInfo | ( | CbcModel * | model, | |
int | numberRowsAtContinuous | |||
) |
Constructor from continuous or satisfied.
CbcFullNodeInfo::CbcFullNodeInfo | ( | const CbcFullNodeInfo & | ) |
CbcFullNodeInfo::~CbcFullNodeInfo | ( | ) |
virtual void CbcFullNodeInfo::applyToModel | ( | CbcModel * | model, | |
CoinWarmStartBasis *& | basis, | |||
CbcCountRowCut ** | addCuts, | |||
int & | currentNumberCuts | |||
) | const [virtual] |
Modify model according to information at node.
The routine modifies the model according to bound information at node, creates a new basis according to information at node, but with the size passed in through basis, and adds any cuts to the addCuts array.
Implements CbcNodeInfo.
virtual int CbcFullNodeInfo::applyBounds | ( | int | iColumn, | |
double & | lower, | |||
double & | upper, | |||
int | force | |||
) | [virtual] |
Just apply bounds to one variable - force means overwrite by lower,upper (1=>infeasible).
Implements CbcNodeInfo.
virtual CbcNodeInfo* CbcFullNodeInfo::buildRowBasis | ( | CoinWarmStartBasis & | basis | ) | const [virtual] |
Builds up row basis backwards (until original model).
Returns NULL or previous one to apply . Depends on Free being 0 and impossible for cuts
Implements CbcNodeInfo.
virtual CbcNodeInfo* CbcFullNodeInfo::clone | ( | ) | const [virtual] |
Clone.
Implements CbcNodeInfo.
const double* CbcFullNodeInfo::lower | ( | ) | const [inline] |
Lower bounds.
Definition at line 359 of file CbcNode.hpp.
const double* CbcFullNodeInfo::upper | ( | ) | const [inline] |
Upper bounds.
Definition at line 362 of file CbcNode.hpp.
CbcFullNodeInfo& CbcFullNodeInfo::operator= | ( | const CbcFullNodeInfo & | rhs | ) | [private] |
Illegal Assignment operator.
CoinWarmStartBasis* CbcFullNodeInfo::basis_ [protected] |
Full basis.
This MUST BE A POINTER to avoid cutting extra information in derived warm start classes.
Definition at line 371 of file CbcNode.hpp.
int CbcFullNodeInfo::numberIntegers_ [protected] |
Definition at line 372 of file CbcNode.hpp.
double* CbcFullNodeInfo::lower_ [protected] |
Definition at line 374 of file CbcNode.hpp.
double* CbcFullNodeInfo::upper_ [protected] |
Definition at line 375 of file CbcNode.hpp.