Osi  0.108.6
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
OsiSolverBranch Class Reference

Solver Branch Class. More...

#include <OsiSolverBranch.hpp>

Public Member Functions

Add and Get methods
void addBranch (int iColumn, double value)
 Add a simple branch (i.e. first sets ub of floor(value), second lb of ceil(value)) More...
 
void addBranch (int way, int numberTighterLower, const int *whichLower, const double *newLower, int numberTighterUpper, const int *whichUpper, const double *newUpper)
 Add bounds - way =-1 is first , +1 is second. More...
 
void addBranch (int way, int numberColumns, const double *oldLower, const double *newLower, const double *oldUpper, const double *newUpper)
 Add bounds - way =-1 is first , +1 is second. More...
 
void applyBounds (OsiSolverInterface &solver, int way) const
 Apply bounds. More...
 
bool feasibleOneWay (const OsiSolverInterface &solver) const
 Returns true if current solution satsifies one side of branch. More...
 
const int * starts () const
 Starts. More...
 
const int * which () const
 Which variables. More...
 
const double * bounds () const
 Bounds. More...
 
Constructors and destructors
 OsiSolverBranch ()
 Default Constructor. More...
 
 OsiSolverBranch (const OsiSolverBranch &rhs)
 Copy constructor. More...
 
OsiSolverBranchoperator= (const OsiSolverBranch &rhs)
 Assignment operator. More...
 
 ~OsiSolverBranch ()
 Destructor. More...
 

Private Attributes

Private member data
int start_ [5]
 Start of lower first, upper first, lower second, upper second. More...
 
int * indices_
 Column numbers (if >= numberColumns treat as rows) More...
 
double * bound_
 New bounds. More...
 

Detailed Description

Solver Branch Class.

This provides information on a branch as a set of tighter bounds on both ways

Definition at line 18 of file OsiSolverBranch.hpp.

Constructor & Destructor Documentation

OsiSolverBranch::OsiSolverBranch ( )

Default Constructor.

OsiSolverBranch::OsiSolverBranch ( const OsiSolverBranch rhs)

Copy constructor.

OsiSolverBranch::~OsiSolverBranch ( )

Destructor.

Member Function Documentation

void OsiSolverBranch::addBranch ( int  iColumn,
double  value 
)

Add a simple branch (i.e. first sets ub of floor(value), second lb of ceil(value))

void OsiSolverBranch::addBranch ( int  way,
int  numberTighterLower,
const int *  whichLower,
const double *  newLower,
int  numberTighterUpper,
const int *  whichUpper,
const double *  newUpper 
)

Add bounds - way =-1 is first , +1 is second.

void OsiSolverBranch::addBranch ( int  way,
int  numberColumns,
const double *  oldLower,
const double *  newLower,
const double *  oldUpper,
const double *  newUpper 
)

Add bounds - way =-1 is first , +1 is second.

void OsiSolverBranch::applyBounds ( OsiSolverInterface solver,
int  way 
) const

Apply bounds.

bool OsiSolverBranch::feasibleOneWay ( const OsiSolverInterface solver) const

Returns true if current solution satsifies one side of branch.

const int* OsiSolverBranch::starts ( ) const
inline

Starts.

Definition at line 38 of file OsiSolverBranch.hpp.

const int* OsiSolverBranch::which ( ) const
inline

Which variables.

Definition at line 43 of file OsiSolverBranch.hpp.

const double* OsiSolverBranch::bounds ( ) const
inline

Bounds.

Definition at line 48 of file OsiSolverBranch.hpp.

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

Assignment operator.

Member Data Documentation

int OsiSolverBranch::start_[5]
private

Start of lower first, upper first, lower second, upper second.

Definition at line 74 of file OsiSolverBranch.hpp.

int* OsiSolverBranch::indices_
private

Column numbers (if >= numberColumns treat as rows)

Definition at line 76 of file OsiSolverBranch.hpp.

double* OsiSolverBranch::bound_
private

New bounds.

Definition at line 78 of file OsiSolverBranch.hpp.


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