Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

ClpModel Class Reference

This is the base class for Linear and quadratic Models This knows nothing about the algorithm, but it seems to have a reasonable amount of information. More...

#include <ClpModel.hpp>

Inheritance diagram for ClpModel:

ClpInterior ClpSimplex ClpPredictorCorrector ClpSimplexDual ClpSimplexOther ClpSimplexPrimal ClpSimplexNonlinear List of all members.

Public Methods

Constructors and destructor
Note - copy methods copy ALL data so can chew up memory until other copy is freed

 ClpModel ()
 Default constructor.

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

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

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

 ~ClpModel ()
 Destructor.

Load model - loads some stuff and initializes others
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)
 Loads a problem (the constraints on the rows are given by lower and upper bounds).

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.

void loadQuadraticObjective (const int numberColumns, const CoinBigIndex *start, const int *column, const double *element)
 Load up quadratic objective.

void loadQuadraticObjective (const CoinPackedMatrix &matrix)
 Loads a problem (the constraints on the rows are given by lower and upper bounds).

void deleteQuadraticObjective ()
 Get rid of quadratic objective.

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

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

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

void deleteIntegerInformation ()
 Drop integer informations.

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

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

void addRows (int number, const double *rowLower, const double *rowUpper, const int *rowStarts, const int *columns, const double *elements)
 Add rows.

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

void addRows (int number, const double *rowLower, const double *rowUpper, const CoinPackedVectorBase *const *rows)
 Loads a problem (the constraints on the rows are given by lower and upper bounds).

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

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

void addColumns (int number, const double *columnLower, const double *columnUpper, const double *objective, const int *columnStarts, const int *columnLengths, const int *rows, const double *elements)
 Loads a problem (the constraints on the rows are given by lower and upper bounds).

void addColumns (int number, const double *columnLower, const double *columnUpper, const double *objective, const CoinPackedVectorBase *const *columns)
 Loads a problem (the constraints on the rows are given by lower and upper bounds).

void borrowModel (ClpModel &otherModel)
 Borrow model.

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

void createEmptyMatrix ()
 Create empty ClpPackedMatrix.

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

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

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.

gets and sets
int numberRows () const
 Number of rows.

int getNumRows () const
 Number of rows.

int getNumCols () const
 Number of columns.

int numberColumns () const
 Number of rows.

double primalTolerance () const
 Primal tolerance to use.

void setPrimalTolerance (double value)
 Number of rows.

double dualTolerance () const
 Dual tolerance to use.

void setDualTolerance (double value)
 Number of rows.

double dualObjectiveLimit () const
 Dual objective limit.

void setDualObjectiveLimit (double value)
 Number of rows.

double objectiveOffset () const
 Objective offset.

void setObjectiveOffset (double value)
 Number of rows.

std::string problemName () const
 Number of rows.

int numberIterations () const
 Number of iterations.

int getIterationCount () const
 Number of rows.

void setNumberIterations (int numberIterations)
 Number of rows.

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

void setSolveType (int type)
 Number of rows.

int maximumIterations () const
 Maximum number of iterations.

void setMaximumIterations (int value)
 Number of rows.

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

void setMaximumSeconds (double value)
 Number of rows.

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

int status () const
 Status of problem: 0 - optimal 1 - primal infeasible 2 - dual infeasible 3 - stopped on iterations or time 4 - stopped due to errors 5 - stopped by event handler (virtual int ClpEventHandler::event()).

void setProblemStatus (int problemStatus)
 Set problem status.

int secondaryStatus () const
 Secondary status of problem - may get extended 0 - none 1 - primal infeasible because dual limit reached 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 100 up - translation of enum from ClpEventHandler.

void setSecondaryStatus (int status)
 Number of rows.

bool isAbandoned () const
 Are there a numerical difficulties?

bool isProvenOptimal () const
 Is optimality proven?

bool isProvenPrimalInfeasible () const
 Is primal infeasiblity proven?

bool isProvenDualInfeasible () const
 Is dual infeasiblity proven?

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

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

bool isIterationLimitReached () const
 Iteration limit reached?

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

double getObjSense () const
 Number of rows.

void setOptimizationDirection (double value)
 Number of rows.

double * primalRowSolution () const
 Primal row solution.

const double * getRowActivity () const
 Number of rows.

double * primalColumnSolution () const
 Primal column solution.

const double * getColSolution () const
 Number of rows.

void setColSolution (const double *input)
 Number of rows.

double * dualRowSolution () const
 Dual row solution.

const double * getRowPrice () const
 Number of rows.

double * dualColumnSolution () const
 Reduced costs.

const double * getReducedCost () const
 Number of rows.

double * rowLower () const
 Row lower.

const double * getRowLower () const
 Number of rows.

double * rowUpper () const
 Row upper.

const double * getRowUpper () const
 Number of rows.

const double * rowScale () const
 Scaling.

const double * columnScale () const
 Number of rows.

void setRowScale (double *scale)
 Number of rows.

void setColumnScale (double *scale)
 Number of rows.

double objectiveScale () const
 Scaling of objective.

void setObjectiveScale (double value)
 Number of rows.

double rhsScale () const
 Scaling of rhs and bounds.

void setRhsScale (double value)
 Number of rows.

void scaling (int mode=1)
 Sets or unsets scaling, 0 -off, 1 equilibrium, 2 geometric, 3, auto, 4 dynamic(later).

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

int scalingFlag () const
 Gets scalingFlag.

