- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# ClpInterior Class Reference

This solves LPs using interior point methods. More...

`#include <ClpInterior.hpp>`

Inheritance diagram for ClpInterior:

[legend]
Collaboration diagram for ClpInterior:

[legend]
List of all members.

## data. Many arrays have a row part and a column part.
There is a single array with both - columns then rows and then normally two arrays pointing to rows and columns. The single array is the owner of memory
double | xsize_
double | zsize_
double * | rhs_
| Rhs.
double * | x_
double * | y_
double * | dj_
double | largestPrimalError_
| Largest error on Ax-b.
double | largestDualError_
| Largest error on basic duals.
double | sumDualInfeasibilities_
| Sum of dual infeasibilities.
double | sumPrimalInfeasibilities_
| Sum of primal infeasibilities.
double | worstComplementarity_
| Worst complementarity.
double * | lower_
| Working copy of lower bounds (Owner of arrays below).
double * | rowLowerWork_
| Row lower bounds - working copy.
double * | columnLowerWork_
| Column lower bounds - working copy.
double * | upper_
| Working copy of upper bounds (Owner of arrays below).
double * | rowUpperWork_
| Row upper bounds - working copy.
double * | columnUpperWork_
| Column upper bounds - working copy.
double * | cost_
| Working copy of objective.
ClpLsqr * | lsqrObject_
| Pointer to Lsqr object.
ClpPdcoBase * | pdcoStuff_
| Pointer to stuff.
double | mu_
| Below here is standard barrier stuff mu.
double | objectiveNorm_
| objectiveNorm.
double | rhsNorm_
| rhsNorm.
double | solutionNorm_
| solutionNorm.
double | dualObjective_
| dualObjective.
double | primalObjective_
| primalObjective.
double | diagonalNorm_
| diagonalNorm.
double | stepLength_
| stepLength
double | linearPerturbation_
| linearPerturbation
double | diagonalPerturbation_
| diagonalPerturbation
double | gamma_
double | delta_
double | targetGap_
| targetGap
double | projectionTolerance_
| projectionTolerance
double | maximumRHSError_
| maximumRHSError. maximum Ax
double | maximumBoundInfeasibility_
| maximumBoundInfeasibility.
double | maximumDualError_
| maximumDualError.
double | diagonalScaleFactor_
| diagonalScaleFactor.
double | scaleFactor_
| scaleFactor. For scaling objective
double | actualPrimalStep_
| actualPrimalStep
double | actualDualStep_
| actualDualStep
double | smallestInfeasibility_
| smallestInfeasibility
double | historyInfeasibility_ [LENGTH_HISTORY]
double | complementarityGap_
| complementarityGap.
double | baseObjectiveNorm_
| baseObjectiveNorm
double | worstDirectionAccuracy_
| worstDirectionAccuracy
double | maximumRHSChange_
| maximumRHSChange
double * | errorRegion_
| errorRegion. i.e. Ax
double * | rhsFixRegion_
| rhsFixRegion.
double * | upperSlack_
| upperSlack
double * | lowerSlack_
| lowerSlack
double * | diagonal_
| diagonal
double * | solution_
| solution
double * | workArray_
| work array
double * | deltaX_
| delta X
double * | deltaY_
| delta Y
double * | deltaZ_
| deltaZ.
double * | deltaW_
| deltaW.
double * | deltaSU_
| deltaS.
double * | deltaSL_
double * | primalR_
| Primal regularization array.
double * | dualR_
| Dual regularization array.
double * | rhsB_
| rhs B
double * | rhsU_
| rhsU.
double * | rhsL_
| rhsL.
double * | rhsZ_
| rhsZ.
double * | rhsW_
| rhsW.
double * | rhsC_
| rhs C
double * | zVec_
| zVec
double * | wVec_
| wVec
ClpCholeskyBase * | cholesky_
| cholesky.
int | numberComplementarityPairs_
| numberComplementarityPairs i.e. ones with lower and/or upper bounds (not fixed)
int | numberComplementarityItems_
| numberComplementarityItems_ i.e. number of active bounds
int | maximumBarrierIterations_
| Maximum iterations.
bool | gonePrimalFeasible_
| gonePrimalFeasible.
bool | goneDualFeasible_
| goneDualFeasible.
int | algorithm_
| Which algorithm being used.
## Public Member Functions
Constructors and destructor and copy
| ClpInterior ()
| Default constructor.
| ClpInterior (const ClpInterior &)
| Copy constructor.
| ClpInterior (const ClpModel &)
| Copy constructor from model.
| ClpInterior (const ClpModel *wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns, bool dropNames=true, bool dropIntegers=true)
| Subproblem constructor.
ClpInterior & | operator= (const ClpInterior &rhs)
| Assignment operator. This copies the data.
| ~ClpInterior ()
| Destructor.
void | loadProblem (const ClpMatrixBase &matrix, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub, const double *rowObjective=NULL)
| Loads a problem (the constraints on the rows are given by lower and upper bounds).
void | loadProblem (const CoinPackedMatrix &matrix, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub, const double *rowObjective=NULL)
| Default constructor.
void | loadProblem (const int numcols, const int numrows, const CoinBigIndex *start, const int *index, const double *value, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub, const double *rowObjective=NULL)
| Just like the other loadProblem() method except that the matrix is given in a standard column major ordered format (without gaps).
void | loadProblem (const int numcols, const int numrows, const CoinBigIndex *start, const int *index, const double *value, const int *length, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub, const double *rowObjective=NULL)
| This one is for after presolve to save memory.
int | readMps (const char *filename, bool keepNames=false, bool ignoreErrors=false)
| Read an mps file from the given filename.
void | borrowModel (ClpModel &otherModel)
| Borrow model.
void | returnModel (ClpModel &otherModel)
| Return model - updates any scalars.
Functions most useful to user
int | pdco ()
| Pdco algorithm - see ClpPdco.hpp for method.
int | pdco (ClpPdcoBase *stuff, Options &options, Info &info, Outfo &outfo)
| Pdco algorithm - see ClpPdco.hpp for method.
int | primalDual ()
| Primal-Dual Predictor-Corrector barrier.
most useful gets and sets
bool | primalFeasible () const
| If problem is primal feasible.
bool | dualFeasible () const
| If problem is dual feasible.
int | algorithm () const
| Current (or last) algorithm.
void | setAlgorithm (int value)
| Set algorithm.
double | sumDualInfeasibilities () const
| Sum of dual infeasibilities.
double | sumPrimalInfeasibilities () const
| Sum of primal infeasibilities.
double | dualObjective () const
| dualObjective.
double | primalObjective () const
| primalObjective.
double | diagonalNorm () const
| diagonalNorm
double | linearPerturbation () const
| linearPerturbation
void | setLinearPerturbation (double value)
| If problem is primal feasible.
double | diagonalPerturbation () const
| diagonalPerturbation
void | setDiagonalPerturbation (double value)
| If problem is primal feasible.
double | gamma () const
| gamma
void | setGamma (double value)
| If problem is primal feasible.
double | delta () const
| delta
void | setDelta (double value)
| If problem is primal feasible.
double | complementarityGap () const
| ComplementarityGap.
most useful gets and sets
double | largestPrimalError () const
| Largest error on Ax-b.
double | largestDualError () const
| Largest error on basic duals.
int | maximumBarrierIterations () const
| Maximum iterations.
void | setMaximumBarrierIterations (int value)
| Largest error on Ax-b.
void | setCholesky (ClpCholeskyBase *cholesky)
| Set cholesky (and delete present one).
int | numberFixed () const
| Return number fixed to see if worth presolving.
void | fixFixed (bool reallyFix=true)
| fix variables interior says should be.
double * | primalR () const
| Primal erturbation vector.
double * | dualR () const
| Dual erturbation vector.
public methods
double | rawObjectiveValue () const
| Raw objective value (so always minimize).
int | isColumn (int sequence) const
| Returns 1 if sequence indicates column.
int | sequenceWithin (int sequence) const
| Returns sequence number within section.
void | checkSolution ()
| Checks solution.
double | quadraticDjs (double *djRegion, const double *solution, double scaleFactor)
| Modifies djs to allow for quadratic.
void | setFixed (int sequence)
| To say a variable is fixed.
void | clearFixed (int sequence)
| Raw objective value (so always minimize).
bool | fixed (int sequence) const
| Raw objective value (so always minimize).
void | setFlagged (int sequence)
| To flag a variable.
void | clearFlagged (int sequence)
| Raw objective value (so always minimize).
bool | flagged (int sequence) const
| Raw objective value (so always minimize).
void | setFixedOrFree (int sequence)
| To say a variable is fixed OR free.
void | clearFixedOrFree (int sequence)
| Raw objective value (so always minimize).
bool | fixedOrFree (int sequence) const
| Raw objective value (so always minimize).
void | setLowerBound (int sequence)
| To say a variable has lower bound.
void | clearLowerBound (int sequence)
| Raw objective value (so always minimize).
bool | lowerBound (int sequence) const
| Raw objective value (so always minimize).
void | setUpperBound (int sequence)
| To say a variable has upper bound.
void | clearUpperBound (int sequence)
| Raw objective value (so always minimize).
bool | upperBound (int sequence) const
| Raw objective value (so always minimize).
void | setFakeLower (int sequence)
| To say a variable has fake lower bound.
void | clearFakeLower (int sequence)
| Raw objective value (so always minimize).
bool | fakeLower (int sequence) const
| Raw objective value (so always minimize).
void | setFakeUpper (int sequence)
| To say a variable has fake upper bound.
void | clearFakeUpper (int sequence)
| Raw objective value (so always minimize).
bool | fakeUpper (int sequence) const
| Raw objective value (so always minimize).
## Protected Member Functions
protected methods
void | gutsOfDelete ()
| Does most of deletion.
void | gutsOfCopy (const ClpInterior &rhs)
| Does most of copying.
bool | createWorkingData ()
| Returns true if data looks okay, false if not.
void | deleteWorkingData ()
| Does most of deletion.
bool | sanityCheck ()
| Sanity check on input rim data.
int | housekeeping ()
| This does housekeeping.
## Friends
void | ClpInteriorUnitTest (const std::string &mpsDir, const std::string &netlibDir)
| A function that tests the methods in the ClpInterior class.

