Public Member Functions | Protected Attributes
OsiUsesBiLinear Class Reference

Define a single variable class which is involved with OsiBiLinear objects. More...

#include <CbcLinked.hpp>

List of all members.

Public Member Functions

 OsiUsesBiLinear ()
 Default Constructor.
 OsiUsesBiLinear (const OsiSolverInterface *solver, int iColumn, int type)
 Useful constructor - passed solver index.
 OsiUsesBiLinear (int iColumn, double lower, double upper, int type)
 Useful constructor - passed solver index and original bounds.
 OsiUsesBiLinear (const OsiSimpleInteger &rhs, int type)
 Useful constructor - passed simple integer.
 OsiUsesBiLinear (const OsiUsesBiLinear &rhs)
 Copy constructor.
virtual OsiObject * clone () const
 Clone.
OsiUsesBiLinearoperator= (const OsiUsesBiLinear &rhs)
 Assignment operator.
virtual ~OsiUsesBiLinear ()
 Destructor.
virtual double infeasibility (const OsiBranchingInformation *info, int &whichWay) const
 Infeasibility - large is 0.5.
virtual OsiBranchingObject * createBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const
 Creates a branching object.
virtual double feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const
 Set bounds to fix the variable at the current value.
void addBiLinearObjects (OsiSolverLink *solver)
 Add all bi-linear objects.
 OsiUsesBiLinear ()
 Default Constructor.
 OsiUsesBiLinear (const OsiSolverInterface *solver, int iColumn, int type)
 Useful constructor - passed solver index.
 OsiUsesBiLinear (int iColumn, double lower, double upper, int type)
 Useful constructor - passed solver index and original bounds.
 OsiUsesBiLinear (const OsiSimpleInteger &rhs, int type)
 Useful constructor - passed simple integer.
 OsiUsesBiLinear (const OsiUsesBiLinear &rhs)
 Copy constructor.
virtual OsiObject * clone () const
 Clone.
OsiUsesBiLinearoperator= (const OsiUsesBiLinear &rhs)
 Assignment operator.
virtual ~OsiUsesBiLinear ()
 Destructor.
virtual double infeasibility (const OsiBranchingInformation *info, int &whichWay) const
 Infeasibility - large is 0.5.
virtual OsiBranchingObject * createBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const
 Creates a branching object.
virtual double feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const
 Set bounds to fix the variable at the current value.
void addBiLinearObjects (OsiSolverLink *solver)
 Add all bi-linear objects.

Protected Attributes

int numberBiLinear_
 data Number of bilinear objects (maybe could be more general)
int type_
 Type of variable - 0 continuous, 1 integer.
OsiObject ** objects_
 Objects.

Detailed Description

Define a single variable class which is involved with OsiBiLinear objects.

This is used so can make better decision on where to branch as it can look at all objects.

This version sees if it can re-use code from OsiSimpleInteger even if not an integer variable. If not then need to duplicate code.

Definition at line 1137 of file CbcLinked.hpp.


Constructor & Destructor Documentation

OsiUsesBiLinear::OsiUsesBiLinear ( )

Default Constructor.

OsiUsesBiLinear::OsiUsesBiLinear ( const OsiSolverInterface *  solver,
int  iColumn,
int  type 
)

Useful constructor - passed solver index.

OsiUsesBiLinear::OsiUsesBiLinear ( int  iColumn,
double  lower,
double  upper,
int  type 
)

Useful constructor - passed solver index and original bounds.

OsiUsesBiLinear::OsiUsesBiLinear ( const OsiSimpleInteger &  rhs,
int  type 
)

Useful constructor - passed simple integer.

OsiUsesBiLinear::OsiUsesBiLinear ( const OsiUsesBiLinear rhs)

Copy constructor.

virtual OsiUsesBiLinear::~OsiUsesBiLinear ( ) [virtual]

Destructor.

OsiUsesBiLinear::OsiUsesBiLinear ( )

Default Constructor.

OsiUsesBiLinear::OsiUsesBiLinear ( const OsiSolverInterface *  solver,
int  iColumn,
int  type 
)

Useful constructor - passed solver index.

OsiUsesBiLinear::OsiUsesBiLinear ( int  iColumn,
double  lower,
double  upper,
int  type 
)

Useful constructor - passed solver index and original bounds.

OsiUsesBiLinear::OsiUsesBiLinear ( const OsiSimpleInteger &  rhs,
int  type 
)

Useful constructor - passed simple integer.

OsiUsesBiLinear::OsiUsesBiLinear ( const OsiUsesBiLinear rhs)

Copy constructor.

virtual OsiUsesBiLinear::~OsiUsesBiLinear ( ) [virtual]

Destructor.


Member Function Documentation

virtual OsiObject* OsiUsesBiLinear::clone ( ) const [virtual]

Clone.

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

Assignment operator.

virtual double OsiUsesBiLinear::infeasibility ( const OsiBranchingInformation *  info,
int &  whichWay 
) const [virtual]

Infeasibility - large is 0.5.

virtual OsiBranchingObject* OsiUsesBiLinear::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.

virtual double OsiUsesBiLinear::feasibleRegion ( OsiSolverInterface *  solver,
const OsiBranchingInformation *  info 
) const [virtual]

Set bounds to fix the variable at the current value.

Given an current value, set the lower and upper bounds to fix the variable. Returns amount it had to move variable.

void OsiUsesBiLinear::addBiLinearObjects ( OsiSolverLink solver)

Add all bi-linear objects.

virtual OsiObject* OsiUsesBiLinear::clone ( ) const [virtual]

Clone.

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

Assignment operator.

virtual double OsiUsesBiLinear::infeasibility ( const OsiBranchingInformation *  info,
int &  whichWay 
) const [virtual]

Infeasibility - large is 0.5.

virtual OsiBranchingObject* OsiUsesBiLinear::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.

virtual double OsiUsesBiLinear::feasibleRegion ( OsiSolverInterface *  solver,
const OsiBranchingInformation *  info 
) const [virtual]

Set bounds to fix the variable at the current value.

Given an current value, set the lower and upper bounds to fix the variable. Returns amount it had to move variable.

void OsiUsesBiLinear::addBiLinearObjects ( OsiSolverLink solver)

Add all bi-linear objects.


Member Data Documentation

data Number of bilinear objects (maybe could be more general)

Definition at line 1188 of file CbcLinked.hpp.

int OsiUsesBiLinear::type_ [protected]

Type of variable - 0 continuous, 1 integer.

Definition at line 1190 of file CbcLinked.hpp.

OsiObject ** OsiUsesBiLinear::objects_ [protected]

Objects.

Definition at line 1192 of file CbcLinked.hpp.


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