Define Special Ordered Sets of type 1 and 2. More...
#include <CbcBranchActual.hpp>


| Public Member Functions | |
| CbcSOS () | |
| CbcSOS (CbcModel *model, int numberMembers, const int *which, const double *weights, int identifier, int type=1) | |
| Useful constructor - which are indices and weights are also given. | |
| CbcSOS (const CbcSOS &) | |
| virtual CbcObject * | clone () const | 
| Clone. | |
| CbcSOS & | operator= (const CbcSOS &rhs) | 
| Assignment operator. | |
| ~CbcSOS () | |
| virtual double | infeasibility (int &preferredWay) const | 
| Infeasibility - large is 0.5. | |
| virtual void | feasibleRegion () | 
| This looks at solution and sets bounds to contain solution. | |
| virtual CbcBranchingObject * | createBranch (int way) | 
| Creates a branching object. | |
| virtual OsiSolverBranch * | solverBranch () const | 
| Create an OsiSolverBranch object. | |
| virtual void | redoSequenceEtc (CbcModel *model, int numberColumns, const int *originalColumns) | 
| Redoes data when sequence numbers change. | |
| OsiSOS * | osiObject (const OsiSolverInterface *solver) const | 
| Construct an OsiSOS object. | |
| int | numberMembers () const | 
| Number of members. | |
| const int * | members () const | 
| Members (indices in range 0 ... numberColumns-1). | |
| int | sosType () const | 
| SOS type. | |
| const double * | weights () const | 
| Array of weights. | |
| void | setNumberMembers (int n) | 
| Set number of members. | |
| int * | mutableMembers () const | 
| Members (indices in range 0 ... numberColumns-1). | |
| double * | mutableWeights () const | 
| Array of weights. | |
| virtual bool | canDoHeuristics () const | 
| Return true if object can take part in normal heuristics. | |
| void | setIntegerValued (bool yesNo) | 
| Set whether set is integer valued or not. | |
| Private Attributes | |
| int * | members_ | 
| data | |
| double * | weights_ | 
| Weights. | |
| int | numberMembers_ | 
| Number of members. | |
| int | sosType_ | 
| SOS type. | |
| bool | integerValued_ | 
| Whether integer valued. | |
Define Special Ordered Sets of type 1 and 2.
These do not have to be integer - so do not appear in lists of integers.
which_ points directly to columns of matrix
Definition at line 101 of file CbcBranchActual.hpp.
| CbcSOS::CbcSOS | ( | ) | 
| CbcSOS::CbcSOS | ( | CbcModel * | model, | |
| int | numberMembers, | |||
| const int * | which, | |||
| const double * | weights, | |||
| int | identifier, | |||
| int | type = 1 | |||
| ) | 
Useful constructor - which are indices and weights are also given.
If null then 0,1,2.. type is SOS type
| CbcSOS::CbcSOS | ( | const CbcSOS & | ) | 
| CbcSOS::~CbcSOS | ( | ) | 
| virtual double CbcSOS::infeasibility | ( | int & | preferredWay | ) | const  [virtual] | 
Infeasibility - large is 0.5.
Implements CbcObject.
| virtual void CbcSOS::feasibleRegion | ( | ) |  [virtual] | 
This looks at solution and sets bounds to contain solution.
Implements CbcObject.
| virtual CbcBranchingObject* CbcSOS::createBranch | ( | int | way | ) |  [virtual] | 
Creates a branching object.
Implements CbcObject.
| virtual OsiSolverBranch* CbcSOS::solverBranch | ( | ) | const  [virtual] | 
Create an OsiSolverBranch object.
This returns NULL if branch not represented by bound changes
Reimplemented from CbcObject.
| virtual void CbcSOS::redoSequenceEtc | ( | CbcModel * | model, | |
| int | numberColumns, | |||
| const int * | originalColumns | |||
| ) |  [virtual] | 
Redoes data when sequence numbers change.
Reimplemented from CbcObject.
| OsiSOS* CbcSOS::osiObject | ( | const OsiSolverInterface * | solver | ) | const | 
Construct an OsiSOS object.
| int CbcSOS::numberMembers | ( | ) | const  [inline] | 
Number of members.
Definition at line 152 of file CbcBranchActual.hpp.
| const int* CbcSOS::members | ( | ) | const  [inline] | 
Members (indices in range 0 ... numberColumns-1).
Definition at line 156 of file CbcBranchActual.hpp.
| int CbcSOS::sosType | ( | ) | const  [inline] | 
SOS type.
Definition at line 160 of file CbcBranchActual.hpp.
| const double* CbcSOS::weights | ( | ) | const  [inline] | 
Array of weights.
Definition at line 164 of file CbcBranchActual.hpp.
| void CbcSOS::setNumberMembers | ( | int | n | ) |  [inline] | 
Set number of members.
Definition at line 168 of file CbcBranchActual.hpp.
| int* CbcSOS::mutableMembers | ( | ) | const  [inline] | 
Members (indices in range 0 ... numberColumns-1).
Definition at line 172 of file CbcBranchActual.hpp.
| double* CbcSOS::mutableWeights | ( | ) | const  [inline] | 
Array of weights.
Definition at line 176 of file CbcBranchActual.hpp.
| virtual bool CbcSOS::canDoHeuristics | ( | ) | const  [inline, virtual] | 
Return true if object can take part in normal heuristics.
Reimplemented from OsiObject.
Definition at line 181 of file CbcBranchActual.hpp.
| void CbcSOS::setIntegerValued | ( | bool | yesNo | ) |  [inline] | 
Set whether set is integer valued or not.
Definition at line 184 of file CbcBranchActual.hpp.
| int* CbcSOS::members_  [private] | 
data
Members (indices in range 0 ... numberColumns-1)
Definition at line 190 of file CbcBranchActual.hpp.
| double* CbcSOS::weights_  [private] | 
Weights.
Definition at line 192 of file CbcBranchActual.hpp.
| int CbcSOS::numberMembers_  [private] | 
Number of members.
Definition at line 195 of file CbcBranchActual.hpp.
| int CbcSOS::sosType_  [private] | 
SOS type.
Definition at line 197 of file CbcBranchActual.hpp.
| bool CbcSOS::integerValued_  [private] | 
Whether integer valued.
Definition at line 199 of file CbcBranchActual.hpp.
 1.6.1
 1.6.1