Clp  1.17.6
ClpInterior Class Reference

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

#include <ClpInterior.hpp>

Inheritance diagram for ClpInterior:
Collaboration diagram for ClpInterior:

## Public Member Functions

Constructors and destructor and copy
ClpInterior ()
Default constructor. More...

ClpInterior (const ClpInterior &)
Copy constructor. More...

ClpInterior (const ClpModel &)
Copy constructor from model. More...

ClpInterior (const ClpModel *wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns, bool dropNames=true, bool dropIntegers=true)
Subproblem constructor. More...

ClpInterioroperator= (const ClpInterior &rhs)
Assignment operator. This copies the data. More...

~ClpInterior ()
Destructor. More...

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). More...

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

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). More...

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. More...

int readMps (const char *filename, bool keepNames=false, bool ignoreErrors=false)
Read an mps file from the given filename. More...

void borrowModel (ClpModel &otherModel)
Borrow model. More...

void returnModel (ClpModel &otherModel)
Return model - updates any scalars. More...

Functions most useful to user
int pdco ()
Pdco algorithm - see ClpPdco.hpp for method. More...

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

int primalDual ()
Primal-Dual Predictor-Corrector barrier. More...

most useful gets and sets
bool primalFeasible () const
If problem is primal feasible. More...

bool dualFeasible () const
If problem is dual feasible. More...

int algorithm () const
Current (or last) algorithm. More...

void setAlgorithm (int value)
Set algorithm. More...

CoinWorkDouble sumDualInfeasibilities () const
Sum of dual infeasibilities. More...

CoinWorkDouble sumPrimalInfeasibilities () const
Sum of primal infeasibilities. More...

CoinWorkDouble dualObjective () const
dualObjective. More...

CoinWorkDouble primalObjective () const
primalObjective. More...

CoinWorkDouble diagonalNorm () const
diagonalNorm More...

CoinWorkDouble linearPerturbation () const
linearPerturbation More...

void setLinearPerturbation (CoinWorkDouble value)

CoinWorkDouble projectionTolerance () const
projectionTolerance More...

void setProjectionTolerance (CoinWorkDouble value)

CoinWorkDouble diagonalPerturbation () const
diagonalPerturbation More...

void setDiagonalPerturbation (CoinWorkDouble value)

CoinWorkDouble gamma () const
gamma More...

void setGamma (CoinWorkDouble value)

CoinWorkDouble delta () const
delta More...

void setDelta (CoinWorkDouble value)

CoinWorkDouble complementarityGap () const
ComplementarityGap. More...

CoinWorkDouble largestPrimalError () const
Largest error on Ax-b. More...

CoinWorkDouble largestDualError () const
Largest error on basic duals. More...

int maximumBarrierIterations () const
Maximum iterations. More...

void setMaximumBarrierIterations (int value)

void setCholesky (ClpCholeskyBase *cholesky)
Set cholesky (and delete present one) More...

int numberFixed () const
Return number fixed to see if worth presolving. More...

void fixFixed (bool reallyFix=true)
fix variables interior says should be. More...

CoinWorkDoubleprimalR () const
Primal erturbation vector. More...

CoinWorkDoubledualR () const
Dual erturbation vector. More...

public methods
CoinWorkDouble rawObjectiveValue () const
Raw objective value (so always minimize) More...

int isColumn (int sequence) const
Returns 1 if sequence indicates column. More...

int sequenceWithin (int sequence) const
Returns sequence number within section. More...

void checkSolution ()
Checks solution. More...

CoinWorkDouble quadraticDjs (CoinWorkDouble *djRegion, const CoinWorkDouble *solution, CoinWorkDouble scaleFactor)
Modifies djs to allow for quadratic. More...

void setFixed (int sequence)
To say a variable is fixed. More...

void clearFixed (int sequence)

bool fixed (int sequence) const

void setFlagged (int sequence)
To flag a variable. More...

void clearFlagged (int sequence)

bool flagged (int sequence) const

void setFixedOrFree (int sequence)
To say a variable is fixed OR free. More...

void clearFixedOrFree (int sequence)

bool fixedOrFree (int sequence) const

void setLowerBound (int sequence)
To say a variable has lower bound. More...

void clearLowerBound (int sequence)

bool lowerBound (int sequence) const

void setUpperBound (int sequence)
To say a variable has upper bound. More...

void clearUpperBound (int sequence)

bool upperBound (int sequence) const

void setFakeLower (int sequence)
To say a variable has fake lower bound. More...

void clearFakeLower (int sequence)

bool fakeLower (int sequence) const

void setFakeUpper (int sequence)
To say a variable has fake upper bound. More...

void clearFakeUpper (int sequence)

bool fakeUpper (int sequence) const

Public Member Functions inherited from ClpModel
const double * rowScale () const
Scaling. More...

const double * columnScale () const

const double * inverseRowScale () const

const double * inverseColumnScale () const

double * mutableRowScale () const

double * mutableColumnScale () const

double * mutableInverseRowScale () const

double * mutableInverseColumnScale () const

double * swapRowScale (double *newScale)

void setRowScale (double *scale)

void setColumnScale (double *scale)

double objectiveScale () const
Scaling of objective. More...

void setObjectiveScale (double value)

double rhsScale () const
Scaling of rhs and bounds. More...

void setRhsScale (double value)

void scaling (int mode=1)
Sets or unsets scaling, 0 -off, 1 equilibrium, 2 geometric, 3 auto, 4 auto-but-as-initialSolve-in-bab. More...

void unscale ()
If we constructed a "really" scaled model then this reverses the operation. More...

int scalingFlag () const
Gets scalingFlag. More...

double * objective () const
Objective. More...

double * objective (const double *solution, double &offset, bool refresh=true) const

const double * getObjCoefficients () const

double * rowObjective () const
Row Objective. More...

