Cbc  2.10.3
Public Member Functions | Protected Attributes | List of all members
OsiLink Class Reference

Define Special Linked Ordered Sets. More...

#include <CbcLinked.hpp>

+ Inheritance diagram for OsiLink:

Public Member Functions

 OsiLink ()
 
 OsiLink (const OsiSolverInterface *solver, int yRow, int yColumn, double meshSize)
 Useful constructor -. More...
 
 OsiLink (const OsiLink &)
 
virtual OsiObjectclone () const
 Clone. More...
 
OsiLinkoperator= (const OsiLink &rhs)
 
virtual ~OsiLink ()
 
virtual double infeasibility (const OsiBranchingInformation *info, int &whichWay) const
 Infeasibility - large is 0.5. More...
 
virtual double feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const
 Set bounds to fix the variable at the current (integer) value. More...
 
virtual OsiBranchingObjectcreateBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const
 Creates a branching object. More...
 
virtual void resetSequenceEtc (int numberColumns, const int *originalColumns)
 Redoes data when sequence numbers change. More...
 
int numberLinks () const
 Number of links for each member. More...
 
virtual bool canDoHeuristics () const
 Return true if object can take part in normal heuristics. More...
 
virtual bool boundBranch () const
 Return true if branch should only bound variables. More...
 
double infeasibility (const OsiSolverInterface *solver, int &whichWay) const
 
virtual double infeasibility (const OsiBranchingInformation *info, int &whichWay) const =0
 
double infeasibility () const
 
virtual double feasibleRegion (OsiSolverInterface *solver) const
 
virtual double feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const =0
 
- Public Member Functions inherited from OsiSOS
 OsiSOS ()
 
 OsiSOS (const OsiSolverInterface *solver, int numberMembers, const int *which, const double *weights, int type=1)
 
 OsiSOS (const OsiSOS &)
 
OsiSOSoperator= (const OsiSOS &rhs)
 
virtual ~OsiSOS ()
 
virtual double upEstimate () const
 
virtual double downEstimate () const
 
int numberMembers () const
 
const int * members () const
 
int sosType () const
 
int setType () const
 
const double * weights () const
 
void setIntegerValued (bool yesNo)
 
virtual bool canHandleShadowPrices () const
 
void setNumberMembers (int value)
 
int * mutableMembers () const
 
void setSosType (int value)
 
double * mutableWeights () const
 
double infeasibility (const OsiSolverInterface *solver, int &whichWay) const
 
double infeasibility () const
 
virtual double feasibleRegion (OsiSolverInterface *solver) const
 
- Public Member Functions inherited from OsiObject2
 OsiObject2 ()
 
 OsiObject2 (const OsiObject2 &)
 
OsiObject2operator= (const OsiObject2 &rhs)
 
virtual ~OsiObject2 ()
 
void setPreferredWay (int value)
 
virtual int preferredWay () const
 
- Public Member Functions inherited from OsiObject
 OsiObject ()
 
 OsiObject (const OsiObject &)
 
OsiObjectoperator= (const OsiObject &rhs)
 
virtual ~OsiObject ()
 
double infeasibility (const OsiSolverInterface *solver, int &whichWay) const
 
virtual double checkInfeasibility (const OsiBranchingInformation *info) const
 
virtual bool canMoveToNearest () const
 
virtual int columnNumber () const
 
int priority () const
 
void setPriority (int priority)
 
int numberWays () const
 
void setNumberWays (int numberWays)
 
void setWhichWay (int way)
 
int whichWay () const
 
double infeasibility () const
 
virtual void resetBounds (const OsiSolverInterface *)
 
virtual void updateBefore (const OsiObject *)
 
virtual void updateAfter (const OsiObject *, const OsiObject *)
 

Protected Attributes

double meshSize_
 data Current increment for y points More...
 
OsiOneLinkdata_
 Links. More...
 
int numberLinks_
 Number of links. More...
 
int yRow_
 Row which defines y. More...
 
int yColumn_
 Column which defines y. More...
 
- Protected Attributes inherited from OsiSOS
int * members_
 
double * weights_
 
int numberMembers_
 
int sosType_
 
bool integerValued_
 
- Protected Attributes inherited from OsiObject2
int preferredWay_
 
double otherInfeasibility_
 
- Protected Attributes inherited from OsiObject
double infeasibility_
 
short whichWay_
 
short numberWays_
 
int priority_
 

Detailed Description

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 612 of file CbcLinked.hpp.

Constructor & Destructor Documentation

◆ OsiLink() [1/3]

OsiLink::OsiLink ( )

◆ OsiLink() [2/3]

OsiLink::OsiLink ( const OsiSolverInterface solver,
int  yRow,
int  yColumn,
double  meshSize 
)

Useful constructor -.

◆ OsiLink() [3/3]

OsiLink::OsiLink ( const OsiLink )

◆ ~OsiLink()

virtual OsiLink::~OsiLink ( )
virtual

Member Function Documentation

◆ clone()

virtual OsiObject* OsiLink::clone ( ) const
virtual

Clone.

Reimplemented from OsiSOS.

◆ operator=()

OsiLink& OsiLink::operator= ( const OsiLink rhs)

◆ infeasibility() [1/4]

virtual double OsiLink::infeasibility ( const OsiBranchingInformation info,
int &  whichWay 
) const
virtual

Infeasibility - large is 0.5.

Reimplemented from OsiSOS.

◆ feasibleRegion() [1/3]

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.

◆ createBranch()

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.

◆ resetSequenceEtc()

virtual void OsiLink::resetSequenceEtc ( int  numberColumns,
const int *  originalColumns 
)
virtual

Redoes data when sequence numbers change.

Reimplemented from OsiSOS.

◆ numberLinks()

int OsiLink::numberLinks ( ) const
inline

Number of links for each member.

Definition at line 658 of file CbcLinked.hpp.

◆ canDoHeuristics()

virtual bool OsiLink::canDoHeuristics ( ) const
inlinevirtual

Return true if object can take part in normal heuristics.

Reimplemented from OsiSOS.

Definition at line 665 of file CbcLinked.hpp.

◆ boundBranch()

virtual bool OsiLink::boundBranch ( ) const
inlinevirtual

Return true if branch should only bound variables.

Reimplemented from OsiObject.

Definition at line 671 of file CbcLinked.hpp.

◆ infeasibility() [2/4]

double OsiObject::infeasibility

◆ infeasibility() [3/4]

virtual double OsiObject::infeasibility

◆ infeasibility() [4/4]

double OsiObject::infeasibility

◆ feasibleRegion() [2/3]

virtual double OsiObject::feasibleRegion

◆ feasibleRegion() [3/3]

virtual double OsiObject::feasibleRegion

Member Data Documentation

◆ meshSize_

double OsiLink::meshSize_
protected

data Current increment for y points

Definition at line 679 of file CbcLinked.hpp.

◆ data_

OsiOneLink* OsiLink::data_
protected

Links.

Definition at line 681 of file CbcLinked.hpp.

◆ numberLinks_

int OsiLink::numberLinks_
protected

Number of links.

Definition at line 683 of file CbcLinked.hpp.

◆ yRow_

int OsiLink::yRow_
protected

Row which defines y.

Definition at line 685 of file CbcLinked.hpp.

◆ yColumn_

int OsiLink::yColumn_
protected

Column which defines y.

Definition at line 687 of file CbcLinked.hpp.


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