Cbc  2.10.10
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | List of all members
OsiUsesBiLinear Class Reference

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

#include <CbcLinked.hpp>

+ Inheritance diagram for OsiUsesBiLinear:
+ Collaboration diagram for OsiUsesBiLinear:

Public Member Functions

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

Protected Attributes

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

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

Constructor & Destructor Documentation

◆ OsiUsesBiLinear() [1/5]

OsiUsesBiLinear::OsiUsesBiLinear ( )

Default Constructor.

◆ OsiUsesBiLinear() [2/5]

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

Useful constructor - passed solver index.

◆ OsiUsesBiLinear() [3/5]

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

Useful constructor - passed solver index and original bounds.

◆ OsiUsesBiLinear() [4/5]

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

Useful constructor - passed simple integer.

◆ OsiUsesBiLinear() [5/5]

OsiUsesBiLinear::OsiUsesBiLinear ( const OsiUsesBiLinear rhs)

Copy constructor.

◆ ~OsiUsesBiLinear()

virtual OsiUsesBiLinear::~OsiUsesBiLinear ( )
virtual

Destructor.

Member Function Documentation

◆ clone()

virtual OsiObject* OsiUsesBiLinear::clone ( ) const
virtual

Clone.

◆ operator=()

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

Assignment operator.

◆ infeasibility()

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

Infeasibility - large is 0.5.

◆ createBranch()

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.

◆ feasibleRegion()

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.

◆ addBiLinearObjects()

void OsiUsesBiLinear::addBiLinearObjects ( OsiSolverLink solver)

Add all bi-linear objects.

Member Data Documentation

◆ numberBiLinear_

int OsiUsesBiLinear::numberBiLinear_
protected

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

Definition at line 1227 of file CbcLinked.hpp.

◆ type_

int OsiUsesBiLinear::type_
protected

Type of variable - 0 continuous, 1 integer.

Definition at line 1229 of file CbcLinked.hpp.

◆ objects_

OsiObject** OsiUsesBiLinear::objects_
protected

Objects.

Definition at line 1231 of file CbcLinked.hpp.


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