const double * getRowObjCoefficients () const

double * columnLower () const
Column Lower. More...

const double * getColLower () const

double * columnUpper () const
Column Upper. More...

const double * getColUpper () const

CoinPackedMatrixmatrix () const
Matrix (if not ClpPackedmatrix be careful about memory leak. More...

CoinBigIndex getNumElements () const
Number of elements in matrix. More...

double getSmallElementValue () const
Small element value - elements less than this set to zero, default is 1.0e-20. More...

void setSmallElementValue (double value)

ClpMatrixBaserowCopy () const
Row Matrix. More...

void setNewRowCopy (ClpMatrixBase *newCopy)
Set new row matrix. More...

ClpMatrixBaseclpMatrix () const
Clp Matrix. More...

ClpPackedMatrixclpScaledMatrix () const
Scaled ClpPackedMatrix. More...

void setClpScaledMatrix (ClpPackedMatrix *scaledMatrix)
Sets pointer to scaled ClpPackedMatrix. More...

ClpPackedMatrixswapScaledMatrix (ClpPackedMatrix *scaledMatrix)
Swaps pointer to scaled ClpPackedMatrix. More...

void replaceMatrix (ClpMatrixBase *matrix, bool deleteCurrent=false)
Replace Clp Matrix (current is not deleted unless told to and new is used) So up to user to delete current. More...

void replaceMatrix (CoinPackedMatrix *newmatrix, bool deleteCurrent=false)
Replace Clp Matrix (current is not deleted unless told to and new is used) So up to user to delete current. More...

double objectiveValue () const
Objective value. More...

void setObjectiveValue (double value)

double getObjValue () const

char * integerInformation () const
Integer information. More...

double * infeasibilityRay (bool fullRay=false) const
Infeasibility/unbounded ray (NULL returned if none/wrong) Up to user to use delete [] on these arrays. More...

double * unboundedRay () const

double * ray () const
For advanced users - no need to delete - sign not changed. More...

bool rayExists () const
just test if infeasibility or unbounded Ray exists More...

void deleteRay ()
just delete ray if exists More...

const double * internalRay () const
Access internal ray storage. Users should call infeasibilityRay() or unboundedRay() instead. More...

bool statusExists () const
See if status (i.e. basis) array exists (partly for OsiClp) More...

unsigned char * statusArray () const
Return address of status (i.e. basis) array (char[numberRows+numberColumns]) More...

unsigned char * statusCopy () const
Return copy of status (i.e. More...

void copyinStatus (const unsigned char *statusArray)
Copy in status (basis) vector. More...

void setUserPointer (void *pointer)
User pointer for whatever reason. More...

void * getUserPointer () const

void setTrustedUserPointer (ClpTrustedData *pointer)
Trusted user pointer. More...

ClpTrustedDatagetTrustedUserPointer () const

int whatsChanged () const
What has changed in model (only for masochistic users) More...

void setWhatsChanged (int value)

Number of threads (not really being used) More...

ClpModel (bool emptyMessages=false)
Default constructor. More...

ClpModel (const ClpModel &rhs, int scalingMode=-1)
Copy constructor. More...

ClpModeloperator= (const ClpModel &rhs)
Assignment operator. This copies the data. More...

ClpModel (const ClpModel *wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns, bool dropNames=true, bool dropIntegers=true)
Subproblem constructor. More...

~ClpModel ()
Destructor. More...

int numberRows () const
Number of rows. More...

int getNumRows () const

int getNumCols () const
Number of columns. More...

int numberColumns () const

double primalTolerance () const
Primal tolerance to use. More...

void setPrimalTolerance (double value)

double dualTolerance () const
Dual tolerance to use. More...

void setDualTolerance (double value)

double primalObjectiveLimit () const
Primal objective limit. More...

void setPrimalObjectiveLimit (double value)

double dualObjectiveLimit () const
Dual objective limit. More...

void setDualObjectiveLimit (double value)

double objectiveOffset () const
Objective offset. More...

void setObjectiveOffset (double value)

double presolveTolerance () const
Presolve tolerance to use. More...

const std::string & problemName () const

int numberIterations () const
Number of iterations. More...

int getIterationCount () const

void setNumberIterations (int numberIterationsNew)

int solveType () const
Solve type - 1 simplex, 2 simplex interface, 3 Interior. More...

void setSolveType (int type)

int maximumIterations () const
Maximum number of iterations. More...

void setMaximumIterations (int value)

double maximumSeconds () const
Maximum time in seconds (from when set called) More...

void setMaximumSeconds (double value)

void setMaximumWallSeconds (double value)

bool hitMaximumIterations () const
Returns true if hit maximum iterations (or time) More...

int status () const
Status of problem: -1 - unknown e.g. More...

int problemStatus () const

void setProblemStatus (int problemStatusNew)
Set problem status. More...

int secondaryStatus () const
Secondary status of problem - may get extended 0 - none 1 - primal infeasible because dual limit reached OR (probably primal infeasible but can't prove it - main status was 4) 2 - scaled problem optimal - unscaled problem has primal infeasibilities 3 - scaled problem optimal - unscaled problem has dual infeasibilities 4 - scaled problem optimal - unscaled problem has primal and dual infeasibilities 5 - giving up in primal with flagged variables 6 - failed due to empty problem check 7 - postSolve says not optimal 8 - failed due to bad element check 9 - status was 3 and stopped on time 10 - status was 3 but stopped as primal feasible 100 up - translation of enum from ClpEventHandler. More...

void setSecondaryStatus (int newstatus)

bool isAbandoned () const
Are there a numerical difficulties? More...

bool isProvenOptimal () const
Is optimality proven? More...

bool isProvenPrimalInfeasible () const
Is primal infeasiblity proven? More...

bool isProvenDualInfeasible () const
Is dual infeasiblity proven? More...

bool isPrimalObjectiveLimitReached () const
Is the given primal objective limit reached? More...

bool isDualObjectiveLimitReached () const
Is the given dual objective limit reached? More...

bool isIterationLimitReached () const
Iteration limit reached? More...

double optimizationDirection () const
Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore. More...

double getObjSense () const

void setOptimizationDirection (double value)

double * primalRowSolution () const
Primal row solution. More...

const double * getRowActivity () const

double * primalColumnSolution () const
Primal column solution. More...

const double * getColSolution () const

void setColSolution (const double *input)

double * dualRowSolution () const
Dual row solution. More...

const double * getRowPrice () const

double * dualColumnSolution () const
Reduced costs. More...

const double * getReducedCost () const

double * rowLower () const
Row lower. More...

const double * getRowLower () const

double * rowUpper () const
Row upper. More...

const double * getRowUpper () const

void setObjectiveCoefficient (int elementIndex, double elementValue)
Set an objective function coefficient. More...

void setObjCoeff (int elementIndex, double elementValue)
Set an objective function coefficient. More...

void setColumnLower (int elementIndex, double elementValue)
Set a single column lower bound
Use -DBL_MAX for -infinity. More...

void setColumnUpper (int elementIndex, double elementValue)
Set a single column upper bound
Use DBL_MAX for infinity. More...

void setColumnBounds (int elementIndex, double lower, double upper)
Set a single column lower and upper bound. More...

void setColumnSetBounds (const int *indexFirst, const int *indexLast, const double *boundList)
Set the bounds on a number of columns simultaneously
The default implementation just invokes setColLower() and setColUpper() over and over again. More...

void setColLower (int elementIndex, double elementValue)
Set a single column lower bound
Use -DBL_MAX for -infinity. More...

void setColUpper (int elementIndex, double elementValue)
Set a single column upper bound
Use DBL_MAX for infinity. More...

void setColBounds (int elementIndex, double lower, double upper)
Set a single column lower and upper bound. More...

void setColSetBounds (const int *indexFirst, const int *indexLast, const double *boundList)
Set the bounds on a number of columns simultaneously
More...

void setRowLower (int elementIndex, double elementValue)
Set a single row lower bound
Use -DBL_MAX for -infinity. More...

void setRowUpper (int elementIndex, double elementValue)
Set a single row upper bound
Use DBL_MAX for infinity. More...

void setRowBounds (int elementIndex, double lower, double upper)
Set a single row lower and upper bound. More...

void setRowSetBounds (const int *indexFirst, const int *indexLast, const double *boundList)
Set the bounds on a number of rows simultaneously
More...

void passInMessageHandler (CoinMessageHandler *handler)
Pass in Message handler (not deleted at end) More...

CoinMessageHandlerpushMessageHandler (CoinMessageHandler *handler, bool &oldDefault)
Pass in Message handler (not deleted at end) and return current. More...

void popMessageHandler (CoinMessageHandler *oldHandler, bool oldDefault)
back to previous message handler More...

void newLanguage (CoinMessages::Language language)
Set language. More...

void setLanguage (CoinMessages::Language language)

void setDefaultMessageHandler ()
Overrides message handler with a default one. More...

CoinMessageHandlermessageHandler () const
Return handler. More...

CoinMessages messages () const
Return messages. More...

CoinMessagesmessagesPointer ()
Return pointer to messages. More...

CoinMessages coinMessages () const
Return Coin messages. More...

CoinMessagescoinMessagesPointer ()
Return pointer to Coin messages. More...

void setLogLevel (int value)
Amount of print out: 0 - none 1 - just final 2 - just factorizations 3 - as 2 plus a bit more 4 - verbose above that 8,16,32 etc just for selective debug. More...

int logLevel () const

bool defaultHandler () const
Return true if default handler. More...

void passInEventHandler (const ClpEventHandler *eventHandler)
Pass in Event handler (cloned and deleted at end) More...

ClpEventHandlereventHandler () const
Event handler. More...

Thread specific random number generator. More...

Thread specific random number generator. More...

void setRandomSeed (int value)
Set seed for thread specific random number generator. More...

int lengthNames () const
length of names (0 means no names0 More...

void setLengthNames (int value)
length of names (0 means no names0 More...

const std::vector< std::string > * rowNames () const
Row names. More...

const std::string & rowName (int iRow) const

std::string getRowName (int iRow) const
Return name or Rnnnnnnn. More...

const std::vector< std::string > * columnNames () const
Column names. More...

const std::string & columnName (int iColumn) const

std::string getColumnName (int iColumn) const
Return name or Cnnnnnnn. More...

ClpObjectiveobjectiveAsObject () const
Objective methods. More...

void setObjective (ClpObjective *objective)

void setObjectivePointer (ClpObjective *newobjective)

int emptyProblem (int *infeasNumber=NULL, double *infeasSum=NULL, bool printMessage=true)
Solve a problem with no elements - return status and dual and primal infeasibilites. More...

void times (double scalar, const double *x, double *y) const
Return y + A * x * scalar in y. More...

void transposeTimes (double scalar, const double *x, double *y) const
Return y + x * scalar * A in y. More...

bool setIntParam (ClpIntParam key, int value)
Set an integer parameter. More...

bool setDblParam (ClpDblParam key, double value)
Set an double parameter. More...

bool setStrParam (ClpStrParam key, const std::string &value)
Set an string parameter. More...

bool getIntParam (ClpIntParam key, int &value) const

bool getDblParam (ClpDblParam key, double &value) const

bool getStrParam (ClpStrParam key, std::string &value) const

void generateCpp (FILE *fp)
Create C++ lines to get to current state. More...

unsigned int specialOptions () const
For advanced options 1 - Don't keep changing infeasibility weight 2 - Keep nonLinearCost round solves 4 - Force outgoing variables to exact bound (primal) 8 - Safe to use dense initial factorization 16 -Just use basic variables for operation if column generation 32 -Create ray even in BAB 64 -Treat problem as feasible until last minute (i.e. More...

void setSpecialOptions (unsigned int value)

bool inCbcBranchAndBound () const

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). More...

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

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). More...

int loadProblem (CoinModel &modelObject, bool tryPlusMinusOne=false)
This loads a model from a coinModel object - returns number of errors. More...

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. More...

void loadQuadraticObjective (const int numberColumns, const CoinBigIndex *start, const int *column, const double *element)

Get rid of quadratic objective. More...

void setRowObjective (const double *rowObjective)
This just loads up a row objective. More...

int readMps (const char *filename, bool keepNames=false, bool ignoreErrors=false)
Read an mps file from the given filename. More...

int readGMPL (const char *filename, const char *dataName, bool keepNames=false)
Read GMPL files from the given filenames. More...

void copyInIntegerInformation (const char *information)
Copy in integer informations. More...

void deleteIntegerInformation ()
Drop integer informations. More...

void setContinuous (int index)
Set the index-th variable to be a continuous variable. More...

void setInteger (int index)
Set the index-th variable to be an integer variable. More...

bool isInteger (int index) const
Return true if the index-th variable is an integer variable. More...

void resize (int newNumberRows, int newNumberColumns)
Resizes rim part of model. More...

void deleteRows (int number, const int *which)
Deletes rows. More...

void addRow (int numberInRow, const int *columns, const double *elements, double rowLower=-COIN_DBL_MAX, double rowUpper=COIN_DBL_MAX)

void addRows (int number, const double *rowLower, const double *rowUpper, const CoinBigIndex *rowStarts, const int *columns, const double *elements)

void addRows (int number, const double *rowLower, const double *rowUpper, const CoinBigIndex *rowStarts, const int *rowLengths, const int *columns, const double *elements)

void addRows (int number, const double *rowLower, const double *rowUpper, const CoinPackedVectorBase *const *rows)

int addRows (const CoinBuild &buildObject, bool tryPlusMinusOne=false, bool checkDuplicates=true)
Add rows from a build object. More...

int addRows (CoinModel &modelObject, bool tryPlusMinusOne=false, bool checkDuplicates=true)
Add rows from a model object. More...

void deleteColumns (int number, const int *which)
Deletes columns. More...

void deleteRowsAndColumns (int numberRows, const int *whichRows, int numberColumns, const int *whichColumns)
Deletes rows AND columns (keeps old sizes) More...

void addColumn (int numberInColumn, const int *rows, const double *elements, double columnLower=0.0, double columnUpper=COIN_DBL_MAX, double objective=0.0)

void addColumns (int number, const double *columnLower, const double *columnUpper, const double *objective, const CoinBigIndex *columnStarts, const int *rows, const double *elements)

void addColumns (int number, const double *columnLower, const double *columnUpper, const double *objective, const CoinBigIndex *columnStarts, const int *columnLengths, const int *rows, const double *elements)

void addColumns (int number, const double *columnLower, const double *columnUpper, const double *objective, const CoinPackedVectorBase *const *columns)

int addColumns (const CoinBuild &buildObject, bool tryPlusMinusOne=false, bool checkDuplicates=true)
Add columns from a build object If tryPlusMinusOne then will try adding as +-1 matrix if no matrix exists. More...

int addColumns (CoinModel &modelObject, bool tryPlusMinusOne=false, bool checkDuplicates=true)
Add columns from a model object. More...

void modifyCoefficient (int row, int column, double newElement, bool keepZero=false)
Modify one element of a matrix. More...

void chgRowLower (const double *rowLower)
Change row lower bounds. More...

void chgRowUpper (const double *rowUpper)
Change row upper bounds. More...

void chgColumnLower (const double *columnLower)
Change column lower bounds. More...

void chgColumnUpper (const double *columnUpper)
Change column upper bounds. More...

void chgObjCoefficients (const double *objIn)
Change objective coefficients. More...

void borrowModel (ClpModel &otherModel)
Borrow model. More...

void returnModel (ClpModel &otherModel)
Return model - nulls all arrays so can be deleted safely also updates any scalars. More...

void createEmptyMatrix ()
Create empty ClpPackedMatrix. More...

CoinBigIndex cleanMatrix (double threshold=1.0e-20)
Really clean up matrix (if ClpPackedMatrix). More...

void copy (const ClpMatrixBase *from, ClpMatrixBase *&to)
Copy contents - resizing if necessary - otherwise re-use memory. More...

void dropNames ()
Drops names - makes lengthnames 0 and names empty. More...

void copyNames (const std::vector< std::string > &rowNames, const std::vector< std::string > &columnNames)
Copies in names. More...

void copyRowNames (const std::vector< std::string > &rowNames, int first, int last)
Copies in Row names - modifies names first .. last-1. More...

void copyColumnNames (const std::vector< std::string > &columnNames, int first, int last)
Copies in Column names - modifies names first .. last-1. More...

void copyRowNames (const char *const *rowNames, int first, int last)
Copies in Row names - modifies names first .. last-1. More...

void copyColumnNames (const char *const *columnNames, int first, int last)
Copies in Column names - modifies names first .. last-1. More...

void setRowName (int rowIndex, std::string &name)
Set name of row. More...

void setColumnName (int colIndex, std::string &name)
Set name of col. More...

int findNetwork (char *rotate, double fractionNeeded=0.75)
Find a network subset. More...

CoinModelcreateCoinModel () const
This creates a coinModel object. More...

int writeMps (const char *filename, int formatType=0, int numberAcross=2, double objSense=0.0) const
Write the problem in MPS format to the specified file. More...

## Protected Member Functions

protected methods
void gutsOfDelete ()
Does most of deletion. More...

void gutsOfCopy (const ClpInterior &rhs)
Does most of copying. More...

bool createWorkingData ()
Returns true if data looks okay, false if not. More...

void deleteWorkingData ()

bool sanityCheck ()
Sanity check on input rim data. More...

int housekeeping ()
This does housekeeping. More...

Protected Member Functions inherited from ClpModel
void gutsOfDelete (int type)
Does most of deletion (0 = all, 1 = most) More...

void gutsOfCopy (const ClpModel &rhs, int trueCopy=1)
Does most of copying If trueCopy 0 then just points to arrays If -1 leaves as much as possible. More...

void getRowBound (int iRow, double &lower, double &upper) const
gets lower and upper bounds on rows More...

void gutsOfLoadModel (int numberRows, int numberColumns, const double *collb, const double *colub, const double *obj, const double *rowlb, const double *rowub, const double *rowObjective=NULL)
puts in format I like - 4 array matrix - may make row copy More...

void gutsOfScaling ()
Does much of scaling. More...

double rawObjectiveValue () const
Objective value - always minimize. More...

bool permanentArrays () const
If we are using maximumRows_ and Columns_. More...

void startPermanentArrays ()
Start using maximumRows_ and Columns_. More...

void stopPermanentArrays ()
Stop using maximumRows_ and Columns_. More...

const char *const * rowNamesAsChar () const
Create row names as char **. More...

const char *const * columnNamesAsChar () const
Create column names as char **. More...

void deleteNamesAsChar (const char *const *names, int number) const
Delete char * version of names. More...

void onStopped ()
On stopped - sets secondary status. More...

## Friends

void ClpInteriorUnitTest (const std::string &mpsDir, const std::string &netlibDir)
A function that tests the methods in the ClpInterior class. More...

## 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

CoinWorkDouble largestPrimalError_
Largest error on Ax-b. More...

CoinWorkDouble largestDualError_
Largest error on basic duals. More...

CoinWorkDouble sumDualInfeasibilities_
Sum of dual infeasibilities. More...

CoinWorkDouble sumPrimalInfeasibilities_
Sum of primal infeasibilities. More...

CoinWorkDouble worstComplementarity_
Worst complementarity. More...

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

CoinWorkDoublerowLowerWork_
Row lower bounds - working copy. More...

CoinWorkDoublecolumnLowerWork_
Column lower bounds - working copy. More...

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

CoinWorkDoublerowUpperWork_
Row upper bounds - working copy. More...

CoinWorkDoublecolumnUpperWork_
Column upper bounds - working copy. More...

CoinWorkDoublecost_
Working copy of objective. More...

ClpLsqrlsqrObject_
Pointer to Lsqr object. More...

ClpPdcoBasepdcoStuff_
Pointer to stuff. More...

CoinWorkDouble mu_
Below here is standard barrier stuff mu. More...

CoinWorkDouble objectiveNorm_
objectiveNorm. More...

CoinWorkDouble rhsNorm_
rhsNorm. More...

CoinWorkDouble solutionNorm_
solutionNorm. More...

CoinWorkDouble dualObjective_
dualObjective. More...

CoinWorkDouble primalObjective_
primalObjective. More...

CoinWorkDouble diagonalNorm_
diagonalNorm. More...

CoinWorkDouble stepLength_
stepLength More...

CoinWorkDouble linearPerturbation_
linearPerturbation More...

CoinWorkDouble diagonalPerturbation_
diagonalPerturbation More...

CoinWorkDouble gamma_

CoinWorkDouble delta_

CoinWorkDouble targetGap_
targetGap More...

CoinWorkDouble projectionTolerance_
projectionTolerance More...

CoinWorkDouble maximumRHSError_
maximumRHSError. maximum Ax More...

CoinWorkDouble maximumBoundInfeasibility_
maximumBoundInfeasibility. More...

CoinWorkDouble maximumDualError_
maximumDualError. More...

CoinWorkDouble diagonalScaleFactor_
diagonalScaleFactor. More...

CoinWorkDouble scaleFactor_
scaleFactor. For scaling objective More...

CoinWorkDouble actualPrimalStep_
actualPrimalStep More...

CoinWorkDouble actualDualStep_
actualDualStep More...

CoinWorkDouble smallestInfeasibility_
smallestInfeasibility More...

CoinWorkDouble historyInfeasibility_ [LENGTH_HISTORY]

CoinWorkDouble complementarityGap_
complementarityGap. More...

CoinWorkDouble baseObjectiveNorm_
baseObjectiveNorm More...

CoinWorkDouble worstDirectionAccuracy_
worstDirectionAccuracy More...

CoinWorkDouble maximumRHSChange_
maximumRHSChange More...

CoinWorkDoubleerrorRegion_
errorRegion. i.e. Ax More...

CoinWorkDoublerhsFixRegion_
rhsFixRegion. More...

CoinWorkDoubleupperSlack_
upperSlack More...

CoinWorkDoublelowerSlack_
lowerSlack More...

CoinWorkDoublediagonal_
diagonal More...

CoinWorkDoublesolution_
solution More...

CoinWorkDoubleworkArray_
work array More...

CoinWorkDoubledeltaX_
delta X More...

CoinWorkDoubledeltaY_
delta Y More...

CoinWorkDoubledeltaZ_
deltaZ. More...

CoinWorkDoubledeltaW_
deltaW. More...

CoinWorkDoubledeltaSU_
deltaS. More...

CoinWorkDoubledeltaSL_

CoinWorkDoubleprimalR_
Primal regularization array. More...

CoinWorkDoubledualR_
Dual regularization array. More...

CoinWorkDoublerhsB_
rhs B More...

CoinWorkDoublerhsU_
rhsU. More...

CoinWorkDoublerhsL_
rhsL. More...

CoinWorkDoublerhsZ_
rhsZ. More...

CoinWorkDoublerhsW_
rhsW. More...

CoinWorkDoublerhsC_
rhs C More...

CoinWorkDoublezVec_
zVec More...

CoinWorkDoublewVec_
wVec More...

ClpCholeskyBasecholesky_
cholesky. More...

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

int numberComplementarityItems_
numberComplementarityItems_ i.e. number of active bounds More...

int maximumBarrierIterations_
Maximum iterations. More...

bool gonePrimalFeasible_
gonePrimalFeasible. More...

bool goneDualFeasible_
goneDualFeasible. More...

int algorithm_
Which algorithm being used. More...

CoinWorkDouble xsize_

CoinWorkDouble zsize_

CoinWorkDoublerhs_
Rhs. More...

CoinWorkDoublex_

CoinWorkDoubley_

CoinWorkDoubledj_

Protected Attributes inherited from ClpModel
double optimizationDirection_
Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore. More...

double dblParam_ [ClpLastDblParam]
Array of double parameters. More...

double objectiveValue_
Objective value. More...

double smallElement_
Small element value. More...

double objectiveScale_
Scaling of objective. More...

double rhsScale_
Scaling of rhs and bounds. More...

int numberRows_
Number of rows. More...

int numberColumns_
Number of columns. More...

double * rowActivity_
Row activities. More...

double * columnActivity_
Column activities. More...

double * dual_
Duals. More...

double * reducedCost_
Reduced costs. More...

double * rowLower_
Row lower. More...

double * rowUpper_
Row upper. More...

ClpObjectiveobjective_
Objective. More...

double * rowObjective_
Row Objective (? sign) - may be NULL. More...

double * columnLower_
Column Lower. More...

double * columnUpper_
Column Upper. More...

ClpMatrixBasematrix_
Packed matrix. More...

ClpMatrixBaserowCopy_
Row copy if wanted. More...

ClpPackedMatrixscaledMatrix_
Scaled packed matrix. More...

double * ray_
Infeasible/unbounded ray. More...

double * rowScale_
Row scale factors for matrix. More...

double * columnScale_
Column scale factors. More...

double * inverseRowScale_
Inverse row scale factors for matrix (end of rowScale_) More...

double * inverseColumnScale_
Inverse column scale factors for matrix (end of columnScale_) More...

int scalingFlag_
Scale flag, 0 none, 1 equilibrium, 2 geometric, 3, auto, 4 dynamic, 5 geometric on rows. More...

unsigned char * status_
Status (i.e. More...

char * integerType_
Integer information. More...

void * userPointer_
User pointer for whatever reason. More...

ClpTrustedDatatrustedUserPointer_
Trusted user pointer e.g. for heuristics. More...

int intParam_ [ClpLastIntParam]
Array of integer parameters. More...

int numberIterations_
Number of iterations. More...

int solveType_
Solve type - 1 simplex, 2 simplex interface, 3 Interior. More...

unsigned int whatsChanged_

int problemStatus_
Status of problem. More...

int secondaryStatus_
Secondary status of problem. More...

int lengthNames_
length of names (0 means no names) More...

Number of threads (not very operational) More...

unsigned int specialOptions_
For advanced options See get and set for meaning. More...

CoinMessageHandlerhandler_
Message handler. More...

bool defaultHandler_
Flag to say if default handler (so delete) More...

Thread specific random number generator. More...

ClpEventHandlereventHandler_
Event handler. More...

std::vector< std::string > rowNames_
Row names. More...

std::vector< std::string > columnNames_
Column names. More...

CoinMessages messages_
Messages. More...

CoinMessages coinMessages_
Coin messages. More...

int maximumColumns_
Maximum number of columns in model. More...

int maximumRows_
Maximum number of rows in model. More...

int maximumInternalColumns_
Maximum number of columns (internal arrays) in model. More...

int maximumInternalRows_
Maximum number of rows (internal arrays) in model. More...

CoinPackedMatrix baseMatrix_
Base packed matrix. More...

CoinPackedMatrix baseRowCopy_
Base row copy. More...

double * savedRowScale_
Saved row scale factors for matrix. More...

double * savedColumnScale_
Saved column scale factors. More...

std::string strParam_ [ClpLastStrParam]
Array of string parameters. More...

## 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 72 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
 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 )
 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).

 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.

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

Read an mps file from the given filename.

 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.

 void ClpInterior::returnModel ( ClpModel & otherModel )

Return model - updates any scalars.

 int ClpInterior::pdco ( )

Pdco algorithm - see ClpPdco.hpp for method.

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

Primal-Dual Predictor-Corrector barrier.

 bool ClpInterior::primalFeasible ( ) const
inline

If problem is primal feasible.

Definition at line 164 of file ClpInterior.hpp.

 bool ClpInterior::dualFeasible ( ) const
inline

If problem is dual feasible.

Definition at line 169 of file ClpInterior.hpp.

 int ClpInterior::algorithm ( ) const
inline

Current (or last) algorithm.

Definition at line 174 of file ClpInterior.hpp.

 void ClpInterior::setAlgorithm ( int value )
inline

Set algorithm.

Definition at line 179 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::sumDualInfeasibilities ( ) const
inline

Sum of dual infeasibilities.

Definition at line 184 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::sumPrimalInfeasibilities ( ) const
inline

Sum of primal infeasibilities.

Definition at line 189 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::dualObjective ( ) const
inline

dualObjective.

Definition at line 194 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::primalObjective ( ) const
inline

primalObjective.

Definition at line 199 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::diagonalNorm ( ) const
inline

diagonalNorm

Definition at line 204 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::linearPerturbation ( ) const
inline

linearPerturbation

Definition at line 209 of file ClpInterior.hpp.

 void ClpInterior::setLinearPerturbation ( CoinWorkDouble value )
inline

Definition at line 213 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::projectionTolerance ( ) const
inline

projectionTolerance

Definition at line 218 of file ClpInterior.hpp.

 void ClpInterior::setProjectionTolerance ( CoinWorkDouble value )
inline

Definition at line 222 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::diagonalPerturbation ( ) const
inline

diagonalPerturbation

Definition at line 227 of file ClpInterior.hpp.

 void ClpInterior::setDiagonalPerturbation ( CoinWorkDouble value )
inline

Definition at line 231 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::gamma ( ) const
inline

gamma

Definition at line 236 of file ClpInterior.hpp.

 void ClpInterior::setGamma ( CoinWorkDouble value )
inline

Definition at line 240 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::delta ( ) const
inline

delta

Definition at line 245 of file ClpInterior.hpp.

 void ClpInterior::setDelta ( CoinWorkDouble value )
inline

Definition at line 249 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::complementarityGap ( ) const
inline

ComplementarityGap.

Definition at line 254 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::largestPrimalError ( ) const
inline

Largest error on Ax-b.

Definition at line 263 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::largestDualError ( ) const
inline

Largest error on basic duals.

Definition at line 268 of file ClpInterior.hpp.

 int ClpInterior::maximumBarrierIterations ( ) const
inline

Maximum iterations.

Definition at line 273 of file ClpInterior.hpp.

 void ClpInterior::setMaximumBarrierIterations ( int value )
inline

Definition at line 277 of file ClpInterior.hpp.

 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

 CoinWorkDouble* ClpInterior::primalR ( ) const
inline

Primal erturbation vector.

Definition at line 289 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::dualR ( ) const
inline

Dual erturbation vector.

Definition at line 294 of file ClpInterior.hpp.

 void ClpInterior::gutsOfDelete ( )
protected

Does most of deletion.

 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
 bool ClpInterior::sanityCheck ( )
protected

Sanity check on input rim data.

 int ClpInterior::housekeeping ( )
protected

This does housekeeping.

 CoinWorkDouble ClpInterior::rawObjectiveValue ( ) const
inline

Raw objective value (so always minimize)

Definition at line 319 of file ClpInterior.hpp.

 int ClpInterior::isColumn ( int sequence ) const
inline

Returns 1 if sequence indicates column.

Definition at line 324 of file ClpInterior.hpp.

 int ClpInterior::sequenceWithin ( int sequence ) const
inline

Returns sequence number within section.

Definition at line 329 of file ClpInterior.hpp.

 void ClpInterior::checkSolution ( )

Checks solution.

 CoinWorkDouble ClpInterior::quadraticDjs ( CoinWorkDouble * djRegion, const CoinWorkDouble * solution, CoinWorkDouble scaleFactor )

Modifies djs to allow for quadratic.

 void ClpInterior::setFixed ( int sequence )
inline

To say a variable is fixed.

Definition at line 341 of file ClpInterior.hpp.

 void ClpInterior::clearFixed ( int sequence )
inline

Definition at line 345 of file ClpInterior.hpp.

 bool ClpInterior::fixed ( int sequence ) const
inline

Definition at line 349 of file ClpInterior.hpp.

 void ClpInterior::setFlagged ( int sequence )
inline

To flag a variable.

Definition at line 355 of file ClpInterior.hpp.

 void ClpInterior::clearFlagged ( int sequence )
inline

Definition at line 359 of file ClpInterior.hpp.

 bool ClpInterior::flagged ( int sequence ) const
inline

Definition at line 363 of file ClpInterior.hpp.

 void ClpInterior::setFixedOrFree ( int sequence )
inline

To say a variable is fixed OR free.

Definition at line 369 of file ClpInterior.hpp.

 void ClpInterior::clearFixedOrFree ( int sequence )
inline

Definition at line 373 of file ClpInterior.hpp.

 bool ClpInterior::fixedOrFree ( int sequence ) const
inline

Definition at line 377 of file ClpInterior.hpp.

 void ClpInterior::setLowerBound ( int sequence )
inline

To say a variable has lower bound.

Definition at line 383 of file ClpInterior.hpp.

 void ClpInterior::clearLowerBound ( int sequence )
inline

Definition at line 387 of file ClpInterior.hpp.

 bool ClpInterior::lowerBound ( int sequence ) const
inline

Definition at line 391 of file ClpInterior.hpp.

 void ClpInterior::setUpperBound ( int sequence )
inline

To say a variable has upper bound.

Definition at line 397 of file ClpInterior.hpp.

 void ClpInterior::clearUpperBound ( int sequence )
inline

Definition at line 401 of file ClpInterior.hpp.

 bool ClpInterior::upperBound ( int sequence ) const
inline

Definition at line 405 of file ClpInterior.hpp.

 void ClpInterior::setFakeLower ( int sequence )
inline

To say a variable has fake lower bound.

Definition at line 411 of file ClpInterior.hpp.

 void ClpInterior::clearFakeLower ( int sequence )
inline

Definition at line 415 of file ClpInterior.hpp.

 bool ClpInterior::fakeLower ( int sequence ) const
inline

Definition at line 419 of file ClpInterior.hpp.

 void ClpInterior::setFakeUpper ( int sequence )
inline

To say a variable has fake upper bound.

Definition at line 425 of file ClpInterior.hpp.

 void ClpInterior::clearFakeUpper ( int sequence )
inline

Definition at line 429 of file ClpInterior.hpp.

 bool ClpInterior::fakeUpper ( int sequence ) const
inline

Definition at line 433 of file ClpInterior.hpp.

## 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

 CoinWorkDouble ClpInterior::largestPrimalError_
protected

Largest error on Ax-b.

Definition at line 448 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::largestDualError_
protected

Largest error on basic duals.

Definition at line 450 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::sumDualInfeasibilities_
protected

Sum of dual infeasibilities.

Definition at line 452 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::sumPrimalInfeasibilities_
protected

Sum of primal infeasibilities.

Definition at line 454 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::worstComplementarity_
protected

Worst complementarity.

Definition at line 456 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::xsize_

Definition at line 459 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::zsize_

Definition at line 460 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::lower_
protected

Working copy of lower bounds (Owner of arrays below)

Definition at line 464 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rowLowerWork_
protected

Row lower bounds - working copy.

Definition at line 466 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::columnLowerWork_
protected

Column lower bounds - working copy.

Definition at line 468 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::upper_
protected

Working copy of upper bounds (Owner of arrays below)

Definition at line 470 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rowUpperWork_
protected

Row upper bounds - working copy.

Definition at line 472 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::columnUpperWork_
protected

Column upper bounds - working copy.

Definition at line 474 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::cost_
protected

Working copy of objective.

Definition at line 476 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rhs_

Rhs.

Definition at line 480 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::x_

Definition at line 481 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::y_

Definition at line 482 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::dj_

Definition at line 483 of file ClpInterior.hpp.

 ClpLsqr* ClpInterior::lsqrObject_
protected

Pointer to Lsqr object.

Definition at line 487 of file ClpInterior.hpp.

 ClpPdcoBase* ClpInterior::pdcoStuff_
protected

Pointer to stuff.

Definition at line 489 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::mu_
protected

Below here is standard barrier stuff mu.

Definition at line 492 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::objectiveNorm_
protected

objectiveNorm.

Definition at line 494 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::rhsNorm_
protected

rhsNorm.

Definition at line 496 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::solutionNorm_
protected

solutionNorm.

Definition at line 498 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::dualObjective_
protected

dualObjective.

Definition at line 500 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::primalObjective_
protected

primalObjective.

Definition at line 502 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::diagonalNorm_
protected

diagonalNorm.

Definition at line 504 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::stepLength_
protected

stepLength

Definition at line 506 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::linearPerturbation_
protected

linearPerturbation

Definition at line 508 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::diagonalPerturbation_
protected

diagonalPerturbation

Definition at line 510 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::gamma_
protected

Definition at line 512 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::delta_
protected

Definition at line 514 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::targetGap_
protected

targetGap

Definition at line 516 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::projectionTolerance_
protected

projectionTolerance

Definition at line 518 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::maximumRHSError_
protected

maximumRHSError. maximum Ax

Definition at line 520 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::maximumBoundInfeasibility_
protected

maximumBoundInfeasibility.

Definition at line 522 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::maximumDualError_
protected

maximumDualError.

Definition at line 524 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::diagonalScaleFactor_
protected

diagonalScaleFactor.

Definition at line 526 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::scaleFactor_
protected

scaleFactor. For scaling objective

Definition at line 528 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::actualPrimalStep_
protected

actualPrimalStep

Definition at line 530 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::actualDualStep_
protected

actualDualStep

Definition at line 532 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::smallestInfeasibility_
protected

smallestInfeasibility

Definition at line 534 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::historyInfeasibility_[LENGTH_HISTORY]
protected

Definition at line 537 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::complementarityGap_
protected

complementarityGap.

Definition at line 539 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::baseObjectiveNorm_
protected

baseObjectiveNorm

Definition at line 541 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::worstDirectionAccuracy_
protected

worstDirectionAccuracy

Definition at line 543 of file ClpInterior.hpp.

 CoinWorkDouble ClpInterior::maximumRHSChange_
protected

maximumRHSChange

Definition at line 545 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::errorRegion_
protected

errorRegion. i.e. Ax

Definition at line 547 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rhsFixRegion_
protected

rhsFixRegion.

Definition at line 549 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::upperSlack_
protected

upperSlack

Definition at line 551 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::lowerSlack_
protected

lowerSlack

Definition at line 553 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::diagonal_
protected

diagonal

Definition at line 555 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::solution_
protected

solution

Definition at line 557 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::workArray_
protected

work array

Definition at line 559 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::deltaX_
protected

delta X

Definition at line 561 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::deltaY_
protected

delta Y

Definition at line 563 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::deltaZ_
protected

deltaZ.

Definition at line 565 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::deltaW_
protected

deltaW.

Definition at line 567 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::deltaSU_
protected

deltaS.

Definition at line 569 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::deltaSL_
protected

Definition at line 570 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::primalR_
protected

Primal regularization array.

Definition at line 572 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::dualR_
protected

Dual regularization array.

Definition at line 574 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rhsB_
protected

rhs B

Definition at line 576 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rhsU_
protected

rhsU.

Definition at line 578 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rhsL_
protected

rhsL.

Definition at line 580 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rhsZ_
protected

rhsZ.

Definition at line 582 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rhsW_
protected

rhsW.

Definition at line 584 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::rhsC_
protected

rhs C

Definition at line 586 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::zVec_
protected

zVec

Definition at line 588 of file ClpInterior.hpp.

 CoinWorkDouble* ClpInterior::wVec_
protected

wVec

Definition at line 590 of file ClpInterior.hpp.

 ClpCholeskyBase* ClpInterior::cholesky_
protected

cholesky.

Definition at line 592 of file ClpInterior.hpp.

 int ClpInterior::numberComplementarityPairs_
protected

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

Definition at line 594 of file ClpInterior.hpp.

 int ClpInterior::numberComplementarityItems_
protected

numberComplementarityItems_ i.e. number of active bounds

Definition at line 596 of file ClpInterior.hpp.

 int ClpInterior::maximumBarrierIterations_
protected

Maximum iterations.

Definition at line 598 of file ClpInterior.hpp.

 bool ClpInterior::gonePrimalFeasible_
protected

gonePrimalFeasible.

Definition at line 600 of file ClpInterior.hpp.

 bool ClpInterior::goneDualFeasible_
protected

goneDualFeasible.

Definition at line 602 of file ClpInterior.hpp.

 int ClpInterior::algorithm_
protected

Which algorithm being used.

Definition at line 604 of file ClpInterior.hpp.

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