Define Special Linked Ordered Sets. More...
#include <CbcLinked.hpp>
Public Member Functions | |
OsiLink () | |
OsiLink (const OsiSolverInterface *solver, int yRow, int yColumn, double meshSize) | |
Useful constructor -. | |
OsiLink (const OsiLink &) | |
virtual OsiObject * | clone () const |
Clone. | |
OsiLink & | operator= (const OsiLink &rhs) |
Assignment operator. | |
virtual | ~OsiLink () |
virtual double | infeasibility (const OsiBranchingInformation *info, int &whichWay) const |
Infeasibility - large is 0.5. | |
virtual double | feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const |
Set bounds to fix the variable at the current (integer) value. | |
virtual OsiBranchingObject * | createBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const |
Creates a branching object. | |
virtual void | resetSequenceEtc (int numberColumns, const int *originalColumns) |
Redoes data when sequence numbers change. | |
int | numberLinks () const |
Number of links for each member. | |
virtual bool | canDoHeuristics () const |
Return true if object can take part in normal heuristics. | |
virtual bool | boundBranch () const |
Return true if branch should only bound variables. | |
Private Attributes | |
double | meshSize_ |
data Current increment for y points | |
OsiOneLink * | data_ |
Links. | |
int | numberLinks_ |
Number of links. | |
int | yRow_ |
Row which defines y. | |
int | yColumn_ |
Column which defines y. |
Define Special Linked Ordered Sets.
New style
members and weights may be stored in SOS object
This is for y and x*f(y) and z*g(y) etc
Definition at line 574 of file CbcLinked.hpp.
OsiLink::OsiLink | ( | ) |
OsiLink::OsiLink | ( | const OsiSolverInterface * | solver, | |
int | yRow, | |||
int | yColumn, | |||
double | meshSize | |||
) |
Useful constructor -.
OsiLink::OsiLink | ( | const OsiLink & | ) |
virtual OsiLink::~OsiLink | ( | ) | [virtual] |
virtual double OsiLink::infeasibility | ( | const OsiBranchingInformation * | info, | |
int & | whichWay | |||
) | const [virtual] |
Infeasibility - large is 0.5.
Reimplemented from OsiSOS.
virtual double OsiLink::feasibleRegion | ( | OsiSolverInterface * | solver, | |
const OsiBranchingInformation * | info | |||
) | const [virtual] |
Set bounds to fix the variable at the current (integer) value.
Given an integer value, set the lower and upper bounds to fix the variable. Returns amount it had to move variable.
Reimplemented from OsiSOS.
virtual OsiBranchingObject* OsiLink::createBranch | ( | OsiSolverInterface * | solver, | |
const OsiBranchingInformation * | info, | |||
int | way | |||
) | const [virtual] |
Creates a branching object.
The preferred direction is set by way
, 0 for down, 1 for up.
Reimplemented from OsiSOS.
virtual void OsiLink::resetSequenceEtc | ( | int | numberColumns, | |
const int * | originalColumns | |||
) | [virtual] |
Redoes data when sequence numbers change.
Reimplemented from OsiSOS.
int OsiLink::numberLinks | ( | ) | const [inline] |
Number of links for each member.
Definition at line 621 of file CbcLinked.hpp.
virtual bool OsiLink::canDoHeuristics | ( | ) | const [inline, virtual] |
Return true if object can take part in normal heuristics.
Reimplemented from OsiSOS.
Definition at line 626 of file CbcLinked.hpp.
virtual bool OsiLink::boundBranch | ( | ) | const [inline, virtual] |
Return true if branch should only bound variables.
Reimplemented from OsiObject.
Definition at line 630 of file CbcLinked.hpp.
double OsiLink::meshSize_ [private] |
data Current increment for y points
Definition at line 636 of file CbcLinked.hpp.
OsiOneLink* OsiLink::data_ [private] |
Links.
Definition at line 638 of file CbcLinked.hpp.
int OsiLink::numberLinks_ [private] |
Number of links.
Definition at line 640 of file CbcLinked.hpp.
int OsiLink::yRow_ [private] |
Row which defines y.
Definition at line 642 of file CbcLinked.hpp.
int OsiLink::yColumn_ [private] |
Column which defines y.
Definition at line 644 of file CbcLinked.hpp.