## Detailed Description

This solves LPs using interior point methods.

It inherits from ClpModel and all its arrays are created at algorithm time.

Definition at line 70 of file ClpInterior.hpp.

## Constructor & Destructor Documentation

ClpInterior::ClpInterior | ( |  | ) |

Default constructor.

ClpInterior::ClpInterior | ( | const ClpInterior & |  | ) |

Copy constructor.

ClpInterior::ClpInterior | ( | const ClpModel & |  | ) |

Copy constructor from model.

ClpInterior::ClpInterior | ( | const ClpModel * | wholeModel,
|  | int | numberRows,
|  | const int * | whichRows,
|  | int | numberColumns,
|  | const int * | whichColumns,
|  | bool | dropNames = `true`,
|  | bool | dropIntegers = `true` |
| ) |  |  |

Subproblem constructor.

A subset of whole model is created from the row and column lists given. The new order is given by list order and duplicates are allowed. Name and integer information can be dropped

ClpInterior::~ClpInterior | ( |  | ) |

Destructor.

## Member Function Documentation

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

Assignment operator. This copies the data.

void ClpInterior::loadProblem | ( | const ClpMatrixBase & | matrix,
|  | const double * | collb,
|  | const double * | colub,
|  | const double * | obj,
|  | const double * | rowlb,
|  | const double * | rowub,
|  | const double * | rowObjective = `NULL` |
| ) |  |  |

