# OsiLotsize Class Reference

Lotsize class. More...

`#include <OsiBranchingObject.hpp>`

Inheritance diagram for OsiLotsize:
[legend]
Collaboration diagram for OsiLotsize:
[legend]

List of all members.

## Public Member Functions
| OsiLotsize ()
| OsiLotsize (const OsiSolverInterface *solver, int iColumn, int numberPoints, const double *points, bool range=false)
| OsiLotsize (const OsiLotsize &)
virtual OsiObject * | clone () const
| Clone.
OsiLotsize & | operator= (const OsiLotsize &rhs)
| Assignment operator.
| ~OsiLotsize ()
virtual double | infeasibility (const OsiBranchingInformation *info, int &whichWay) const
| Infeasibility - large is 0.5.
virtual double | feasibleRegion (OsiSolverInterface *solver, const OsiBranchingInformation *info) const
| Set bounds to contain the current solution.
virtual OsiBranchingObject * | createBranch (OsiSolverInterface *solver, const OsiBranchingInformation *info, int way) const
| Creates a branching object.
void | setColumnNumber (int value)
| Set solver column number.
virtual int | columnNumber () const
| Column number if single column object -1 otherwise, so returns >= 0 Used by heuristics.
virtual void | resetBounds (const OsiSolverInterface *solver)
| Reset original upper and lower bound values from the solver.
bool | findRange (double value, double integerTolerance) const
| Finds range of interest so value is feasible in range range_ or infeasible between hi[range_] and lo[range_+1].
virtual void | floorCeiling (double &floorLotsize, double &ceilingLotsize, double value, double tolerance) const
| Returns floor and ceiling.
double | originalLowerBound () const
| Original bounds.
double | originalUpperBound () const
int | rangeType () const
| Type - 1 points, 2 ranges.
int | numberRanges () const
| Number of points.
double * | bound () const
| Ranges.
virtual void | resetSequenceEtc (int numberColumns, const int *originalColumns)
| Change column numbers after preprocessing.
virtual double | upEstimate () const
| Return "up" estimate (default 1.0e-5).
virtual double | downEstimate () const
| Return "down" estimate (default 1.0e-5).
virtual bool | canHandleShadowPrices () const
| Return true if knows how to deal with Pseudo Shadow Prices.
virtual bool | canDoHeuristics () const
| Return true if object can take part in normal heuristics.
## Private Attributes
int | columnNumber_
| data
int | rangeType_
| Type - 1 points, 2 ranges.
int | numberRanges_
| Number of points.
double | largestGap_
double * | bound_
| Ranges.
int | range_
| Current range.

## Detailed Description

Lotsize class.

Definition at line 827 of file OsiBranchingObject.hpp.

## Constructor & Destructor Documentation

OsiLotsize::OsiLotsize | ( |  | ) |

OsiLotsize::OsiLotsize | ( | const OsiSolverInterface * | solver,
|  | int | iColumn,
|  | int | numberPoints,
|  | const double * | points,
|  | bool | range = `false` |
| ) |  |  |

OsiLotsize::OsiLotsize | ( | const OsiLotsize & |  | ) |

OsiLotsize::~OsiLotsize | ( |  | ) |

## Member Function Documentation

virtual OsiObject* OsiLotsize::clone | ( |  | ) | const`[virtual]`

Clone.

Implements OsiObject.

OsiLotsize& OsiLotsize::operator= | ( | const OsiLotsize & | rhs | ) |

Assignment operator.

Reimplemented from OsiObject2.

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

Infeasibility - large is 0.5.

Implements OsiObject.

virtual double OsiLotsize::feasibleRegion | ( | OsiSolverInterface * | solver,
|  | const OsiBranchingInformation * | info |
| ) |  |  | const`[virtual]`

Set bounds to contain the current solution.

More precisely, for the variable associated with this object, take the value given in the current solution, force it within the current bounds if required, then set the bounds to fix the variable at the integer nearest the solution value. Returns amount it had to move variable.