double * objective () const
 Objective.

double * objective (const double *solution, double &offset, bool refresh=true) const
 Number of rows.

const double * getObjCoefficients () const
 Number of rows.

double * rowObjective () const
 Row Objective.

const double * getRowObjCoefficients () const
 Number of rows.

double * columnLower () const
 Column Lower.

const double * getColLower () const
 Number of rows.

double * columnUpper () const
 Column Upper.

const double * getColUpper () const
 Number of rows.

CoinPackedMatrix * matrix () const
 Matrix (if not ClpPackedmatrix be careful about memory leak.

int getNumElements () const
 Number of elements in matrix.

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

void setSmallElementValue (double value)
 Number of rows.

ClpMatrixBaserowCopy () const
 Row Matrix.

ClpMatrixBaseclpMatrix () const
 Clp Matrix.

void replaceMatrix (ClpMatrixBase *matrix)
 Replace Clp Matrix (current is not deleted and new is used) So up to user to delete one.

double objectiveValue () const
 Objective value.

double getObjValue () const
 Number of rows.

char * integerInformation () const
 Integer information.

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

double * unboundedRay () const
 Number of rows.

bool statusExists () const
 See if status array exists (partly for OsiClp).

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

unsigned char * statusCopy () const
 Return copy of status array (char[numberRows+numberColumns]), use delete [].

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

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

void * getUserPointer () const
 Number of rows.

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

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

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

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

void setLanguage (CoinMessages::Language language)
 Pass in Message handler (not deleted at end).

CoinMessageHandler * messageHandler () const
 Return handler.

CoinMessages messages () const
 Return messages.

CoinMessages * messagesPointer ()
 Return pointer to messages.

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.

int logLevel () const
 Pass in Message handler (not deleted at end).

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

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

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

const std::string & rowName (int iRow) const
 Pass in Message handler (not deleted at end).

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

const std::string & columnName (int iColumn) const
 Pass in Message handler (not deleted at end).

ClpObjectiveobjectiveAsObject () const
 Objective methods.

void setObjective (ClpObjective *objective)
 Pass in Message handler (not deleted at end).

void setObjectivePointer (ClpObjective *objective)
 Pass in Message handler (not deleted at end).

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

Matrix times vector methods
They can be faster if scalar is +- 1 These are covers so user need not worry about scaling Also for simplex I am not using basic/non-basic split

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

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

Parameter set/get methods
The set methods return true if the parameter was set to the given value, false otherwise.

There can be various reasons for failure: the given parameter is not applicable for the solver (e.g., refactorization frequency for the volume algorithm), the parameter is not yet implemented for the solver or simply the value of the parameter is out of the range the solver accepts. If a parameter setting call returns false check the details of your solver.

The get methods return true if the given parameter is applicable for the solver and is implemented. In this case the value of the parameter is returned in the second argument. Otherwise they return false.

once it has been decided where solver sits this may be redone

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

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

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

bool getIntParam (ClpIntParam key, int &value) const
 Set an integer parameter.

bool getDblParam (ClpDblParam key, double &value) const
 Set an integer parameter.

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


Protected Methods

private or protected methods
void gutsOfDelete ()
 Does most of deletion.

void gutsOfCopy (const ClpModel &rhs, bool trueCopy=true)
 Does most of copying If trueCopy false then just points to arrays.

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

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

void gutsOfScaling ()
 Does much of scaling.


Protected Attributes

data
double optimizationDirection_
 Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore.

double dblParam_ [ClpLastDblParam]
 Array of double parameters.

double objectiveValue_
 Objective value.

double smallElement_
 Small element value.

double objectiveScale_
 Scaling of objective.

double rhsScale_
 Scaling of rhs and bounds.

int numberRows_
 Number of rows.

int numberColumns_
 Number of columns.

double * rowActivity_
 Row activities.

double * columnActivity_
 Column activities.

double * dual_
 Duals.

double * reducedCost_
 Reduced costs.

double * rowLower_
 Row lower.

double * rowUpper_
 Row upper.

ClpObjectiveobjective_
 Objective.

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

double * columnLower_
 Column Lower.

double * columnUpper_
 Column Upper.

ClpMatrixBasematrix_
 Packed matrix.

ClpMatrixBaserowCopy_
 Row copy if wanted.

double * ray_
 Infeasible/unbounded ray.

double * rowScale_
 Row scale factors for matrix.

double * columnScale_
 Column scale factors.

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

unsigned char * status_
 Status Region.

char * integerType_
 Integer information.

void * userPointer_
 User pointer for whatever reason.

int intParam_ [ClpLastIntParam]
 Array of integer parameters.

int numberIterations_
 Number of iterations.

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

int problemStatus_
 Status of problem.

int secondaryStatus_
 Secondary status of problem.

int lengthNames_
 length of names (0 means no names)

CoinMessageHandler * handler_
 Message handler.

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

ClpEventHandlereventHandler_
 Event handler.

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

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

CoinMessages messages_
 Messages.

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


Detailed Description

This is the base class for Linear and quadratic Models This knows nothing about the algorithm, but it seems to have a reasonable amount of information.

I would welcome suggestions for what should be in this and how it relates to OsiSolverInterface. Some methods look very similar.

Definition at line 33 of file ClpModel.hpp.


Constructor & Destructor Documentation

ClpModel::ClpModel  
 

Default constructor.

ClpModel::ClpModel const ClpModel &    rhs,
int    scalingMode = -1
 

Copy constructor.

May scale depending on mode -1 leave mode as is 0 -off, 1 equilibrium, 2 geometric, 3, auto, 4 dynamic(later)

ClpModel::ClpModel 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

ClpModel::~ClpModel  
 

Destructor.


Member Function Documentation

ClpModel& ClpModel::operator= const ClpModel &    rhs
 

Assignment operator. This copies the data.

void ClpModel::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 in ClpInterior, and ClpSimplex.

void ClpModel::loadProblem const CoinPackedMatrix &    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 in ClpInterior, and ClpSimplex.

void ClpModel::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 in ClpInterior, and ClpSimplex.

void ClpModel::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 in ClpInterior, and ClpSimplex.

void ClpModel::loadQuadraticObjective const int    numberColumns,
const CoinBigIndex *    start,
const int *    column,
const double *    element
 

Load up quadratic objective.

This is stored as a CoinPackedMatrix

void ClpModel::loadQuadraticObjective const CoinPackedMatrix &    matrix
 

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 ClpModel::deleteQuadraticObjective  
 

Get rid of quadratic objective.

void ClpModel::setRowObjective const double *    rowObjective
 

This just loads up a row objective.

int ClpModel::readMps const char *    filename,
bool    keepNames = false,
bool    ignoreErrors = false
 

Read an mps file from the given filename.

Reimplemented in ClpInterior, and ClpSimplex.

void ClpModel::copyInIntegerInformation const char *    information
 

Copy in integer informations.

void ClpModel::deleteIntegerInformation  
 

Drop integer informations.

void ClpModel::resize int    newNumberRows,
int    newNumberColumns
 

Resizes rim part of model.

void ClpModel::deleteRows int    number,
const int *    which
 

Deletes rows.

void ClpModel::addRows int    number,
const double *    rowLower,
const double *    rowUpper,
const int *    rowStarts,
const int *    columns,
const double *    elements
 

Add rows.

void ClpModel::addRows int    number,
const double *    rowLower,
const double *    rowUpper,
const int *    rowStarts,
const int *    rowLengths,
const int *    columns,
const double *    elements
 

Add rows.

void ClpModel::addRows int    number,
const double *    rowLower,
const double *    rowUpper,
const CoinPackedVectorBase *const *    rows
 

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 ClpModel::deleteColumns int    number,
const int *    which
 

Deletes columns.

void ClpModel::addColumns int    number,
const double *    columnLower,
const double *    columnUpper,
const double *    objective,
const int *    columnStarts,
const int *    rows,
const double *    elements
 

Add columns.

void ClpModel::addColumns int    number,
const double *    columnLower,
const double *    columnUpper,
const double *    objective,
const int *    columnStarts,
const int *    columnLengths,
const int *    rows,
const double *    elements
 

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 ClpModel::addColumns int    number,
const double *    columnLower,
const double *    columnUpper,
const double *    objective,
const CoinPackedVectorBase *const *    columns
 

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 ClpModel::borrowModel ClpModel &    otherModel
 

Borrow model.

This is so we don't 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

Reimplemented in ClpInterior, and ClpSimplex.

void ClpModel::returnModel ClpModel &    otherModel
 

Return model - nulls all arrays so can be deleted safely also updates any scalars.

Reimplemented in ClpInterior.

void ClpModel::createEmptyMatrix  
 

Create empty ClpPackedMatrix.

void ClpModel::dropNames  
 

Drops names - makes lengthnames 0 and names empty.

void ClpModel::copyNames std::vector< std::string > &    rowNames,
std::vector< std::string > &    columnNames
 

Copies in names.

int ClpModel::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.

Row and column names may be null. formatType is

  • 0 - normal
  • 1 - extra accuracy
  • 2 - IEEE hex (later)

Returns non-zero on I/O error

int ClpModel::numberRows   const [inline]
 

Number of rows.

Definition at line 194 of file ClpModel.hpp.

References numberRows_.

int ClpModel::getNumRows   const [inline]
 

Number of rows.

Definition at line 197 of file ClpModel.hpp.

References numberRows_.

int ClpModel::getNumCols   const [inline]
 

Number of columns.

Definition at line 201 of file ClpModel.hpp.

References numberColumns_.

int ClpModel::numberColumns   const [inline]
 

Number of rows.

Definition at line 204 of file ClpModel.hpp.

References numberColumns_.

double ClpModel::primalTolerance   const [inline]
 

Primal tolerance to use.

Definition at line 208 of file ClpModel.hpp.

References ClpPrimalTolerance, and dblParam_.

void ClpModel::setPrimalTolerance double    value
 

Number of rows.

double ClpModel::dualTolerance   const [inline]
 

Dual tolerance to use.

Definition at line 213 of file ClpModel.hpp.

References ClpDualTolerance, and dblParam_.

void ClpModel::setDualTolerance double    value
 

Number of rows.

double ClpModel::dualObjectiveLimit   const [inline]
 

Dual objective limit.

Definition at line 216 of file ClpModel.hpp.

References ClpDualObjectiveLimit, and dblParam_.

void ClpModel::setDualObjectiveLimit double    value
 

Number of rows.

double ClpModel::objectiveOffset   const [inline]
 

Objective offset.

Definition at line 219 of file ClpModel.hpp.

References ClpObjOffset, and dblParam_.

void ClpModel::setObjectiveOffset double    value
 

Number of rows.

std::string ClpModel::problemName   const [inline]
 

Number of rows.

Definition at line 221 of file ClpModel.hpp.

References ClpProbName, and strParam_.

int ClpModel::numberIterations   const [inline]
 

Number of iterations.

Definition at line 223 of file ClpModel.hpp.

References numberIterations_.

int ClpModel::getIterationCount   const [inline]
 

Number of rows.

Definition at line 224 of file ClpModel.hpp.

References numberIterations_.

void ClpModel::setNumberIterations int    numberIterations [inline]
 

Number of rows.

Definition at line 225 of file ClpModel.hpp.

References numberIterations_.

int ClpModel::solveType   const [inline]
 

Solve type - 1 simplex, 2 simplex interface, 3 Interior.

Definition at line 228 of file ClpModel.hpp.

References solveType_.

void ClpModel::setSolveType int    type [inline]
 

Number of rows.

Definition at line 230 of file ClpModel.hpp.

References solveType_.

int ClpModel::maximumIterations   const [inline]
 

Maximum number of iterations.

Definition at line 233 of file ClpModel.hpp.

References ClpMaxNumIteration, and intParam_.

void ClpModel::setMaximumIterations int    value
 

Number of rows.

double ClpModel::maximumSeconds   const [inline]
 

Maximum time in seconds (from when set called).

Definition at line 236 of file ClpModel.hpp.

References ClpMaxSeconds, and dblParam_.

void ClpModel::setMaximumSeconds double    value
 

Number of rows.

bool ClpModel::hitMaximumIterations   const
 

Returns true if hit maximum iterations (or time).

int ClpModel::status   const [inline]
 

Status of problem: 0 - optimal 1 - primal infeasible 2 - dual infeasible 3 - stopped on iterations or time 4 - stopped due to errors 5 - stopped by event handler (virtual int ClpEventHandler::event()).

Definition at line 248 of file ClpModel.hpp.

References problemStatus_.

void ClpModel::setProblemStatus int    problemStatus [inline]
 

Set problem status.

Definition at line 250 of file ClpModel.hpp.

References problemStatus_.

int ClpModel::secondaryStatus   const [inline]
 

Secondary status of problem - may get extended 0 - none 1 - primal infeasible because dual limit reached 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 100 up - translation of enum from ClpEventHandler.

Definition at line 260 of file ClpModel.hpp.

References secondaryStatus_.

void ClpModel::setSecondaryStatus int    status [inline]
 

Number of rows.

Definition at line 261 of file ClpModel.hpp.

References secondaryStatus_.

bool ClpModel::isAbandoned   const [inline]
 

Are there a numerical difficulties?

Definition at line 264 of file ClpModel.hpp.

References problemStatus_.

bool ClpModel::isProvenOptimal   const [inline]
 

Is optimality proven?

Definition at line 266 of file ClpModel.hpp.

References problemStatus_.

bool ClpModel::isProvenPrimalInfeasible   const [inline]
 

Is primal infeasiblity proven?

Definition at line 268 of file ClpModel.hpp.

References problemStatus_.

bool ClpModel::isProvenDualInfeasible   const [inline]
 

Is dual infeasiblity proven?

Definition at line 270 of file ClpModel.hpp.

References problemStatus_.

bool ClpModel::isPrimalObjectiveLimitReached   const
 

Is the given primal objective limit reached?

bool ClpModel::isDualObjectiveLimitReached   const
 

Is the given dual objective limit reached?

bool ClpModel::isIterationLimitReached   const [inline]
 

Iteration limit reached?

Definition at line 276 of file ClpModel.hpp.

References problemStatus_.

double ClpModel::optimizationDirection   const [inline]
 

Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore.

Definition at line 278 of file ClpModel.hpp.

References optimizationDirection_.

double ClpModel::getObjSense   const [inline]
 

Number of rows.

Definition at line 281 of file ClpModel.hpp.

References optimizationDirection_.

void ClpModel::setOptimizationDirection double    value
 

Number of rows.

double* ClpModel::primalRowSolution   const [inline]
 

Primal row solution.

Definition at line 284 of file ClpModel.hpp.

References rowActivity_.

const double* ClpModel::getRowActivity   const [inline]
 

Number of rows.

Definition at line 285 of file ClpModel.hpp.

References rowActivity_.

double* ClpModel::primalColumnSolution   const [inline]
 

Primal column solution.

Definition at line 287 of file ClpModel.hpp.

References columnActivity_.

const double* ClpModel::getColSolution   const [inline]
 

Number of rows.

Definition at line 288 of file ClpModel.hpp.

References columnActivity_.

void ClpModel::setColSolution const double *    input [inline]
 

Number of rows.

Definition at line 289 of file ClpModel.hpp.

double* ClpModel::dualRowSolution   const [inline]
 

Dual row solution.

Definition at line 292 of file ClpModel.hpp.

References dual_.

const double* ClpModel::getRowPrice   const [inline]
 

Number of rows.

Definition at line 293 of file ClpModel.hpp.

References dual_.

double* ClpModel::dualColumnSolution   const [inline]
 

Reduced costs.

Definition at line 295 of file ClpModel.hpp.

References reducedCost_.

const double* ClpModel::getReducedCost   const [inline]
 

Number of rows.

Definition at line 296 of file ClpModel.hpp.

References reducedCost_.

double* ClpModel::rowLower   const [inline]
 

Row lower.

Definition at line 298 of file ClpModel.hpp.

References rowLower_.

const double* ClpModel::getRowLower   const [inline]
 

Number of rows.

Definition at line 299 of file ClpModel.hpp.

References rowLower_.

double* ClpModel::rowUpper   const [inline]
 

Row upper.

Definition at line 301 of file ClpModel.hpp.

References rowUpper_.

const double* ClpModel::getRowUpper   const [inline]
 

Number of rows.

Definition at line 302 of file ClpModel.hpp.

References rowUpper_.

const double* ClpModel::rowScale   const [inline]
 

Scaling.

Definition at line 304 of file ClpModel.hpp.

References rowScale_.

const double* ClpModel::columnScale   const [inline]
 

Number of rows.

Definition at line 305 of file ClpModel.hpp.

References columnScale_.

void ClpModel::setRowScale double *    scale [inline]
 

Number of rows.

Definition at line 306 of file ClpModel.hpp.

References rowScale_.

void ClpModel::setColumnScale double *    scale [inline]
 

Number of rows.

Definition at line 307 of file ClpModel.hpp.

References columnScale_.

double ClpModel::objectiveScale   const [inline]
 

Scaling of objective.

Definition at line 309 of file ClpModel.hpp.

References objectiveScale_.

void ClpModel::setObjectiveScale double    value [inline]
 

Number of rows.

Definition at line 311 of file ClpModel.hpp.

References objectiveScale_.

double ClpModel::rhsScale   const [inline]
 

Scaling of rhs and bounds.

Definition at line 314 of file ClpModel.hpp.

References rhsScale_.

void ClpModel::setRhsScale double    value [inline]
 

Number of rows.

Definition at line 316 of file ClpModel.hpp.

References rhsScale_.

void ClpModel::scaling int    mode = 1
 

Sets or unsets scaling, 0 -off, 1 equilibrium, 2 geometric, 3, auto, 4 dynamic(later).

void ClpModel::unscale  
 

If we constructed a "really" scaled model then this reverses the operation.

Quantities may not be exactly as they were before due to rounding errors

int ClpModel::scalingFlag   const [inline]
 

Gets scalingFlag.

Definition at line 324 of file ClpModel.hpp.

References scalingFlag_.

double* ClpModel::objective   const [inline]
 

Objective.

Definition at line 326 of file ClpModel.hpp.

References ClpObjective::gradient(), and objective_.

double* ClpModel::objective const double *    solution,
double &    offset,
bool    refresh = true
const [inline]
 

Number of rows.

Definition at line 335 of file ClpModel.hpp.

References ClpObjective::gradient(), and objective_.

const double* ClpModel::getObjCoefficients   const [inline]
 

Number of rows.

Definition at line 344 of file ClpModel.hpp.

References ClpObjective::gradient(), and objective_.

double* ClpModel::rowObjective   const [inline]
 

Row Objective.

Definition at line 354 of file ClpModel.hpp.

References rowObjective_.

const double* ClpModel::getRowObjCoefficients   const [inline]
 

Number of rows.

Definition at line 355 of file ClpModel.hpp.

References rowObjective_.

double* ClpModel::columnLower   const [inline]
 

Column Lower.

Definition at line 359 of file ClpModel.hpp.

References columnLower_.

const double* ClpModel::getColLower   const [inline]
 

Number of rows.

Definition at line 360 of file ClpModel.hpp.

References columnLower_.

double* ClpModel::columnUpper   const [inline]
 

Column Upper.

Definition at line 362 of file ClpModel.hpp.

References columnUpper_.

const double* ClpModel::getColUpper   const [inline]
 

Number of rows.

Definition at line 363 of file ClpModel.hpp.

References columnUpper_.

CoinPackedMatrix* ClpModel::matrix   const [inline]
 

Matrix (if not ClpPackedmatrix be careful about memory leak.

Definition at line 365 of file ClpModel.hpp.

References ClpMatrixBase::getPackedMatrix(), and matrix_.

int ClpModel::getNumElements   const [inline]
 

Number of elements in matrix.

Definition at line 370 of file ClpModel.hpp.

References ClpMatrixBase::getNumElements(), and matrix_.

double ClpModel::getSmallElementValue   const [inline]
 

Small element value - elements less than this set to zero, default is 1.0e-20.

Definition at line 374 of file ClpModel.hpp.

References smallElement_.

void ClpModel::setSmallElementValue double    value [inline]
 

Number of rows.

Definition at line 376 of file ClpModel.hpp.

References smallElement_.

ClpMatrixBase* ClpModel::rowCopy   const [inline]
 

Row Matrix.

Definition at line 379 of file ClpModel.hpp.

References rowCopy_.

ClpMatrixBase* ClpModel::clpMatrix   const [inline]
 

Clp Matrix.

Definition at line 381 of file ClpModel.hpp.

References matrix_.

void ClpModel::replaceMatrix ClpMatrixBase   matrix
 

Replace Clp Matrix (current is not deleted and new is used) So up to user to delete one.

double ClpModel::objectiveValue   const [inline]
 

Objective value.

Definition at line 387 of file ClpModel.hpp.

References ClpObjOffset, dblParam_, objectiveValue_, and optimizationDirection_.

double ClpModel::getObjValue   const [inline]
 

Number of rows.

Definition at line 390 of file ClpModel.hpp.

References ClpObjOffset, dblParam_, objectiveValue_, and optimizationDirection_.

char* ClpModel::integerInformation   const [inline]
 

Integer information.

Definition at line 394 of file ClpModel.hpp.

References integerType_.

double* ClpModel::infeasibilityRay   const
 

Infeasibility/unbounded ray (NULL returned if none/wrong) Up to user to use delete [] on these arrays.

double* ClpModel::unboundedRay   const
 

Number of rows.

bool ClpModel::statusExists   const [inline]
 

See if status array exists (partly for OsiClp).

Definition at line 400 of file ClpModel.hpp.

References status_.

unsigned char* ClpModel::statusArray   const [inline]
 

Return address of status array (char[numberRows+numberColumns]).

Definition at line 403 of file ClpModel.hpp.

References status_.

unsigned char* ClpModel::statusCopy   const
 

Return copy of status array (char[numberRows+numberColumns]), use delete [].

void ClpModel::copyinStatus const unsigned char *    statusArray
 

Copy in status vector.

void ClpModel::setUserPointer void *    pointer [inline]
 

User pointer for whatever reason.

Definition at line 412 of file ClpModel.hpp.

References userPointer_.

void* ClpModel::getUserPointer   const [inline]
 

Number of rows.

Definition at line 414 of file ClpModel.hpp.

References userPointer_.

void ClpModel::passInMessageHandler CoinMessageHandler *    handler
 

Pass in Message handler (not deleted at end).

CoinMessageHandler* ClpModel::pushMessageHandler CoinMessageHandler *    handler,
bool &    oldDefault
 

Pass in Message handler (not deleted at end) and return current.

void ClpModel::popMessageHandler CoinMessageHandler *    oldHandler,
bool    oldDefault
 

back to previous message handler

void ClpModel::newLanguage CoinMessages::Language    language
 

Set language.

Referenced by setLanguage().

void ClpModel::setLanguage CoinMessages::Language    language [inline]
 

Pass in Message handler (not deleted at end).

Definition at line 428 of file ClpModel.hpp.

References newLanguage().

CoinMessageHandler* ClpModel::messageHandler   const [inline]
 

Return handler.

Definition at line 430 of file ClpModel.hpp.

References handler_.

CoinMessages ClpModel::messages   const [inline]
 

Return messages.

Definition at line 432 of file ClpModel.hpp.

References messages_.

CoinMessages* ClpModel::messagesPointer   [inline]
 

Return pointer to messages.

Definition at line 434 of file ClpModel.hpp.

References messages_.

void ClpModel::setLogLevel int    value [inline]
 

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.

Definition at line 443 of file ClpModel.hpp.

References handler_.

int ClpModel::logLevel   const [inline]
 

Pass in Message handler (not deleted at end).

Definition at line 444 of file ClpModel.hpp.

References handler_.

void ClpModel::passInEventHandler const ClpEventHandler   eventHandler
 

Pass in Event handler (cloned and deleted at end).

Reimplemented in ClpSimplex.

int ClpModel::lengthNames   const [inline]
 

length of names (0 means no names0

Definition at line 448 of file ClpModel.hpp.

References lengthNames_.

const std::vector<std::string>* ClpModel::rowNames   const [inline]
 

Row names.

Definition at line 450 of file ClpModel.hpp.

References rowNames_.

const std::string& ClpModel::rowName int    iRow const [inline]
 

Pass in Message handler (not deleted at end).

Definition at line 453 of file ClpModel.hpp.

References rowNames_.

const std::vector<std::string>* ClpModel::columnNames   const [inline]
 

Column names.

Definition at line 457 of file ClpModel.hpp.

References columnNames_.

const std::string& ClpModel::columnName int    iColumn const [inline]
 

Pass in Message handler (not deleted at end).

Definition at line 460 of file ClpModel.hpp.

References columnNames_.

ClpObjective* ClpModel::objectiveAsObject   const [inline]
 

Objective methods.

Definition at line 464 of file ClpModel.hpp.

References objective_.

void ClpModel::setObjective ClpObjective   objective
 

Pass in Message handler (not deleted at end).

void ClpModel::setObjectivePointer ClpObjective   objective [inline]
 

Pass in Message handler (not deleted at end).

Definition at line 467 of file ClpModel.hpp.

References objective_.

int ClpModel::emptyProblem int *    infeasNumber = NULL,
double *    infeasSum = NULL,
bool    printMessage = true
 

Solve a problem with no elements - return status and dual and primal infeasibilites.

void ClpModel::times double    scalar,
const double *    x,
double *    y
const
 

Return y + A * x * scalar in y.

Precondition:
x must be of size numColumns()

y must be of size numRows()

void ClpModel::transposeTimes double    scalar,
const double *    x,
double *    y
const
 

Return y + x * scalar * A in y.

Precondition:
x must be of size numRows()

y must be of size numColumns()

bool ClpModel::setIntParam ClpIntParam    key,
int    value
 

Set an integer parameter.

bool ClpModel::setDblParam ClpDblParam    key,
double    value
 

Set an double parameter.

bool ClpModel::setStrParam ClpStrParam    key,
const std::string &    value
 

Set an string parameter.

bool ClpModel::getIntParam ClpIntParam    key,
int &    value
const [inline]
 

Set an integer parameter.

Definition at line 518 of file ClpModel.hpp.

References ClpLastIntParam, and intParam_.

bool ClpModel::getDblParam ClpDblParam    key,
double &    value
const [inline]
 

Set an integer parameter.

Definition at line 527 of file ClpModel.hpp.

References ClpLastDblParam, and dblParam_.

bool ClpModel::getStrParam ClpStrParam    key,
std::string &    value
const [inline]
 

Set an integer parameter.

Definition at line 536 of file ClpModel.hpp.

References ClpLastStrParam, and strParam_.

void ClpModel::gutsOfDelete   [protected]
 

Does most of deletion.

Reimplemented in ClpInterior.

void ClpModel::gutsOfCopy const ClpModel &    rhs,
bool    trueCopy = true
[protected]
 

Does most of copying If trueCopy false then just points to arrays.

void ClpModel::getRowBound int    iRow,
double &    lower,
double &    upper
const [protected]
 

gets lower and upper bounds on rows

void ClpModel::gutsOfLoadModel int    numberRows,
int    numberColumns,
const double *    collb,
const double *    colub,
const double *    obj,
const double *    rowlb,
const double *    rowub,
const double *    rowObjective = NULL
[protected]
 

puts in format I like - 4 array matrix - may make row copy

void ClpModel::gutsOfScaling   [protected]
 

Does much of scaling.


Member Data Documentation

double ClpModel::optimizationDirection_ [protected]
 

Direction of optimization (1 - minimize, -1 - maximize, 0 - ignore.

Definition at line 573 of file ClpModel.hpp.

Referenced by getObjSense(), getObjValue(), objectiveValue(), and optimizationDirection().

double ClpModel::dblParam_[ClpLastDblParam] [protected]
 

Array of double parameters.

Definition at line 575 of file ClpModel.hpp.

Referenced by dualObjectiveLimit(), dualTolerance(), getDblParam(), getObjValue(), maximumSeconds(), objectiveOffset(), objectiveValue(), and primalTolerance().

double ClpModel::objectiveValue_ [protected]
 

Objective value.

Definition at line 577 of file ClpModel.hpp.

Referenced by getObjValue(), objectiveValue(), ClpSimplex::rawObjectiveValue(), and ClpInterior::rawObjectiveValue().

double ClpModel::smallElement_ [protected]
 

Small element value.

Definition at line 579 of file ClpModel.hpp.

Referenced by getSmallElementValue(), and setSmallElementValue().

double ClpModel::objectiveScale_ [protected]
 

Scaling of objective.

Definition at line 581 of file ClpModel.hpp.

Referenced by objectiveScale(), and setObjectiveScale().

double ClpModel::rhsScale_ [protected]
 

Scaling of rhs and bounds.

Definition at line 583 of file ClpModel.hpp.

Referenced by rhsScale(), and setRhsScale().

int ClpModel::numberRows_ [protected]
 

Number of rows.

Definition at line 585 of file ClpModel.hpp.

Referenced by getNumRows(), and numberRows().

int ClpModel::numberColumns_ [protected]
 

Number of columns.

Definition at line 587 of file ClpModel.hpp.

Referenced by getNumCols(), ClpSimplex::getRowStatus(), ClpSimplex::isColumn(), ClpInterior::isColumn(), numberColumns(), ClpSimplex::originalLower(), ClpSimplex::originalUpper(), ClpSimplex::sequenceWithin(), ClpInterior::sequenceWithin(), and ClpSimplex::setRowStatus().

double* ClpModel::rowActivity_ [protected]
 

Row activities.

Definition at line 589 of file ClpModel.hpp.

Referenced by getRowActivity(), and primalRowSolution().

double* ClpModel::columnActivity_ [protected]
 

Column activities.

Definition at line 591 of file ClpModel.hpp.

Referenced by getColSolution(), and primalColumnSolution().

double* ClpModel::dual_ [protected]
 

Duals.

Definition at line 593 of file ClpModel.hpp.

Referenced by dualRowSolution(), and getRowPrice().

double* ClpModel::reducedCost_ [protected]
 

Reduced costs.

Definition at line 595 of file ClpModel.hpp.

Referenced by dualColumnSolution(), and getReducedCost().

double* ClpModel::rowLower_ [protected]
 

Row lower.

Definition at line 597 of file ClpModel.hpp.

Referenced by getRowLower(), ClpSimplex::originalLower(), and rowLower().

double* ClpModel::rowUpper_ [protected]
 

Row upper.

Definition at line 599 of file ClpModel.hpp.

Referenced by getRowUpper(), ClpSimplex::originalUpper(), and rowUpper().

ClpObjective* ClpModel::objective_ [protected]
 

Objective.

Definition at line 601 of file ClpModel.hpp.

Referenced by getObjCoefficients(), objective(), objectiveAsObject(), and setObjectivePointer().

double* ClpModel::rowObjective_ [protected]
 

Row Objective (? sign) - may be NULL.

Definition at line 603 of file ClpModel.hpp.

Referenced by getRowObjCoefficients(), and rowObjective().

double* ClpModel::columnLower_ [protected]
 

Column Lower.

Definition at line 605 of file ClpModel.hpp.

Referenced by columnLower(), getColLower(), and ClpSimplex::originalLower().

double* ClpModel::columnUpper_ [protected]
 

Column Upper.

Definition at line 607 of file ClpModel.hpp.

Referenced by columnUpper(), getColUpper(), and ClpSimplex::originalUpper().

ClpMatrixBase* ClpModel::matrix_ [protected]
 

Packed matrix.

Definition at line 609 of file ClpModel.hpp.

Referenced by clpMatrix(), getNumElements(), and matrix().

ClpMatrixBase* ClpModel::rowCopy_ [protected]
 

Row copy if wanted.

Definition at line 611 of file ClpModel.hpp.

Referenced by rowCopy().

double* ClpModel::ray_ [protected]
 

Infeasible/unbounded ray.

Definition at line 613 of file ClpModel.hpp.

double* ClpModel::rowScale_ [protected]
 

Row scale factors for matrix.

Definition at line 615 of file ClpModel.hpp.

Referenced by rowScale(), and setRowScale().

double* ClpModel::columnScale_ [protected]
 

Column scale factors.

Definition at line 617 of file ClpModel.hpp.

Referenced by columnScale(), and setColumnScale().

int ClpModel::scalingFlag_ [protected]
 

Scale flag, 0 none, 1 equilibrium, 2 geometric, 3, auto, 4 dynamic.

Definition at line 619 of file ClpModel.hpp.

Referenced by scalingFlag().

unsigned char* ClpModel::status_ [protected]
 

Status Region.

I know that not all algorithms need a status array, but it made sense for things like crossover and put all permanent stuff in one place. No assumption is made about what is in status array (although it might be good to reserve bottom 3 bits (i.e. 0-7 numeric) for classic status). This is number of columns + number of rows long (in that order).

Definition at line 627 of file ClpModel.hpp.

Referenced by ClpSimplex::active(), ClpSimplex::clearActive(), ClpInterior::clearFakeLower(), ClpInterior::clearFakeUpper(), ClpInterior::clearFixed(), ClpInterior::clearFixedOrFree(), ClpSimplex::clearFlagged(), ClpInterior::clearFlagged(), ClpInterior::clearLowerBound(), ClpSimplex::clearPivoted(), ClpInterior::clearUpperBound(), ClpInterior::fakeLower(), ClpInterior::fakeUpper(), ClpInterior::fixed(), ClpInterior::fixedOrFree(), ClpSimplex::flagged(), ClpInterior::flagged(), ClpSimplex::getColumnStatus(), ClpSimplex::getFakeBound(), ClpSimplex::getRowStatus(), ClpSimplex::getStatus(), ClpInterior::lowerBound(), ClpSimplex::pivoted(), ClpSimplex::setActive(), ClpSimplex::setColumnStatus(), ClpSimplex::setFakeBound(), ClpInterior::setFakeLower(), ClpInterior::setFakeUpper(), ClpInterior::setFixed(), ClpInterior::setFixedOrFree(), ClpInterior::setFlagged(), ClpInterior::setLowerBound(), ClpSimplex::setPivoted(), ClpSimplex::setRowStatus(), ClpSimplex::setStatus(), ClpInterior::setUpperBound(), statusArray(), statusExists(), and ClpInterior::upperBound().

char* ClpModel::integerType_ [protected]
 

Integer information.

Definition at line 629 of file ClpModel.hpp.

Referenced by integerInformation().

void* ClpModel::userPointer_ [protected]
 

User pointer for whatever reason.

Definition at line 631 of file ClpModel.hpp.

Referenced by getUserPointer(), and setUserPointer().

int ClpModel::intParam_[ClpLastIntParam] [protected]
 

Array of integer parameters.

Definition at line 633 of file ClpModel.hpp.

Referenced by getIntParam(), and maximumIterations().

int ClpModel::numberIterations_ [protected]
 

Number of iterations.

Definition at line 635 of file ClpModel.hpp.

Referenced by getIterationCount(), numberIterations(), and setNumberIterations().

int ClpModel::solveType_ [protected]
 

Solve type - 1 simplex, 2 simplex interface, 3 Interior.

Definition at line 637 of file ClpModel.hpp.

Referenced by setSolveType(), and solveType().

int ClpModel::problemStatus_ [protected]
 

Status of problem.

Definition at line 639 of file ClpModel.hpp.

Referenced by isAbandoned(), isIterationLimitReached(), isProvenDualInfeasible(), isProvenOptimal(), isProvenPrimalInfeasible(), setProblemStatus(), and status().

int ClpModel::secondaryStatus_ [protected]
 

Secondary status of problem.

Definition at line 641 of file ClpModel.hpp.

Referenced by secondaryStatus(), and setSecondaryStatus().

int ClpModel::lengthNames_ [protected]
 

length of names (0 means no names)

Definition at line 643 of file ClpModel.hpp.

Referenced by lengthNames().

CoinMessageHandler* ClpModel::handler_ [protected]
 

Message handler.

Definition at line 645 of file ClpModel.hpp.

Referenced by logLevel(), messageHandler(), and setLogLevel().

bool ClpModel::defaultHandler_ [protected]
 

Flag to say if default handler (so delete).

Definition at line 647 of file ClpModel.hpp.

ClpEventHandler* ClpModel::eventHandler_ [protected]
 

Event handler.

Definition at line 649 of file ClpModel.hpp.

std::vector<std::string> ClpModel::rowNames_ [protected]
 

Row names.

Definition at line 651 of file ClpModel.hpp.

Referenced by rowName(), and rowNames().

std::vector<std::string> ClpModel::columnNames_ [protected]
 

Column names.

Definition at line 653 of file ClpModel.hpp.

Referenced by columnName(), and columnNames().

CoinMessages ClpModel::messages_ [protected]
 

Messages.

Definition at line 655 of file ClpModel.hpp.

Referenced by messages(), and messagesPointer().

std::string ClpModel::strParam_[ClpLastStrParam] [protected]
 

Array of string parameters.

Definition at line 657 of file ClpModel.hpp.

Referenced by getStrParam(), and problemName().


The documentation for this class was generated from the following file:
Generated on Fri Aug 6 02:01:35 2004 by doxygen1.3-rc2