Loads a problem (the constraints on the rows are given by lower and upper bounds).

If a pointer is 0 then the following values are the default:

- `colub`: all columns have upper bound infinity
- `collb`: all columns have lower bound 0
- `rowub`: all rows have upper bound infinity
- `rowlb`: all rows have lower bound -infinity
- `obj`: all variables have 0 objective coefficient

Reimplemented from ClpModel.

void ClpInterior::loadProblem | ( | const CoinPackedMatrix & | matrix,
|  | const double * | collb,
|  | const double * | colub,
|  | const double * | obj,
|  | const double * | rowlb,
|  | const double * | rowub,
|  | const double * | rowObjective = `NULL` |
| ) |  |  |

Default constructor.

Reimplemented from ClpModel.

void ClpInterior::loadProblem | ( | const int | numcols,
|  | const int | numrows,
|  | const CoinBigIndex * | start,
|  | const int * | index,
|  | const double * | value,
|  | const double * | collb,
|  | const double * | colub,
|  | const double * | obj,
|  | const double * | rowlb,
|  | const double * | rowub,
|  | const double * | rowObjective = `NULL` |
| ) |  |  |

Just like the other loadProblem() method except that the matrix is given in a standard column major ordered format (without gaps).

Reimplemented from ClpModel.

void ClpInterior::loadProblem | ( | const int | numcols,
|  | const int | numrows,
|  | const CoinBigIndex * | start,
|  | const int * | index,
|  | const double * | value,
|  | const int * | length,
|  | const double * | collb,
|  | const double * | colub,
|  | const double * | obj,
|  | const double * | rowlb,
|  | const double * | rowub,
|  | const double * | rowObjective = `NULL` |
| ) |  |  |

This one is for after presolve to save memory.