Implements OsiObject.

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

void OsiLotsize::setColumnNumber | ( | int | value | ) | `[inline]`

Set solver column number.

Definition at line 874 of file OsiBranchingObject.hpp.

virtual int OsiLotsize::columnNumber | ( |  | ) | const`[virtual]`

Column number if single column object -1 otherwise, so returns >= 0 Used by heuristics.

Reimplemented from OsiObject.

virtual void OsiLotsize::resetBounds | ( | const OsiSolverInterface * | solver | ) | `[virtual]`

Reset original upper and lower bound values from the solver.

Handy for updating bounds held in this object after bounds held in the solver have been tightened.

Reimplemented from OsiObject.

bool OsiLotsize::findRange | ( | double | value,
|  | double | integerTolerance |
| ) |  |  | const

Finds range of interest so value is feasible in range range_ or infeasible between hi[range_] and lo[range_+1].

Returns true if feasible.

virtual void OsiLotsize::floorCeiling | ( | double & | floorLotsize,
|  | double & | ceilingLotsize,
|  | double | value,
|  | double | tolerance |
| ) |  |  | const`[virtual]`

Returns floor and ceiling.

double OsiLotsize::originalLowerBound | ( |  | ) | const`[inline]`

Original bounds.

Definition at line 900 of file OsiBranchingObject.hpp.

double OsiLotsize::originalUpperBound | ( |  | ) | const`[inline]`

Definition at line 902 of file OsiBranchingObject.hpp.

int OsiLotsize::rangeType | ( |  | ) | const`[inline]`

Type - 1 points, 2 ranges.

Definition at line 905 of file OsiBranchingObject.hpp.

int OsiLotsize::numberRanges | ( |  | ) | const`[inline]`

Number of points.

Definition at line 908 of file OsiBranchingObject.hpp.

double* OsiLotsize::bound | ( |  | ) | const`[inline]`

Ranges.

Definition at line 911 of file OsiBranchingObject.hpp.

virtual void OsiLotsize::resetSequenceEtc | ( | int | numberColumns,
|  | const int * | originalColumns |
| ) |  |  | `[virtual]`

Change column numbers after preprocessing.

Reimplemented from OsiObject.

virtual double OsiLotsize::upEstimate | ( |  | ) | const`[virtual]`

Return "up" estimate (default 1.0e-5).

Reimplemented from OsiObject.

virtual double OsiLotsize::downEstimate | ( |  | ) | const`[virtual]`

Return "down" estimate (default 1.0e-5).

Reimplemented from OsiObject.

virtual bool OsiLotsize::canHandleShadowPrices | ( |  | ) | const`[inline, virtual]`

Return true if knows how to deal with Pseudo Shadow Prices.

Reimplemented from OsiObject.

Definition at line 922 of file OsiBranchingObject.hpp.

virtual bool OsiLotsize::canDoHeuristics | ( |  | ) | const`[inline, virtual]`

Return true if object can take part in normal heuristics.

Reimplemented from OsiObject.

Definition at line 926 of file OsiBranchingObject.hpp.

## Member Data Documentation

int OsiLotsize::columnNumber_`[private]`

data

Column number in model

Definition at line 933 of file OsiBranchingObject.hpp.

int OsiLotsize::rangeType_`[private]`

Type - 1 points, 2 ranges.

Definition at line 935 of file OsiBranchingObject.hpp.

int OsiLotsize::numberRanges_`[private]`

Number of points.

Definition at line 937 of file OsiBranchingObject.hpp.

double OsiLotsize::largestGap_`[private]`

Definition at line 939 of file OsiBranchingObject.hpp.

double* OsiLotsize::bound_`[private]`

Ranges.

Definition at line 941 of file OsiBranchingObject.hpp.

int OsiLotsize::range_`[mutable, private]`

Current range.

Definition at line 943 of file OsiBranchingObject.hpp.

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

- /home/coin/svn-release/Smi-0.93.1/Osi/src/Osi/OsiBranchingObject.hpp