|
|
| virtual ClpMatrixBase * | reverseOrderedCopy () const |
| | Returns a new matrix in reverse order without gaps (GUB wants NULL) More...
|
| |
| virtual int | countBasis (const int *whichColumn, int &numberColumnBasic) |
| | Returns number of elements in column part of basis. More...
|
| |
| virtual void | fillBasis (ClpSimplex *model, const int *whichColumn, int &numberColumnBasic, int *row, int *start, int *rowCount, int *columnCount, CoinFactorizationDouble *element) |
| | Fills in column part of basis. More...
|
| |
| virtual void | unpack (const ClpSimplex *model, CoinIndexedVector *rowArray, int column) const |
| | Unpacks a column into an CoinIndexedvector. More...
|
| |
| virtual void | unpackPacked (ClpSimplex *model, CoinIndexedVector *rowArray, int column) const |
| | Unpacks a column into an CoinIndexedvector in packed foramt Note that model is NOT const. More...
|
| |
| virtual void | add (const ClpSimplex *model, CoinIndexedVector *rowArray, int column, double multiplier) const |
| | Adds multiple of a column into an CoinIndexedvector You can use quickAdd to add to vector. More...
|
| |
| virtual void | add (const ClpSimplex *model, double *array, int column, double multiplier) const |
| | Adds multiple of a column into an array. More...
|
| |
| virtual void | partialPricing (ClpSimplex *model, double start, double end, int &bestSequence, int &numberWanted) |
| | Partial pricing. More...
|
| |
| virtual int | hiddenRows () const |
| | Returns number of hidden rows e.g. gub. More...
|
| |
|
| virtual void | transposeTimes (const ClpSimplex *model, double scalar, const CoinIndexedVector *x, CoinIndexedVector *y, CoinIndexedVector *z) const |
| | Return x * scalar * A + y in z. More...
|
| |
| virtual void | transposeTimesByRow (const ClpSimplex *model, double scalar, const CoinIndexedVector *x, CoinIndexedVector *y, CoinIndexedVector *z) const |
| | Return x * scalar * A + y in z. More...
|
| |
| virtual void | subsetTransposeTimes (const ClpSimplex *model, const CoinIndexedVector *x, const CoinIndexedVector *y, CoinIndexedVector *z) const |
| | Return x *A in z but just for indices in y. More...
|
| |
| virtual int | extendUpdated (ClpSimplex *model, CoinIndexedVector *update, int mode) |
| | expands an updated column to allow for extra rows which the main solver does not know about and returns number added if mode 0. More...
|
| |
| virtual void | primalExpanded (ClpSimplex *model, int mode) |
| | mode=0 - Set up before "update" and "times" for primal solution using extended rows mode=1 - Cleanup primal solution after "times" using extended rows. More...
|
| |
| virtual void | dualExpanded (ClpSimplex *model, CoinIndexedVector *array, double *other, int mode) |
| | mode=0 - Set up before "updateTranspose" and "transposeTimes" for duals using extended updates array (and may use other if dual values pass) mode=1 - Update dual solution after "transposeTimes" using extended rows. More...
|
| |
| virtual int | generalExpanded (ClpSimplex *model, int mode, int &number) |
| | mode=0 - Create list of non-key basics in pivotVariable_ using number as numberBasic in and out mode=1 - Set all key variables as basic mode=2 - return number extra rows needed, number gives maximum number basic mode=3 - before replaceColumn mode=4 - return 1 if can do primal, 2 if dual, 3 if both mode=5 - save any status stuff (when in good state) mode=6 - restore status stuff mode=7 - flag given variable (normally sequenceIn) mode=8 - unflag all variables mode=9 - synchronize costs mode=10 - return 1 if there may be changing bounds on variable (column generation) mode=11 - make sure set is clean (used when a variable rejected - but not flagged) mode=12 - after factorize but before permute stuff mode=13 - at end of simplex to delete stuff More...
|
| |
| virtual int | updatePivot (ClpSimplex *model, double oldInValue, double oldOutValue) |
| | update information for a pivot (and effective rhs) More...
|
| |
| virtual void | useEffectiveRhs (ClpSimplex *model, bool cheapest=true) |
| | Sets up an effective RHS and does gub crash if needed. More...
|
| |
| virtual double * | rhsOffset (ClpSimplex *model, bool forceRefresh=false, bool check=false) |
| | Returns effective RHS offset if it is being used. More...
|
| |
| virtual int | synchronize (ClpSimplex *model, int mode) |
| | This is local to Gub to allow synchronization: mode=0 when status of basis is good mode=1 when variable is flagged mode=2 when all variables unflagged (returns number flagged) mode=3 just reset costs (primal) mode=4 correct number of dual infeasibilities mode=5 return 4 if time to re-factorize mode=6 - return 1 if there may be changing bounds on variable (column generation) mode=7 - do extra restores for column generation mode=8 - make sure set is clean mode=9 - adjust lower, upper on set by incoming. More...
|
| |
| virtual void | correctSequence (const ClpSimplex *model, int &sequenceIn, int &sequenceOut) |
| | Correct sequence in and out to give true value. More...
|
| |
|
| | ClpGubMatrix () |
| | Default constructor. More...
|
| |
| virtual | ~ClpGubMatrix () |
| | Destructor. More...
|
| |
|
| | ClpGubMatrix (const ClpGubMatrix &) |
| | The copy constructor. More...
|
| |
| | ClpGubMatrix (const CoinPackedMatrix &) |
| | The copy constructor from an CoinPackedMatrix. More...
|
| |
| | ClpGubMatrix (const ClpGubMatrix &wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns) |
| | Subset constructor (without gaps). More...
|
| |
| | ClpGubMatrix (const CoinPackedMatrix &wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns) |
| | The copy constructor. More...
|
| |
| | ClpGubMatrix (CoinPackedMatrix *matrix) |
| | This takes over ownership (for space reasons) More...
|
| |
| | ClpGubMatrix (ClpPackedMatrix *matrix, int numberSets, const int *start, const int *end, const double *lower, const double *upper, const unsigned char *status=NULL) |
| | This takes over ownership (for space reasons) and is the real constructor. More...
|
| |
| ClpGubMatrix & | operator= (const ClpGubMatrix &) |
| | The copy constructor. More...
|
| |
| virtual ClpMatrixBase * | clone () const |
| | Clone. More...
|
| |
| virtual ClpMatrixBase * | subsetClone (int numberRows, const int *whichRows, int numberColumns, const int *whichColumns) const |
| | Subset clone (without gaps). More...
|
| |
| void | redoSet (ClpSimplex *model, int newKey, int oldKey, int iSet) |
| | redoes next_ for a set. More...
|
| |
|
| ClpSimplex::Status | getStatus (int sequence) const |
| | Status. More...
|
| |
| void | setStatus (int sequence, ClpSimplex::Status status) |
| | Status. More...
|
| |
| void | setFlagged (int sequence) |
| | To flag a variable. More...
|
| |
| void | clearFlagged (int sequence) |
| | Status. More...
|
| |
| bool | flagged (int sequence) const |
| | Status. More...
|
| |
| void | setAbove (int sequence) |
| | To say key is above ub. More...
|
| |
| void | setFeasible (int sequence) |
| | To say key is feasible. More...
|
| |
| void | setBelow (int sequence) |
| | To say key is below lb. More...
|
| |
| double | weight (int sequence) const |
| | Status. More...
|
| |
| int * | start () const |
| | Starts. More...
|
| |
| int * | end () const |
| | End. More...
|
| |
| double * | lower () const |
| | Lower bounds on sets. More...
|
| |
| double * | upper () const |
| | Upper bounds on sets. More...
|
| |
| int * | keyVariable () const |
| | Key variable of set. More...
|
| |
| int * | backward () const |
| | Backward pointer to set number. More...
|
| |
| int | numberSets () const |
| | Number of sets (gub rows) More...
|
| |
| void | switchOffCheck () |
| | Switches off dj checking each factorization (for BIG models) More...
|
| |
| virtual CoinPackedMatrix * | getPackedMatrix () const |
| | Return a complete CoinPackedMatrix. More...
|
| |
| virtual bool | isColOrdered () const |
| | Whether the packed matrix is column major ordered or not. More...
|
| |
| virtual CoinBigIndex | getNumElements () const |
| | Number of entries in the packed matrix. More...
|
| |
| virtual int | getNumCols () const |
| | Number of columns. More...
|
| |
| virtual int | getNumRows () const |
| | Number of rows. More...
|
| |
| virtual const double * | getElements () const |
| | A vector containing the elements in the packed matrix. More...
|
| |
| double * | getMutableElements () const |
| | Mutable elements. More...
|
| |
| virtual const int * | getIndices () const |
| | A vector containing the minor indices of the elements in the packed matrix. More...
|
| |
| virtual const CoinBigIndex * | getVectorStarts () const |
| | Return a complete CoinPackedMatrix. More...
|
| |
| virtual const int * | getVectorLengths () const |
| | The lengths of the major-dimension vectors. More...
|
| |
| virtual int | getVectorLength (int index) const |
| | The length of a single major-dimension vector. More...
|
| |
| virtual void | deleteCols (const int numDel, const int *indDel) |
| | Delete the columns whose indices are listed in indDel. More...
|
| |
| virtual void | deleteRows (const int numDel, const int *indDel) |
| | Delete the rows whose indices are listed in indDel. More...
|
| |
| virtual void | appendCols (int number, const CoinPackedVectorBase *const *columns) |
| | Append Columns. More...
|
| |
| virtual void | appendRows (int number, const CoinPackedVectorBase *const *rows) |
| | Append Rows. More...
|
| |
| virtual int | appendMatrix (int number, int type, const CoinBigIndex *starts, const int *index, const double *element, int numberOther=-1) |
| | Append a set of rows/columns to the end of the matrix. More...
|
| |
| virtual void | replaceVector (const int index, const int numReplace, const double *newElements) |
| | Replace the elements of a vector. More...
|
| |
| virtual void | modifyCoefficient (int row, int column, double newElement, bool keepZero=false) |
| | Modify one element of packed matrix. More...
|
| |
| virtual int | scale (ClpModel *model, ClpSimplex *simplex=NULL) const |
| | Creates scales for column copy (rowCopy in model may be modified) returns non-zero if no scaling done. More...
|
| |
| virtual void | scaleRowCopy (ClpModel *model) const |
| | Scales rowCopy if column copy scaled Only called if scales already exist. More...
|
| |
| void | createScaledMatrix (ClpSimplex *model) const |
| | Creates scaled column copy if scales exist. More...
|
| |
| virtual ClpMatrixBase * | scaledColumnCopy (ClpModel *model) const |
| | Realy really scales column copy Only called if scales already exist. More...
|
| |
| virtual bool | allElementsInRange (ClpModel *model, double smallest, double largest, int check=15) |
| | Checks if all elements are in valid range. More...
|
| |
| virtual void | rangeOfElements (double &smallestNegative, double &largestNegative, double &smallestPositive, double &largestPositive) |
| | Returns largest and smallest elements of both signs. More...
|
| |
| virtual void | releasePackedMatrix () const |
| | Allow any parts of a created CoinPackedMatrix to be deleted. More...
|
| |
| virtual CoinBigIndex * | dubiousWeights (const ClpSimplex *model, int *inputWeights) const |
| | Given positive integer weights for each row fills in sum of weights for each column (and slack). More...
|
| |
| virtual bool | canDoPartialPricing () const |
| | Says whether it can do partial pricing. More...
|
| |
| virtual int | refresh (ClpSimplex *model) |
| | makes sure active columns correct More...
|
| |
| virtual void | reallyScale (const double *rowScale, const double *columnScale) |
| | Return a complete CoinPackedMatrix. More...
|
| |
| virtual void | setDimensions (int numrows, int numcols) |
| | Set the dimensions of the matrix. More...
|
| |
| virtual void | times (double scalar, const double *x, double *y) const |
| | Return y + A * scalar *x in y. More...
|
| |
| virtual void | times (double scalar, const double *x, double *y, const double *rowScale, const double *columnScale) const |
| | And for scaling. More...
|
| |
| virtual void | transposeTimes (double scalar, const double *x, double *y) const |
| | Return y + x * scalar * A in y. More...
|
| |
| virtual void | transposeTimes (double scalar, const double *x, double *y, const double *rowScale, const double *columnScale, double *spare=NULL) const |
| | And for scaling. More...
|
| |
| void | transposeTimesSubset (int number, const int *which, const double *pi, double *y, const double *rowScale, const double *columnScale, double *spare=NULL) const |
| | Return y - pi * A in y. More...
|
| |
| void | transposeTimesByColumn (const ClpSimplex *model, double scalar, const CoinIndexedVector *x, CoinIndexedVector *y, CoinIndexedVector *z) const |
| | Return x * scalar * A in z. More...
|
| |
| virtual bool | canCombine (const ClpSimplex *model, const CoinIndexedVector *pi) const |
| | Returns true if can combine transposeTimes and subsetTransposeTimes and if it would be faster. More...
|
| |
| virtual int | transposeTimes2 (const ClpSimplex *model, const CoinIndexedVector *pi1, CoinIndexedVector *dj1, const CoinIndexedVector *pi2, CoinIndexedVector *spare, double *infeas, double *reducedCost, double referenceIn, double devex, unsigned int *reference, double *weights, double scaleFactor) |
| | Updates two arrays for steepest and does devex weights Returns nonzero if updates reduced cost and infeas - new infeas in dj1. More...
|
| |
| virtual void | subsetTimes2 (const ClpSimplex *model, CoinIndexedVector *dj1, const CoinIndexedVector *pi2, CoinIndexedVector *dj2, double referenceIn, double devex, unsigned int *reference, double *weights, double scaleFactor) |
| | Updates second array for steepest and does devex weights. More...
|
| |
| void | useEffectiveRhs (ClpSimplex *model) |
| | Sets up an effective RHS. More...
|
| |
| CoinPackedMatrix * | matrix () const |
| | Returns CoinPackedMatrix (non const) More...
|
| |
| void | setMatrixNull () |
| | Just sets matrix_ to NULL so it can be used elsewhere. More...
|
| |
| void | makeSpecialColumnCopy () |
| | Say we want special column copy. More...
|
| |
| void | releaseSpecialColumnCopy () |
| | Say we don't want special column copy. More...
|
| |
| bool | zeros () const |
| | Are there zeros? More...
|
| |
| bool | wantsSpecialColumnCopy () const |
| | Do we want special column copy. More...
|
| |
| int | flags () const |
| | Flags. More...
|
| |
| void | checkGaps () |
| | Sets flags_ correctly. More...
|
| |
| int | numberActiveColumns () const |
| | number of active columns (normally same as number of columns) More...
|
| |
| void | setNumberActiveColumns (int value) |
| | Set number of active columns (normally same as number of columns) More...
|
| |
| | ClpPackedMatrix () |
| | Default constructor. More...
|
| |
| virtual | ~ClpPackedMatrix () |
| | Destructor. More...
|
| |
| | ClpPackedMatrix (const ClpPackedMatrix &) |
| | The copy constructor. More...
|
| |
| | ClpPackedMatrix (const CoinPackedMatrix &) |
| | The copy constructor from an CoinPackedMatrix. More...
|
| |
| | ClpPackedMatrix (const ClpPackedMatrix &wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns) |
| | Subset constructor (without gaps). More...
|
| |
| | ClpPackedMatrix (const CoinPackedMatrix &wholeModel, int numberRows, const int *whichRows, int numberColumns, const int *whichColumns) |
| | The copy constructor. More...
|
| |
| | ClpPackedMatrix (CoinPackedMatrix *matrix) |
| | This takes over ownership (for space reasons) More...
|
| |
| ClpPackedMatrix & | operator= (const ClpPackedMatrix &) |
| | The copy constructor. More...
|
| |
| virtual void | copy (const ClpPackedMatrix *from) |
| | Copy contents - resizing if necessary - otherwise re-use memory. More...
|
| |
| void | specialRowCopy (ClpSimplex *model, const ClpMatrixBase *rowCopy) |
| | make special row copy More...
|
| |
| void | specialColumnCopy (ClpSimplex *model) |
| | make special column copy More...
|
| |
| virtual bool | canGetRowCopy () const |
| | Returns true if can create row copy. More...
|
| |
| virtual void | createVariable (ClpSimplex *model, int &bestSequence) |
| | Creates a variable. More...
|
| |
| virtual int | checkFeasible (ClpSimplex *model, double &sum) const |
| | Just for debug if odd type matrix. More...
|
| |
| double | reducedCost (ClpSimplex *model, int sequence) const |
| | Returns reduced cost of a variable. More...
|
| |
| virtual void | times (double scalar, const double *COIN_RESTRICT x, double *COIN_RESTRICT y) const =0 |
| | Return y + A * x * scalar in y. More...
|
| |
| virtual void | times (double scalar, const double *COIN_RESTRICT x, double *COIN_RESTRICT y, const double *COIN_RESTRICT rowScale, const double *COIN_RESTRICT columnScale) const |
| | And for scaling - default aborts for when scaling not supported (unless pointers NULL when as normal) More...
|
| |
| virtual void | transposeTimes (double scalar, const double *COIN_RESTRICT x, double *COIN_RESTRICT y) const =0 |
| | Return y + x * scalar * A in y. More...
|
| |
| virtual void | transposeTimes (double scalar, const double *COIN_RESTRICT x, double *COIN_RESTRICT y, const double *COIN_RESTRICT rowScale, const double *COIN_RESTRICT columnScale, double *COIN_RESTRICT spare=NULL) const |
| | And for scaling - default aborts for when scaling not supported (unless pointers NULL when as normal) More...
|
| |
| virtual void | listTransposeTimes (const ClpSimplex *model, double *x, int *y, int number, double *z) const |
| | Return x *A in z but just for number indices in y. More...
|
| |
| virtual void | backToBasics () |
| | Gets rid of any mutable by products. More...
|
| |
| int | type () const |
| | Returns type. More...
|
| |
| void | setType (int newtype) |
| | Sets type. More...
|
| |
| void | useEffectiveRhs (ClpSimplex *model) |
| | Sets up an effective RHS. More...
|
| |
| int | lastRefresh () const |
| | If rhsOffset used this is iteration last refreshed. More...
|
| |
| int | refreshFrequency () const |
| | If rhsOffset used this is refresh frequency (0==off) More...
|
| |
| void | setRefreshFrequency (int value) |
| | Subset clone (without gaps). More...
|
| |
| bool | skipDualCheck () const |
| | whether to skip dual checks most of time More...
|
| |
| void | setSkipDualCheck (bool yes) |
| | Subset clone (without gaps). More...
|
| |
| int | minimumObjectsScan () const |
| | Partial pricing tuning parameter - minimum number of "objects" to scan. More...
|
| |
| void | setMinimumObjectsScan (int value) |
| | Subset clone (without gaps). More...
|
| |
| int | minimumGoodReducedCosts () const |
| | Partial pricing tuning parameter - minimum number of negative reduced costs to get. More...
|
| |
| void | setMinimumGoodReducedCosts (int value) |
| | Subset clone (without gaps). More...
|
| |
| double | startFraction () const |
| | Current start of search space in matrix (as fraction) More...
|
| |
| void | setStartFraction (double value) |
| | Subset clone (without gaps). More...
|
| |
| double | endFraction () const |
| | Current end of search space in matrix (as fraction) More...
|
| |
| void | setEndFraction (double value) |
| | Subset clone (without gaps). More...
|
| |
| double | savedBestDj () const |
| | Current best reduced cost. More...
|
| |
| void | setSavedBestDj (double value) |
| | Subset clone (without gaps). More...
|
| |
| int | originalWanted () const |
| | Initial number of negative reduced costs wanted. More...
|
| |
| void | setOriginalWanted (int value) |
| | Subset clone (without gaps). More...
|
| |
| int | currentWanted () const |
| | Current number of negative reduced costs which we still need. More...
|
| |
| void | setCurrentWanted (int value) |
| | Subset clone (without gaps). More...
|
| |
| int | savedBestSequence () const |
| | Current best sequence. More...
|
| |
| void | setSavedBestSequence (int value) |
| | Subset clone (without gaps). More...
|
| |
| virtual | ~ClpMatrixBase () |
| | Destructor (has to be public) More...
|
| |