Reimplemented from ClpModel.

int ClpInterior::readMps | ( | const char * | filename,
|  | bool | keepNames = `false`,
|  | bool | ignoreErrors = `false` |
| ) |  |  |

Read an mps file from the given filename.

Reimplemented from ClpModel.

void ClpInterior::borrowModel | ( | ClpModel & | otherModel | ) |

Borrow model.

This is so we dont have to copy large amounts of data around. It assumes a derived class wants to overwrite an empty model with a real one - while it does an algorithm. This is same as ClpModel one.

Reimplemented from ClpModel.

void ClpInterior::returnModel | ( | ClpModel & | otherModel | ) |

Return model - updates any scalars.

Reimplemented from ClpModel.

int ClpInterior::pdco | ( |  | ) |

Pdco algorithm - see ClpPdco.hpp for method.

int ClpInterior::pdco | ( | ClpPdcoBase * | stuff,
|  | Options & | options,
|  | Info & | info,
|  | Outfo & | outfo |
| ) |  |  |

Pdco algorithm - see ClpPdco.hpp for method.

int ClpInterior::primalDual | ( |  | ) |

Primal-Dual Predictor-Corrector barrier.

bool ClpInterior::primalFeasible | ( |  | ) | const`[inline]`

If problem is primal feasible.

Definition at line 163 of file ClpInterior.hpp.

References sumPrimalInfeasibilities_.

bool ClpInterior::dualFeasible | ( |  | ) | const`[inline]`

If problem is dual feasible.

Definition at line 166 of file ClpInterior.hpp.

References sumDualInfeasibilities_.

int ClpInterior::algorithm | ( |  | ) | const`[inline]`

Current (or last) algorithm.

Definition at line 169 of file ClpInterior.hpp.

References algorithm_.

void ClpInterior::setAlgorithm | ( | int | value | ) | `[inline]`

Set algorithm.

Definition at line 172 of file ClpInterior.hpp.

References algorithm_.

double ClpInterior::sumDualInfeasibilities | ( |  | ) | const`[inline]`

Sum of dual infeasibilities.

Definition at line 175 of file ClpInterior.hpp.

References sumDualInfeasibilities_.

double ClpInterior::sumPrimalInfeasibilities | ( |  | ) | const`[inline]`

Sum of primal infeasibilities.

Definition at line 178 of file ClpInterior.hpp.

References sumPrimalInfeasibilities_.

double ClpInterior::dualObjective | ( |  | ) | const`[inline]`

dualObjective.

Definition at line 181 of file ClpInterior.hpp.

References dualObjective_.

double ClpInterior::primalObjective | ( |  | ) | const`[inline]`

primalObjective.

Definition at line 184 of file ClpInterior.hpp.

References primalObjective_.

double ClpInterior::diagonalNorm | ( |  | ) | const`[inline]`

diagonalNorm

Definition at line 187 of file ClpInterior.hpp.

References diagonalNorm_.

double ClpInterior::linearPerturbation | ( |  | ) | const`[inline]`

linearPerturbation

Definition at line 190 of file ClpInterior.hpp.

References linearPerturbation_.

void ClpInterior::setLinearPerturbation | ( | double | value | ) | `[inline]`

If problem is primal feasible.

Definition at line 192 of file ClpInterior.hpp.

References linearPerturbation_.

double ClpInterior::diagonalPerturbation | ( |  | ) | const`[inline]`

diagonalPerturbation

Definition at line 195 of file ClpInterior.hpp.

References diagonalPerturbation_.

void ClpInterior::setDiagonalPerturbation | ( | double | value | ) | `[inline]`

If problem is primal feasible.

Definition at line 197 of file ClpInterior.hpp.

References diagonalPerturbation_.

double ClpInterior::gamma | ( |  | ) | const`[inline]`

gamma

Definition at line 200 of file ClpInterior.hpp.

References gamma_.

void ClpInterior::setGamma | ( | double | value | ) | `[inline]`

If problem is primal feasible.

Definition at line 202 of file ClpInterior.hpp.

References gamma_.

double ClpInterior::delta | ( |  | ) | const`[inline]`

delta

Definition at line 205 of file ClpInterior.hpp.

References delta_.

void ClpInterior::setDelta | ( | double | value | ) | `[inline]`

If problem is primal feasible.

Definition at line 207 of file ClpInterior.hpp.

References delta_.

double ClpInterior::complementarityGap | ( |  | ) | const`[inline]`

ComplementarityGap.

Definition at line 210 of file ClpInterior.hpp.

References complementarityGap_.

double ClpInterior::largestPrimalError | ( |  | ) | const`[inline]`

Largest error on Ax-b.

Definition at line 217 of file ClpInterior.hpp.

References largestPrimalError_.

double ClpInterior::largestDualError | ( |  | ) | const`[inline]`

Largest error on basic duals.

Definition at line 220 of file ClpInterior.hpp.

References largestDualError_.

int ClpInterior::maximumBarrierIterations | ( |  | ) | const`[inline]`

Maximum iterations.

Definition at line 223 of file ClpInterior.hpp.

References maximumBarrierIterations_.

void ClpInterior::setMaximumBarrierIterations | ( | int | value | ) | `[inline]`

Largest error on Ax-b.

Definition at line 225 of file ClpInterior.hpp.

References maximumBarrierIterations_.

void ClpInterior::setCholesky | ( | ClpCholeskyBase * | cholesky | ) |

Set cholesky (and delete present one).

int ClpInterior::numberFixed | ( |  | ) | const

Return number fixed to see if worth presolving.

void ClpInterior::fixFixed | ( | bool | reallyFix = `true` | ) |

fix variables interior says should be.

If reallyFix false then just set values to exact bounds

double* ClpInterior::primalR | ( |  | ) | const`[inline]`

Primal erturbation vector.

Definition at line 235 of file ClpInterior.hpp.

References primalR_.

double* ClpInterior::dualR | ( |  | ) | const`[inline]`

Dual erturbation vector.

Definition at line 238 of file ClpInterior.hpp.

References dualR_.

void ClpInterior::gutsOfDelete | ( |  | ) | `[protected]`

Does most of deletion.

Reimplemented from ClpModel.

void ClpInterior::gutsOfCopy | ( | const ClpInterior & | rhs | ) | `[protected]`

Does most of copying.

bool ClpInterior::createWorkingData | ( |  | ) | `[protected]`

Returns true if data looks okay, false if not.

void ClpInterior::deleteWorkingData | ( |  | ) | `[protected]`

Does most of deletion.

bool ClpInterior::sanityCheck | ( |  | ) | `[protected]`

Sanity check on input rim data.

int ClpInterior::housekeeping | ( |  | ) | `[protected]`

This does housekeeping.

double ClpInterior::rawObjectiveValue | ( |  | ) | const`[inline]`

Raw objective value (so always minimize).

Reimplemented from ClpModel.

Definition at line 261 of file ClpInterior.hpp.

References ClpModel::objectiveValue_.

int ClpInterior::isColumn | ( | int | sequence | ) | const`[inline]`

Returns 1 if sequence indicates column.

Definition at line 264 of file ClpInterior.hpp.

References ClpModel::numberColumns_.

int ClpInterior::sequenceWithin | ( | int | sequence | ) | const`[inline]`

Returns sequence number within section.

Definition at line 267 of file ClpInterior.hpp.

References ClpModel::numberColumns_.

void ClpInterior::checkSolution | ( |  | ) |

Checks solution.

double ClpInterior::quadraticDjs | ( | double * | djRegion,
|  | const double * | solution,
|  | double | scaleFactor |
| ) |  |  |

Modifies djs to allow for quadratic.

returns quadratic offset

void ClpInterior::setFixed | ( | int | sequence | ) | `[inline]`

To say a variable is fixed.

Definition at line 277 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::clearFixed | ( | int | sequence | ) | `[inline]`

Raw objective value (so always minimize).

Definition at line 281 of file ClpInterior.hpp.

References ClpModel::status_.

bool ClpInterior::fixed | ( | int | sequence | ) | const`[inline]`

Raw objective value (so always minimize).

Definition at line 285 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::setFlagged | ( | int | sequence | ) | `[inline]`

To flag a variable.

Definition at line 289 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::clearFlagged | ( | int | sequence | ) | `[inline]`

Raw objective value (so always minimize).

Definition at line 293 of file ClpInterior.hpp.

References ClpModel::status_.

bool ClpInterior::flagged | ( | int | sequence | ) | const`[inline]`

Raw objective value (so always minimize).

Definition at line 297 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::setFixedOrFree | ( | int | sequence | ) | `[inline]`

To say a variable is fixed OR free.

Definition at line 301 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::clearFixedOrFree | ( | int | sequence | ) | `[inline]`

Raw objective value (so always minimize).

Definition at line 305 of file ClpInterior.hpp.

References ClpModel::status_.

bool ClpInterior::fixedOrFree | ( | int | sequence | ) | const`[inline]`

Raw objective value (so always minimize).

Definition at line 309 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::setLowerBound | ( | int | sequence | ) | `[inline]`

To say a variable has lower bound.

Definition at line 313 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::clearLowerBound | ( | int | sequence | ) | `[inline]`

Raw objective value (so always minimize).

Definition at line 317 of file ClpInterior.hpp.

References ClpModel::status_.

bool ClpInterior::lowerBound | ( | int | sequence | ) | const`[inline]`

Raw objective value (so always minimize).

Definition at line 321 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::setUpperBound | ( | int | sequence | ) | `[inline]`

To say a variable has upper bound.

Definition at line 325 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::clearUpperBound | ( | int | sequence | ) | `[inline]`

Raw objective value (so always minimize).

Definition at line 329 of file ClpInterior.hpp.

References ClpModel::status_.

bool ClpInterior::upperBound | ( | int | sequence | ) | const`[inline]`

Raw objective value (so always minimize).

Definition at line 333 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::setFakeLower | ( | int | sequence | ) | `[inline]`

To say a variable has fake lower bound.

Definition at line 337 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::clearFakeLower | ( | int | sequence | ) | `[inline]`

Raw objective value (so always minimize).

Definition at line 341 of file ClpInterior.hpp.

References ClpModel::status_.

bool ClpInterior::fakeLower | ( | int | sequence | ) | const`[inline]`

Raw objective value (so always minimize).

Definition at line 345 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::setFakeUpper | ( | int | sequence | ) | `[inline]`

To say a variable has fake upper bound.

Definition at line 349 of file ClpInterior.hpp.

References ClpModel::status_.

void ClpInterior::clearFakeUpper | ( | int | sequence | ) | `[inline]`

Raw objective value (so always minimize).

Definition at line 353 of file ClpInterior.hpp.

References ClpModel::status_.

bool ClpInterior::fakeUpper | ( | int | sequence | ) | const`[inline]`

Raw objective value (so always minimize).

Definition at line 357 of file ClpInterior.hpp.

References ClpModel::status_.

## Friends And Related Function Documentation

void ClpInteriorUnitTest | ( | const std::string & | mpsDir,
|  | const std::string & | netlibDir |
| ) |  |  | `[friend]`

A function that tests the methods in the ClpInterior class.

The only reason for it not to be a member method is that this way it doesn't have to be compiled into the library. And that's a gain, because the library should be compiled with optimization on, but this method should be compiled with debugging.

It also does some testing of ClpFactorization class

## Member Data Documentation

double ClpInterior::largestPrimalError_`[protected]`

Largest error on Ax-b.

Definition at line 371 of file ClpInterior.hpp.

Referenced by largestPrimalError().

double ClpInterior::largestDualError_`[protected]`

Largest error on basic duals.

Definition at line 373 of file ClpInterior.hpp.

Referenced by largestDualError().

double ClpInterior::sumDualInfeasibilities_`[protected]`

Sum of dual infeasibilities.

Definition at line 375 of file ClpInterior.hpp.

Referenced by dualFeasible(), and sumDualInfeasibilities().

double ClpInterior::sumPrimalInfeasibilities_`[protected]`

Sum of primal infeasibilities.

Definition at line 377 of file ClpInterior.hpp.

Referenced by primalFeasible(), and sumPrimalInfeasibilities().

double ClpInterior::worstComplementarity_`[protected]`

Worst complementarity.

Definition at line 379 of file ClpInterior.hpp.

double ClpInterior::xsize_

Definition at line 382 of file ClpInterior.hpp.

double ClpInterior::zsize_

Definition at line 383 of file ClpInterior.hpp.

double* ClpInterior::lower_`[protected]`

Working copy of lower bounds (Owner of arrays below).

Definition at line 386 of file ClpInterior.hpp.

double* ClpInterior::rowLowerWork_`[protected]`

Row lower bounds - working copy.

Definition at line 388 of file ClpInterior.hpp.

double* ClpInterior::columnLowerWork_`[protected]`

Column lower bounds - working copy.

Definition at line 390 of file ClpInterior.hpp.

double* ClpInterior::upper_`[protected]`

Working copy of upper bounds (Owner of arrays below).

Definition at line 392 of file ClpInterior.hpp.

double* ClpInterior::rowUpperWork_`[protected]`

Row upper bounds - working copy.

Definition at line 394 of file ClpInterior.hpp.

double* ClpInterior::columnUpperWork_`[protected]`

Column upper bounds - working copy.

Definition at line 396 of file ClpInterior.hpp.

double* ClpInterior::cost_`[protected]`

Working copy of objective.

Definition at line 398 of file ClpInterior.hpp.

double* ClpInterior::rhs_

Rhs.

Definition at line 401 of file ClpInterior.hpp.

double* ClpInterior::x_

Definition at line 402 of file ClpInterior.hpp.

double* ClpInterior::y_

Definition at line 403 of file ClpInterior.hpp.

double* ClpInterior::dj_

Definition at line 404 of file ClpInterior.hpp.

ClpLsqr* ClpInterior::lsqrObject_`[protected]`

Pointer to Lsqr object.

Definition at line 407 of file ClpInterior.hpp.

ClpPdcoBase* ClpInterior::pdcoStuff_`[protected]`

Pointer to stuff.

Definition at line 409 of file ClpInterior.hpp.

double ClpInterior::mu_`[protected]`

Below here is standard barrier stuff mu.

Definition at line 412 of file ClpInterior.hpp.

double ClpInterior::objectiveNorm_`[protected]`

objectiveNorm.

Definition at line 414 of file ClpInterior.hpp.

double ClpInterior::rhsNorm_`[protected]`

rhsNorm.

Definition at line 416 of file ClpInterior.hpp.

double ClpInterior::solutionNorm_`[protected]`

solutionNorm.

Definition at line 418 of file ClpInterior.hpp.

double ClpInterior::dualObjective_`[protected]`

dualObjective.

Definition at line 420 of file ClpInterior.hpp.

Referenced by dualObjective().

double ClpInterior::primalObjective_`[protected]`

primalObjective.

Definition at line 422 of file ClpInterior.hpp.

Referenced by primalObjective().

double ClpInterior::diagonalNorm_`[protected]`

diagonalNorm.

Definition at line 424 of file ClpInterior.hpp.

Referenced by diagonalNorm().

double ClpInterior::stepLength_`[protected]`

stepLength

Definition at line 426 of file ClpInterior.hpp.

double ClpInterior::linearPerturbation_`[protected]`

linearPerturbation

Definition at line 428 of file ClpInterior.hpp.

Referenced by linearPerturbation(), and setLinearPerturbation().

double ClpInterior::diagonalPerturbation_`[protected]`

diagonalPerturbation

Definition at line 430 of file ClpInterior.hpp.

Referenced by diagonalPerturbation(), and setDiagonalPerturbation().

double ClpInterior::gamma_`[protected]`

Definition at line 432 of file ClpInterior.hpp.

Referenced by gamma(), and setGamma().

double ClpInterior::delta_`[protected]`

Definition at line 434 of file ClpInterior.hpp.

Referenced by delta(), and setDelta().

double ClpInterior::targetGap_`[protected]`

targetGap

Definition at line 436 of file ClpInterior.hpp.

double ClpInterior::projectionTolerance_`[protected]`

projectionTolerance

Definition at line 438 of file ClpInterior.hpp.

double ClpInterior::maximumRHSError_`[protected]`

maximumRHSError. maximum Ax

Definition at line 440 of file ClpInterior.hpp.

double ClpInterior::maximumBoundInfeasibility_`[protected]`

maximumBoundInfeasibility.

Definition at line 442 of file ClpInterior.hpp.

double ClpInterior::maximumDualError_`[protected]`

maximumDualError.

Definition at line 444 of file ClpInterior.hpp.

double ClpInterior::diagonalScaleFactor_`[protected]`

diagonalScaleFactor.

Definition at line 446 of file ClpInterior.hpp.

double ClpInterior::scaleFactor_`[protected]`

scaleFactor. For scaling objective

Definition at line 448 of file ClpInterior.hpp.

double ClpInterior::actualPrimalStep_`[protected]`

actualPrimalStep

Definition at line 450 of file ClpInterior.hpp.

double ClpInterior::actualDualStep_`[protected]`

actualDualStep

Definition at line 452 of file ClpInterior.hpp.

double ClpInterior::smallestInfeasibility_`[protected]`

smallestInfeasibility

Definition at line 454 of file ClpInterior.hpp.

double ClpInterior::historyInfeasibility_[LENGTH_HISTORY]`[protected]`

Definition at line 457 of file ClpInterior.hpp.

double ClpInterior::complementarityGap_`[protected]`

complementarityGap.

Definition at line 459 of file ClpInterior.hpp.

Referenced by complementarityGap().

double ClpInterior::baseObjectiveNorm_`[protected]`

baseObjectiveNorm

Definition at line 461 of file ClpInterior.hpp.

double ClpInterior::worstDirectionAccuracy_`[protected]`

worstDirectionAccuracy

Definition at line 463 of file ClpInterior.hpp.

double ClpInterior::maximumRHSChange_`[protected]`

maximumRHSChange

Definition at line 465 of file ClpInterior.hpp.

double* ClpInterior::errorRegion_`[protected]`

errorRegion. i.e. Ax

Definition at line 467 of file ClpInterior.hpp.

double* ClpInterior::rhsFixRegion_`[protected]`

rhsFixRegion.

Definition at line 469 of file ClpInterior.hpp.

double* ClpInterior::upperSlack_`[protected]`

upperSlack

Definition at line 471 of file ClpInterior.hpp.

double* ClpInterior::lowerSlack_`[protected]`

lowerSlack

Definition at line 473 of file ClpInterior.hpp.

double* ClpInterior::diagonal_`[protected]`

diagonal

Definition at line 475 of file ClpInterior.hpp.

double* ClpInterior::solution_`[protected]`

solution

Definition at line 477 of file ClpInterior.hpp.

double* ClpInterior::workArray_`[protected]`

work array

Definition at line 479 of file ClpInterior.hpp.

double* ClpInterior::deltaX_`[protected]`

delta X

Definition at line 481 of file ClpInterior.hpp.

double* ClpInterior::deltaY_`[protected]`

delta Y

Definition at line 483 of file ClpInterior.hpp.

double* ClpInterior::deltaZ_`[protected]`

deltaZ.

Definition at line 485 of file ClpInterior.hpp.

double* ClpInterior::deltaW_`[protected]`

deltaW.

Definition at line 487 of file ClpInterior.hpp.

double* ClpInterior::deltaSU_`[protected]`

deltaS.

Definition at line 489 of file ClpInterior.hpp.

double* ClpInterior::deltaSL_`[protected]`

Definition at line 490 of file ClpInterior.hpp.

double* ClpInterior::primalR_`[protected]`

Primal regularization array.

Definition at line 492 of file ClpInterior.hpp.

Referenced by primalR().

double* ClpInterior::dualR_`[protected]`

Dual regularization array.

Definition at line 494 of file ClpInterior.hpp.

Referenced by dualR().

double* ClpInterior::rhsB_`[protected]`

rhs B

Definition at line 496 of file ClpInterior.hpp.

double* ClpInterior::rhsU_`[protected]`

rhsU.

Definition at line 498 of file ClpInterior.hpp.

double* ClpInterior::rhsL_`[protected]`

rhsL.

Definition at line 500 of file ClpInterior.hpp.

double* ClpInterior::rhsZ_`[protected]`

rhsZ.

Definition at line 502 of file ClpInterior.hpp.

double* ClpInterior::rhsW_`[protected]`

rhsW.

Definition at line 504 of file ClpInterior.hpp.

double* ClpInterior::rhsC_`[protected]`

rhs C

Definition at line 506 of file ClpInterior.hpp.

double* ClpInterior::zVec_`[protected]`

zVec

Definition at line 508 of file ClpInterior.hpp.

double* ClpInterior::wVec_`[protected]`

wVec

Definition at line 510 of file ClpInterior.hpp.

ClpCholeskyBase* ClpInterior::cholesky_`[protected]`

cholesky.

Definition at line 512 of file ClpInterior.hpp.

int ClpInterior::numberComplementarityPairs_`[protected]`

numberComplementarityPairs i.e. ones with lower and/or upper bounds (not fixed)

Definition at line 514 of file ClpInterior.hpp.

int ClpInterior::numberComplementarityItems_`[protected]`

numberComplementarityItems_ i.e. number of active bounds

Definition at line 516 of file ClpInterior.hpp.

int ClpInterior::maximumBarrierIterations_`[protected]`

Maximum iterations.

Definition at line 518 of file ClpInterior.hpp.

Referenced by maximumBarrierIterations(), and setMaximumBarrierIterations().

bool ClpInterior::gonePrimalFeasible_`[protected]`

gonePrimalFeasible.

Definition at line 520 of file ClpInterior.hpp.

bool ClpInterior::goneDualFeasible_`[protected]`

goneDualFeasible.

Definition at line 522 of file ClpInterior.hpp.

int ClpInterior::algorithm_`[protected]`

Which algorithm being used.

Definition at line 524 of file ClpInterior.hpp.

Referenced by algorithm(), and setAlgorithm().

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

- /home/coin/SVN-release/Clp-1.5.0/Clp/src/ClpInterior.hpp