Clp 1.17.6

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

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Friends | List of all members
CoinAbcTypeFactorization Class Reference

`#include <CoinAbcBaseFactorization.hpp>`

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

## Public Member Functions
Constructors and destructor and copy
| CoinAbcTypeFactorization ()
| Default constructor. More...
| CoinAbcTypeFactorization (const CoinAbcTypeFactorization &other)
| Copy constructor. More...
| CoinAbcTypeFactorization (const CoinFactorization &other)
| Copy constructor. More...
virtual | ~CoinAbcTypeFactorization ()
| Destructor. More...
virtual CoinAbcAnyFactorization * | clone () const
| Clone. More...
void | almostDestructor ()
| Delete all stuff (leaves as after CoinAbcFactorization()) More...
void | show_self () const
| Debug show object (shows one representation) More...
void | sort () const
| Debug - sort so can compare. More...
CoinAbcTypeFactorization & | operator= (const CoinAbcTypeFactorization &other)
| = copy More...
Do factorization
CoinSimplexDouble | conditionNumber () const
| Condition number - product of pivots after factorization. More...
general stuff such as permutation or status
CoinSimplexInt * | permute () const
| Returns address of permute region. More...
virtual CoinSimplexInt * | indices () const
| Returns array to put basis indices in. More...
virtual CoinSimplexInt * | pivotColumn () const
| Returns address of pivotColumn region (also used for permuting) More...
virtual CoinFactorizationDouble * | pivotRegion () const
| Returns address of pivot region. More...
CoinBigIndex * | startRowL () const
| Start of each row in L. More...
CoinBigIndex * | startColumnL () const
| Start of each column in L. More...
CoinSimplexInt * | indexColumnL () const
| Index of column in row for L. More...
CoinSimplexInt * | indexRowL () const
| Row indices of L. More...
CoinFactorizationDouble * | elementByRowL () const
| Elements in L (row copy) More...
CoinSimplexInt * | pivotLinkedBackwards () const
| Forward and backward linked lists (numberRows_+2) More...
CoinSimplexInt * | pivotLinkedForwards () const
CoinSimplexInt * | pivotLOrder () const
CoinSimplexInt * | firstCount () const
| For equal counts in factorization. More...
CoinSimplexInt * | nextCount () const
| Next Row/Column with count. More...
CoinSimplexInt * | lastCount () const
| Previous Row/Column with count. More...
CoinSimplexInt | numberRowsExtra () const
| Number of Rows after iterating. More...
CoinBigIndex | numberL () const
| Number in L. More...
CoinBigIndex | baseL () const
| Base of L. More...
CoinSimplexInt | maximumRowsExtra () const
| Maximum of Rows after iterating. More...
virtual CoinBigIndex | numberElements () const
| Total number of elements in factorization. More...
CoinSimplexInt | numberForrestTomlin () const
| Length of FT vector. More...
CoinSimplexDouble | adjustedAreaFactor () const
| Returns areaFactor but adjusted for dense. More...
CoinSimplexInt | messageLevel () const
| Level of detail of messages. More...
void | messageLevel (CoinSimplexInt value)
virtual void | maximumPivots (CoinSimplexInt value)
| Set maximum pivots. More...
CoinSimplexInt | denseThreshold () const
| Gets dense threshold. More...
void | setDenseThreshold (CoinSimplexInt value)
| Sets dense threshold. More...
CoinSimplexDouble | maximumCoefficient () const
| Returns maximum absolute value in factorization. More...
bool | spaceForForrestTomlin () const
| True if FT update and space. More...
some simple stuff
CoinBigIndex | numberElementsU () const
| Returns number in U area. More...
void | setNumberElementsU (CoinBigIndex value)
| Setss number in U area. More...
CoinBigIndex | lengthAreaU () const
| Returns length of U area. More...
CoinBigIndex | numberElementsL () const
| Returns number in L area. More...
CoinBigIndex | lengthAreaL () const
| Returns length of L area. More...
CoinBigIndex | numberElementsR () const
| Returns number in R area. More...
CoinBigIndex | numberCompressions () const
| Number of compressions done. More...
virtual CoinBigIndex * | starts () const
| Returns pivot row. More...
virtual CoinSimplexInt * | numberInRow () const
| Number of entries in each row. More...
virtual CoinSimplexInt * | numberInColumn () const
| Number of entries in each column. More...
virtual CoinFactorizationDouble * | elements () const
| Returns array to put basis elements in. More...
CoinBigIndex * | startColumnR () const
| Start of columns for R. More...
CoinFactorizationDouble * | elementU () const
| Elements of U. More...
CoinSimplexInt * | indexRowU () const
| Row indices of U. More...
CoinBigIndex * | startColumnU () const
| Start of each column in U. More...
double * | denseVector (CoinIndexedVector *vector) const
| Returns double * associated with vector. More...
double * | denseVector (CoinIndexedVector &vector) const
const double * | denseVector (const CoinIndexedVector *vector) const
| Returns double * associated with vector. More...
const double * | denseVector (const CoinIndexedVector &vector) const
void | toLongArray (CoinIndexedVector *vector, int which) const
| To a work array and associate vector. More...
void | fromLongArray (CoinIndexedVector *vector) const
| From a work array and dis-associate vector. More...
void | fromLongArray (int which) const
| From a work array and dis-associate vector. More...
void | scan (CoinIndexedVector *vector) const
| Scans region to find nonzeros. More...
rank one updates which do exist
Array persistence flag If 0 then as now (delete/new) 1 then only do arrays if bigger needed 2 as 1 but give a bit extra if bigger needed
virtual double | checkReplacePart1 (CoinIndexedVector *regionSparse, int pivotRow)
| Checks if can replace one Column to basis, returns update alpha Fills in region for use later partial update already in U. More...
virtual double | checkReplacePart1 (CoinIndexedVector *regionSparse, CoinIndexedVector *partialUpdate, int pivotRow)
| Checks if can replace one Column to basis, returns update alpha Fills in region for use later partial update in vector. More...
virtual int | checkReplacePart2 (int pivotRow, CoinSimplexDouble btranAlpha, double ftranAlpha, double ftAlpha, double acceptablePivot=1.0e-8)
| Checks if can replace one Column to basis, returns 0=OK, 1=Probably OK, 2=singular, 3=no room, 5 max pivots. More...
virtual void | replaceColumnPart3 (const AbcSimplex *model, CoinIndexedVector *regionSparse, CoinIndexedVector *tableauColumn, int pivotRow, double alpha)
| Replaces one Column to basis, partial update already in U. More...
virtual void | replaceColumnPart3 (const AbcSimplex *model, CoinIndexedVector *regionSparse, CoinIndexedVector *tableauColumn, CoinIndexedVector *partialUpdate, int pivotRow, double alpha)
| Replaces one Column to basis, partial update in vector. More...
void | updatePartialUpdate (CoinIndexedVector &partialUpdate)
| Update partial Ftran by R update. More...
virtual bool | wantsTableauColumn () const
| Returns true if wants tableauColumn in replaceColumn. More...
int | replaceColumnU (CoinIndexedVector *regionSparse, CoinBigIndex *deletedPosition, CoinSimplexInt *deletedColumns, CoinSimplexInt pivotRow)
| Combines BtranU and store which elements are to be deleted returns number to be deleted. More...
various uses of factorization (return code number elements)
*** Below this user may not want to know about which user may not want to know about (left over from my LP code)
virtual CoinSimplexInt | updateColumnFT (CoinIndexedVector &regionSparse)
| Later take out return codes (apart from +- 1 on FT) More...
virtual int | updateColumnFTPart1 (CoinIndexedVector &regionSparse)
virtual void | updateColumnFTPart2 (CoinIndexedVector &regionSparse)
virtual void | updateColumnFT (CoinIndexedVector &regionSparseFT, CoinIndexedVector &partialUpdate, int which)
| Updates one column (FTRAN) Tries to do FT update puts partial update in vector. More...
virtual CoinSimplexInt | updateColumn (CoinIndexedVector &regionSparse) const
| This version has same effect as above with FTUpdate==false so number returned is always >=0. More...
virtual CoinSimplexInt | updateTwoColumnsFT (CoinIndexedVector &regionFT, CoinIndexedVector &regionOther)
| Updates one column (FTRAN) from region2 Tries to do FT update number returned is negative if no room. More...
virtual CoinSimplexInt | updateColumnTranspose (CoinIndexedVector &regionSparse) const
| Updates one column (BTRAN) from regionSparse2 regionSparse starts as zero and is zero at end Note - if regionSparse2 packed on input - will be packed on output. More...
virtual void | updateFullColumn (CoinIndexedVector &regionSparse) const
| Updates one full column (FTRAN) More...
virtual void | updateFullColumnTranspose (CoinIndexedVector &regionSparse) const
| Updates one full column (BTRAN) More...
virtual void | updateWeights (CoinIndexedVector &regionSparse) const
| Updates one column for dual steepest edge weights (FTRAN) More...
virtual void | updateColumnCpu (CoinIndexedVector &regionSparse, int whichCpu) const
| Updates one column (FTRAN) More...
virtual void | updateColumnTransposeCpu (CoinIndexedVector &regionSparse, int whichCpu) const
| Updates one column (BTRAN) More...
void | unpack (CoinIndexedVector *regionFrom, CoinIndexedVector *regionTo) const
void | pack (CoinIndexedVector *regionFrom, CoinIndexedVector *regionTo) const
void | goSparse ()
| makes a row copy of L for speed and to allow very sparse problems More...
void | goSparse2 ()
virtual void | checkMarkArrays () const
CoinSimplexInt | sparseThreshold () const
| get sparse threshold More...
void | sparseThreshold (CoinSimplexInt value)
| set sparse threshold More...
void | clearArrays ()
| Get rid of all memory. More...
used by ClpFactorization
void | checkSparse ()
| See if worth going sparse. More...
void | gutsOfDestructor (CoinSimplexInt type=1)
| The real work of constructors etc 0 just scalars, 1 bit normal. More...
void | gutsOfInitialize (CoinSimplexInt type)
| 1 bit - tolerances etc, 2 more, 4 dummy arrays More...
void | gutsOfCopy (const CoinAbcTypeFactorization &other)
void | resetStatistics ()
| Reset all sparsity etc statistics. More...
void | printRegion (const CoinIndexedVector &vector, const char *where) const
Public Member Functions inherited from CoinAbcAnyFactorization
| CoinAbcAnyFactorization ()
| Default constructor. More...
| CoinAbcAnyFactorization (const CoinAbcAnyFactorization &other)
| Copy constructor. More...
virtual | ~CoinAbcAnyFactorization ()
| Destructor. More...
CoinAbcAnyFactorization & | operator= (const CoinAbcAnyFactorization &other)
| = copy More...
int | status () const
| Returns status. More...
void | setStatus (int value)
| Sets status. More...
int | pivots () const
| Returns number of pivots since factorization. More...
void | setPivots (int value)
| Sets number of pivots since factorization. More...
int | numberSlacks () const
| Returns number of slacks. More...
void | setNumberSlacks (int value)
| Sets number of slacks. More...
void | setNumberRows (int value)
| Set number of Rows after factorization. More...
int | numberRows () const
| Number of Rows after factorization. More...
CoinSimplexInt | numberDense () const
| Number of dense rows after factorization. More...
int | numberGoodColumns () const
| Number of good columns in factorization. More...
void | relaxAccuracyCheck (double value)
| Allows change of pivot accuracy check 1.0 == none >1.0 relaxed. More...
double | getAccuracyCheck () const
int | maximumPivots () const
| Maximum number of pivots between factorizations. More...
double | pivotTolerance () const
| Pivot tolerance. More...
void | pivotTolerance (double value)
double | minimumPivotTolerance () const
| Minimum pivot tolerance. More...
void | minimumPivotTolerance (double value)
double | areaFactor () const
| Area factor. More...
void | areaFactor (CoinSimplexDouble value)
double | zeroTolerance () const
| Zero tolerance. More...
void | zeroTolerance (double value)
virtual int * | pivotRow () const
| Returns pivot row. More...
virtual CoinFactorizationDouble * | workArea () const
| Returns work area. More...
virtual int * | intWorkArea () const
| Returns int work area. More...
virtual int * | permuteBack () const
| Returns permute back. More...
int | solveMode () const
| Get solve mode e.g. More...
void | setSolveMode (int value)
| Set solve mode e.g. More...
virtual void | setUsefulInformation (const int *info, int whereFrom)
| Useful information for factorization 0 - iteration number whereFrom is 0 for factorize and 1 for replaceColumn. More...
virtual void | checkReplacePart1a (CoinIndexedVector *, int)
virtual double | checkReplacePart1b (CoinIndexedVector *, int)

## Friends
void | CoinAbcFactorizationUnitTest (const std::string &mpsDir)

## used by factorization
virtual void | getAreas (CoinSimplexInt numberRows, CoinSimplexInt numberColumns, CoinBigIndex maximumL, CoinBigIndex maximumU)
| Gets space for a factorization, called by constructors. More...
virtual void | preProcess ()
| PreProcesses column ordered copy of basis. More...
void | preProcess (CoinSimplexInt)
double | preProcess3 ()
| Return largest element. More...
void | preProcess4 ()
virtual CoinSimplexInt | factor (AbcSimplex *model)
| Does most of factorization. More...
virtual void | postProcess (const CoinSimplexInt *sequence, CoinSimplexInt *pivotVariable)
| Does post processing on valid factorization - putting variables on correct rows. More...
virtual void | makeNonSingular (CoinSimplexInt *sequence)
| Makes a non-singular basis by replacing variables. More...
CoinSimplexInt | replaceColumnPFI (CoinIndexedVector *regionSparse, CoinSimplexInt pivotRow, CoinSimplexDouble alpha)
| Replaces one Column to basis for PFI returns 0=OK, 1=Probably OK, 2=singular, 3=no room. More...
CoinSimplexInt | factorSparse ()
| Does sparse phase of factorization return code is <0 error, 0= finished. More...
CoinSimplexInt | factorDense ()
| Does dense phase of factorization return code is <0 error, 0= finished. More...
bool | pivotOneOtherRow (CoinSimplexInt pivotRow, CoinSimplexInt pivotColumn)
| Pivots when just one other row so faster? More...
bool | pivotRowSingleton (CoinSimplexInt pivotRow, CoinSimplexInt pivotColumn)
| Does one pivot on Row Singleton in factorization. More...
void | pivotColumnSingleton (CoinSimplexInt pivotRow, CoinSimplexInt pivotColumn)
| Does one pivot on Column Singleton in factorization (can't return false) More...
void | afterPivot (CoinSimplexInt pivotRow, CoinSimplexInt pivotColumn)
| After pivoting. More...
int | wantToGoDense ()
| After pivoting - returns true if need to go dense. More...
bool | getColumnSpace (CoinSimplexInt iColumn, CoinSimplexInt extraNeeded)
| Gets space for one Column with given length, may have to do compression (returns True if successful), also moves existing vector, extraNeeded is over and above present. More...
bool | reorderU ()
| Reorders U so contiguous and in order (if there is space) Returns true if it could. More...
bool | getColumnSpaceIterateR (CoinSimplexInt iColumn, CoinFactorizationDouble value, CoinSimplexInt iRow)
| getColumnSpaceIterateR. More...
CoinBigIndex | getColumnSpaceIterate (CoinSimplexInt iColumn, CoinFactorizationDouble value, CoinSimplexInt iRow)
| getColumnSpaceIterate. More...
bool | getRowSpace (CoinSimplexInt iRow, CoinSimplexInt extraNeeded)
    Gets space for one Row with given length,
may have to do compression (returns True if successful), also moves existing vector More...
bool | getRowSpaceIterate (CoinSimplexInt iRow, CoinSimplexInt extraNeeded)
    Gets space for one Row with given length while iterating,
may have to do compression (returns True if successful), also moves existing vector More...
void | checkConsistency ()
| Checks that row and column copies look OK. More...
void | addLink (CoinSimplexInt index, CoinSimplexInt count)
| Adds a link in chain of equal counts. More...
void | deleteLink (CoinSimplexInt index)
| Deletes a link in chain of equal counts. More...
void | modifyLink (CoinSimplexInt index, CoinSimplexInt count)
| Modifies links in chain of equal counts. More...
void | separateLinks ()
| Separate out links with same row/column count. More...
void | separateLinks (CoinSimplexInt, CoinSimplexInt)
void | cleanup ()
| Cleans up at end of factorization. More...
void | doAddresses ()
| Set up addresses from arrays. More...
void | updateColumnL (CoinIndexedVector *region, CoinAbcStatistics &statistics) const
| Updates part of column (FTRANL) More...
void | updateColumnLDensish (CoinIndexedVector *region) const
| Updates part of column (FTRANL) when densish. More...
void | updateColumnLDense (CoinIndexedVector *region) const
| Updates part of column (FTRANL) when dense (i.e. do as inner products) More...
void | updateColumnLSparse (CoinIndexedVector *region) const
| Updates part of column (FTRANL) when sparse. More...
void | updateColumnR (CoinIndexedVector *region, CoinAbcStatistics &statistics) const
| Updates part of column (FTRANR) without FT update. More...
bool | storeFT (const CoinIndexedVector *regionFT)
| Store update after doing L and R - retuns false if no room. More...
void | updateColumnU (CoinIndexedVector *region, CoinAbcStatistics &statistics) const
| Updates part of column (FTRANU) More...
void | updateColumnUSparse (CoinIndexedVector *regionSparse) const
| Updates part of column (FTRANU) when sparse. More...
void | updateColumnUDensish (CoinIndexedVector *regionSparse) const
| Updates part of column (FTRANU) More...
void | updateColumnUDense (CoinIndexedVector *regionSparse) const
| Updates part of column (FTRANU) when dense (i.e. do as inner products) More...
void | updateTwoColumnsUDensish (CoinSimplexInt &numberNonZero1, CoinFactorizationDouble *COIN_RESTRICT region1, CoinSimplexInt *COIN_RESTRICT index1, CoinSimplexInt &numberNonZero2, CoinFactorizationDouble *COIN_RESTRICT region2, CoinSimplexInt *COIN_RESTRICT index2) const
| Updates part of 2 columns (FTRANU) real work. More...
void | updateColumnPFI (CoinIndexedVector *regionSparse) const
| Updates part of column PFI (FTRAN) (after rest) More...
void | updateColumnTransposePFI (CoinIndexedVector *region) const
| Updates part of column transpose PFI (BTRAN) (before rest) More...
void | updateColumnTransposeU (CoinIndexedVector *region, CoinSimplexInt smallestIndex, CoinAbcStatistics &statistics) const
| Updates part of column transpose (BTRANU), assumes index is sorted i.e. More...
void | updateColumnTransposeUDensish (CoinIndexedVector *region, CoinSimplexInt smallestIndex) const
| Updates part of column transpose (BTRANU) when densish, assumes index is sorted i.e. More...
void | updateColumnTransposeUSparse (CoinIndexedVector *region) const
| Updates part of column transpose (BTRANU) when sparse, assumes index is sorted i.e. More...
void | updateColumnTransposeUByColumn (CoinIndexedVector *region, CoinSimplexInt smallestIndex) const
| Updates part of column transpose (BTRANU) by column assumes index is sorted i.e. More...
void | updateColumnTransposeR (CoinIndexedVector *region, CoinAbcStatistics &statistics) const
| Updates part of column transpose (BTRANR) More...
void | updateColumnTransposeRDensish (CoinIndexedVector *region) const
| Updates part of column transpose (BTRANR) when dense. More...
void | updateColumnTransposeRSparse (CoinIndexedVector *region) const
| Updates part of column transpose (BTRANR) when sparse. More...
void | updateColumnTransposeL (CoinIndexedVector *region, CoinAbcStatistics &statistics) const
| Updates part of column transpose (BTRANL) More...
void | updateColumnTransposeLDensish (CoinIndexedVector *region) const
| Updates part of column transpose (BTRANL) when densish by column. More...
void | updateColumnTransposeLByRow (CoinIndexedVector *region) const
| Updates part of column transpose (BTRANL) when densish by row. More...
void | updateColumnTransposeLSparse (CoinIndexedVector *region) const
| Updates part of column transpose (BTRANL) when sparse (by Row) More...
CoinSimplexInt | checkPivot (CoinSimplexDouble saveFromU, CoinSimplexDouble oldPivot) const
| Returns accuracy status of replaceColumn returns 0=OK, 1=Probably OK, 2=singular. More...
int | pivot (CoinSimplexInt pivotRow, CoinSimplexInt pivotColumn, CoinBigIndex pivotRowPosition, CoinBigIndex pivotColumnPosition, CoinFactorizationDouble *COIN_RESTRICT work, CoinSimplexUnsignedInt *COIN_RESTRICT workArea2, CoinSimplexInt increment2, int *COIN_RESTRICT markRow)
| 0 fine, -99 singular, 2 dense More...
int | pivot (CoinSimplexInt &pivotRow, CoinSimplexInt &pivotColumn, CoinBigIndex pivotRowPosition, CoinBigIndex pivotColumnPosition, int *COIN_RESTRICT markRow)

## data
CoinSimplexInt * | pivotColumnAddress_
CoinSimplexInt * | permuteAddress_
CoinFactorizationDouble * | pivotRegionAddress_
CoinFactorizationDouble * | elementUAddress_
CoinSimplexInt * | indexRowUAddress_
CoinSimplexInt * | numberInColumnAddress_
CoinSimplexInt * | numberInColumnPlusAddress_
CoinBigIndex * | startColumnUAddress_
CoinBigIndex * | convertRowToColumnUAddress_
CoinBigIndex * | convertColumnToRowUAddress_
CoinFactorizationDouble * | elementRowUAddress_
CoinBigIndex * | startRowUAddress_
CoinSimplexInt * | numberInRowAddress_
CoinSimplexInt * | indexColumnUAddress_
CoinSimplexInt * | firstCountAddress_
CoinSimplexInt * | nextCountAddress_
| Next Row/Column with count. More...
CoinSimplexInt * | lastCountAddress_
| Previous Row/Column with count. More...
CoinSimplexInt * | nextColumnAddress_
CoinSimplexInt * | lastColumnAddress_
CoinSimplexInt * | nextRowAddress_
CoinSimplexInt * | lastRowAddress_
CoinSimplexInt * | saveColumnAddress_
CoinCheckZero * | markRowAddress_
CoinSimplexInt * | listAddress_
CoinFactorizationDouble * | elementLAddress_
CoinSimplexInt * | indexRowLAddress_
CoinBigIndex * | startColumnLAddress_
CoinBigIndex * | startRowLAddress_
CoinSimplexInt * | pivotLinkedBackwardsAddress_
CoinSimplexInt * | pivotLinkedForwardsAddress_
CoinSimplexInt * | pivotLOrderAddress_
CoinBigIndex * | startColumnRAddress_
CoinFactorizationDouble * | elementRAddress_
| Elements of R. More...
CoinSimplexInt * | indexRowRAddress_
| Row indices for R. More...
CoinSimplexInt * | indexColumnLAddress_
CoinFactorizationDouble * | elementByRowLAddress_
CoinFactorizationDouble * | denseAreaAddress_
CoinFactorizationDouble * | workAreaAddress_
CoinSimplexUnsignedInt * | workArea2Address_
CoinSimplexInt * | sparseAddress_
CoinSimplexInt | numberRowsExtra_
| Number of Rows after iterating. More...
CoinSimplexInt | maximumRowsExtra_
| Maximum number of Rows after iterating. More...
CoinSimplexInt | numberRowsSmall_
| Size of small inverse. More...
CoinSimplexInt | numberGoodL_
| Number factorized in L. More...
CoinSimplexInt | numberRowsLeft_
| Number Rows left (numberRows-numberGood) More...
CoinBigIndex | totalElements_
| Number of elements in U (to go) or while iterating total overall. More...
CoinBigIndex | firstZeroed_
| First place in funny copy zeroed out. More...
CoinSimplexInt | sparseThreshold_
| Below this use sparse technology - if 0 then no L row copy. More...
CoinSimplexInt | numberR_
| Number in R. More...
CoinBigIndex | lengthR_
| Length of R stuff. More...
CoinBigIndex | lengthAreaR_
| length of area reserved for R More...
CoinBigIndex | numberL_
| Number in L. More...
CoinBigIndex | baseL_
| Base of L. More...
CoinBigIndex | lengthL_
| Length of L. More...
CoinBigIndex | lengthAreaL_
| Length of area reserved for L. More...
CoinSimplexInt | numberU_
| Number in U. More...
CoinBigIndex | maximumU_
| Maximum space used in U. More...
CoinBigIndex | lengthU_
| Length of U. More...
CoinBigIndex | lengthAreaU_
| Length of area reserved for U. More...
CoinBigIndex | lastEntryByColumnU_
| Last entry by column for U. More...
CoinBigIndex | lastEntryByRowU_
| Last entry by row for U. More...
CoinSimplexInt | numberTrials_
| Number of trials before rejection. More...
CoinSimplexInt | leadingDimension_
| Leading dimension for dense. More...
CoinIntArrayWithLength | pivotColumn_
| Pivot order for each Column. More...
CoinIntArrayWithLength | permute_
| Permutation vector for pivot row order. More...
CoinBigIndexArrayWithLength | startRowU_
| Start of each Row as pointer. More...
CoinIntArrayWithLength | numberInRow_
| Number in each Row. More...
CoinIntArrayWithLength | numberInColumn_
| Number in each Column. More...
CoinIntArrayWithLength | numberInColumnPlus_
| Number in each Column including pivoted. More...
CoinIntArrayWithLength | firstCount_
| First Row/Column with count of k, can tell which by offset - Rows then Columns. More...
CoinIntArrayWithLength | nextColumn_
| Next Column in memory order. More...
CoinIntArrayWithLength | lastColumn_
| Previous Column in memory order. More...
CoinIntArrayWithLength | nextRow_
| Next Row in memory order. More...
CoinIntArrayWithLength | lastRow_
| Previous Row in memory order. More...
CoinIntArrayWithLength | saveColumn_
| Columns left to do in a single pivot. More...
CoinIntArrayWithLength | markRow_
| Marks rows to be updated. More...
CoinIntArrayWithLength | indexColumnU_
| Base address for U (may change) More...
CoinFactorizationDoubleArrayWithLength | pivotRegion_
| Inverses of pivot values. More...
CoinFactorizationDoubleArrayWithLength | elementU_
| Elements of U. More...
CoinIntArrayWithLength | indexRowU_
| Row indices of U. More...
CoinBigIndexArrayWithLength | startColumnU_
| Start of each column in U. More...
CoinBigIndexArrayWithLength | convertRowToColumnU_
| Converts rows to columns in U. More...
CoinBigIndexArrayWithLength | convertColumnToRowU_
| Converts columns to rows in U. More...
CoinFactorizationDoubleArrayWithLength | elementRowU_
| Elements of U by row. More...
CoinFactorizationDoubleArrayWithLength | elementL_
| Elements of L. More...
CoinIntArrayWithLength | indexRowL_
| Row indices of L. More...
CoinBigIndexArrayWithLength | startColumnL_
| Start of each column in L. More...
CoinFactorizationDoubleArrayWithLength | denseArea_
| Dense area. More...
CoinFactorizationDoubleArrayWithLength | workArea_
| First work area. More...
CoinUnsignedIntArrayWithLength | workArea2_
| Second work area. More...
CoinBigIndexArrayWithLength | startRowL_
| Start of each row in L. More...
CoinIntArrayWithLength | indexColumnL_
| Index of column in row for L. More...
CoinFactorizationDoubleArrayWithLength | elementByRowL_
| Elements in L (row copy) More...
CoinIntArrayWithLength | sparse_
| Sparse regions. More...
CoinSimplexInt | messageLevel_
| Detail in messages. More...
CoinBigIndex | numberCompressions_
| Number of compressions done. More...
CoinSimplexInt | lastSlack_
double | ftranCountInput_
| To decide how to solve. More...
double | ftranCountAfterL_
double | ftranCountAfterR_
double | ftranCountAfterU_
double | ftranAverageAfterL_
double | ftranAverageAfterR_
double | ftranAverageAfterU_
CoinSimplexInt | numberFtranCounts_
CoinSimplexInt | maximumRows_
| Maximum rows (ever) (here to use double alignment) More...
double | ftranFTCountInput_
double | ftranFTCountAfterL_
double | ftranFTCountAfterR_
double | ftranFTCountAfterU_
double | ftranFTAverageAfterL_
double | ftranFTAverageAfterR_
double | ftranFTAverageAfterU_
CoinSimplexInt | numberFtranFTCounts_
CoinSimplexInt | denseThreshold_
| Dense threshold (here to use double alignment) More...
double | btranCountInput_
double | btranCountAfterU_
double | btranCountAfterR_
double | btranCountAfterL_
double | btranAverageAfterU_
double | btranAverageAfterR_
double | btranAverageAfterL_
CoinSimplexInt | numberBtranCounts_
CoinSimplexInt | maximumMaximumPivots_
| Maximum maximum pivots. More...
double | ftranFullCountInput_
| To decide how to solve. More...
double | ftranFullCountAfterL_
double | ftranFullCountAfterR_
double | ftranFullCountAfterU_
double | ftranFullAverageAfterL_
double | ftranFullAverageAfterR_
double | ftranFullAverageAfterU_
CoinSimplexInt | numberFtranFullCounts_
CoinSimplexInt | initialNumberRows_
| Rows first time nonzero. More...
double | btranFullCountInput_
| To decide how to solve. More...
double | btranFullCountAfterL_
double | btranFullCountAfterR_
double | btranFullCountAfterU_
double | btranFullAverageAfterL_
double | btranFullAverageAfterR_
double | btranFullAverageAfterU_
CoinSimplexInt | numberBtranFullCounts_
CoinSimplexInt | state_
| State of saved version and what can be done 0 - nothing saved 1 - saved and can go back to previous save by unwinding 2 - saved - getting on for a full copy higher bits - see ABC_FAC.... More...
CoinBigIndex | sizeSparseArray_
| Size in bytes of a sparseArray. More...
bool | gotLCopy () const
void | setNoGotLCopy ()
void | setYesGotLCopy ()
bool | gotRCopy () const
void | setNoGotRCopy ()
void | setYesGotRCopy ()
bool | gotUCopy () const
void | setNoGotUCopy ()
void | setYesGotUCopy ()
bool | gotSparse () const
void | setNoGotSparse ()
void | setYesGotSparse ()

## Additional Inherited Members
Protected Attributes inherited from CoinAbcAnyFactorization
double | pivotTolerance_
| Pivot tolerance. More...
double | minimumPivotTolerance_
| Minimum pivot tolerance. More...
double | areaFactor_
| Area factor. More...
double | zeroTolerance_
| Zero tolerance. More...
double | relaxCheck_
| Relax check on accuracy in replaceColumn. More...
CoinBigIndex | factorElements_
| Number of elements after factorization. More...
int | numberRows_
| Number of Rows in factorization. More...
int | numberDense_
| Number of dense rows in factorization. More...
int | numberGoodU_
| Number factorized in U (not row singletons) More...
int | maximumPivots_
| Maximum number of pivots before factorization. More...
int | numberPivots_
| Number pivots since last factorization. More...
int | numberSlacks_
| Number slacks. More...
int | status_
| Status of factorization. More...
int | maximumRows_
| Maximum rows ever (i.e. use to copy arrays etc) More...
int * | pivotRow_
| Pivot row. More...
CoinFactorizationDouble * | elements_
| Elements of factorization and updates length is maxR*maxR+maxSpace will always be long enough so can have nR*nR ints in maxSpace. More...
CoinFactorizationDouble * | workArea_
| Work area of numberRows_. More...
int | solveMode_
| Solve mode e.g. More...

## Detailed Description

Definition at line 28 of file CoinAbcBaseFactorization.hpp.

## Constructor & Destructor Documentation

CoinAbcTypeFactorization::CoinAbcTypeFactorization | ( |  | ) |

Default constructor.

CoinAbcTypeFactorization::CoinAbcTypeFactorization | ( | const CoinAbcTypeFactorization & | other | ) |

Copy constructor.

CoinAbcTypeFactorization::CoinAbcTypeFactorization | ( | const CoinFactorization & | other | ) |

Copy constructor.

virtual CoinAbcTypeFactorization::~CoinAbcTypeFactorization | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

virtual CoinAbcAnyFactorization* CoinAbcTypeFactorization::clone | ( |  | ) | const
| virtual

Clone.

Implements CoinAbcAnyFactorization.

void CoinAbcTypeFactorization::almostDestructor | ( |  | ) |

Delete all stuff (leaves as after CoinAbcFactorization())

void CoinAbcTypeFactorization::show_self | ( |  | ) | const

Debug show object (shows one representation)

void CoinAbcTypeFactorization::sort | ( |  | ) | const

Debug - sort so can compare.

CoinAbcTypeFactorization& CoinAbcTypeFactorization::operator= | ( | const CoinAbcTypeFactorization & | other | ) |

= copy

CoinSimplexDouble CoinAbcTypeFactorization::conditionNumber | ( |  | ) | const

Condition number - product of pivots after factorization.

CoinSimplexInt* CoinAbcTypeFactorization::permute | ( |  | ) | const
| inline virtual

Returns address of permute region.

Implements CoinAbcAnyFactorization.

Definition at line 65 of file CoinAbcBaseFactorization.hpp.

virtual CoinSimplexInt* CoinAbcTypeFactorization::indices | ( |  | ) | const
| inline virtual

Returns array to put basis indices in.

Implements CoinAbcAnyFactorization.

Definition at line 70 of file CoinAbcBaseFactorization.hpp.

virtual CoinSimplexInt* CoinAbcTypeFactorization::pivotColumn | ( |  | ) | const
| inline virtual

Returns address of pivotColumn region (also used for permuting)

Reimplemented from CoinAbcAnyFactorization.

Definition at line 75 of file CoinAbcBaseFactorization.hpp.

virtual CoinFactorizationDouble* CoinAbcTypeFactorization::pivotRegion | ( |  | ) | const
| inline virtual

Returns address of pivot region.

Reimplemented from CoinAbcAnyFactorization.

Definition at line 80 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startRowL | ( |  | ) | const
| inline

Start of each row in L.

Definition at line 86 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startColumnL | ( |  | ) | const
| inline

Start of each column in L.

Definition at line 93 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::indexColumnL | ( |  | ) | const
| inline

Index of column in row for L.

Definition at line 100 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::indexRowL | ( |  | ) | const
| inline

Row indices of L.

Definition at line 107 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::elementByRowL | ( |  | ) | const
| inline

Elements in L (row copy)

Definition at line 114 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::pivotLinkedBackwards | ( |  | ) | const
| inline

Forward and backward linked lists (numberRows_+2)

Definition at line 122 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::pivotLinkedForwards | ( |  | ) | const
| inline

Definition at line 126 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::pivotLOrder | ( |  | ) | const
| inline

Definition at line 130 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::firstCount | ( |  | ) | const
| inline

For equal counts in factorization.

First Row/Column with count of k, can tell which by offset - Rows then Columns actually comes before nextCount

Definition at line 163 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::nextCount | ( |  | ) | const
| inline

Next Row/Column with count.

Definition at line 169 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::lastCount | ( |  | ) | const
| inline

Previous Row/Column with count.

Definition at line 175 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberRowsExtra | ( |  | ) | const
| inline

Number of Rows after iterating.

Definition at line 181 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::numberL | ( |  | ) | const
| inline

Number in L.

Definition at line 186 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::baseL | ( |  | ) | const
| inline

Base of L.

Definition at line 192 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::maximumRowsExtra | ( |  | ) | const
| inline

Maximum of Rows after iterating.

Definition at line 197 of file CoinAbcBaseFactorization.hpp.

virtual CoinBigIndex CoinAbcTypeFactorization::numberElements | ( |  | ) | const
| inline virtual

Total number of elements in factorization.

Implements CoinAbcAnyFactorization.

Definition at line 202 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberForrestTomlin | ( |  | ) | const
| inline

Length of FT vector.

Definition at line 207 of file CoinAbcBaseFactorization.hpp.

CoinSimplexDouble CoinAbcTypeFactorization::adjustedAreaFactor | ( |  | ) | const

Returns areaFactor but adjusted for dense.

CoinSimplexInt CoinAbcTypeFactorization::messageLevel | ( |  | ) | const
| inline

Level of detail of messages.

Definition at line 214 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::messageLevel | ( | CoinSimplexInt | value | ) |

virtual void CoinAbcTypeFactorization::maximumPivots | ( | CoinSimplexInt | value | ) |
| virtual

Set maximum pivots.

Reimplemented from CoinAbcAnyFactorization.

CoinSimplexInt CoinAbcTypeFactorization::denseThreshold | ( |  | ) | const
| inline

Gets dense threshold.

Definition at line 224 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setDenseThreshold | ( | CoinSimplexInt | value | ) |
| inline

Sets dense threshold.

Definition at line 229 of file CoinAbcBaseFactorization.hpp.

CoinSimplexDouble CoinAbcTypeFactorization::maximumCoefficient | ( |  | ) | const

Returns maximum absolute value in factorization.

bool CoinAbcTypeFactorization::spaceForForrestTomlin | ( |  | ) | const
| inline

True if FT update and space.

Definition at line 244 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::numberElementsU | ( |  | ) | const
| inline

Returns number in U area.

Definition at line 256 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setNumberElementsU | ( | CoinBigIndex | value | ) |
| inline

Setss number in U area.

Definition at line 261 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lengthAreaU | ( |  | ) | const
| inline

Returns length of U area.

Definition at line 266 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::numberElementsL | ( |  | ) | const
| inline

Returns number in L area.

Definition at line 271 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lengthAreaL | ( |  | ) | const
| inline

Returns length of L area.

Definition at line 276 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::numberElementsR | ( |  | ) | const
| inline

Returns number in R area.

Definition at line 281 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::numberCompressions | ( |  | ) | const
| inline

Number of compressions done.

Definition at line 286 of file CoinAbcBaseFactorization.hpp.

virtual CoinBigIndex* CoinAbcTypeFactorization::starts | ( |  | ) | const
| inline virtual

Returns pivot row.

Returns work area Returns CoinSimplexInt work area Returns array to put basis starts in

Reimplemented from CoinAbcAnyFactorization.

Definition at line 297 of file CoinAbcBaseFactorization.hpp.

virtual CoinSimplexInt* CoinAbcTypeFactorization::numberInRow | ( |  | ) | const
| inline virtual

Number of entries in each row.

Reimplemented from CoinAbcAnyFactorization.

Definition at line 302 of file CoinAbcBaseFactorization.hpp.

virtual CoinSimplexInt* CoinAbcTypeFactorization::numberInColumn | ( |  | ) | const
| inline virtual

Number of entries in each column.

Reimplemented from CoinAbcAnyFactorization.

Definition at line 307 of file CoinAbcBaseFactorization.hpp.

virtual CoinFactorizationDouble* CoinAbcTypeFactorization::elements | ( |  | ) | const
| inline virtual

Returns array to put basis elements in.

Reimplemented from CoinAbcAnyFactorization.

Definition at line 312 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startColumnR | ( |  | ) | const
| inline

Start of columns for R.

Definition at line 317 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::elementU | ( |  | ) | const
| inline

Elements of U.

Definition at line 322 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::indexRowU | ( |  | ) | const
| inline

Row indices of U.

Definition at line 327 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startColumnU | ( |  | ) | const
| inline

Start of each column in U.

Definition at line 332 of file CoinAbcBaseFactorization.hpp.

double* CoinAbcTypeFactorization::denseVector | ( | CoinIndexedVector * | vector | ) | const
| inline

Returns double * associated with vector.

Definition at line 357 of file CoinAbcBaseFactorization.hpp.

double* CoinAbcTypeFactorization::denseVector | ( | CoinIndexedVector & | vector | ) | const
| inline

Definition at line 361 of file CoinAbcBaseFactorization.hpp.

const double* CoinAbcTypeFactorization::denseVector | ( | const CoinIndexedVector * | vector | ) | const
| inline

Returns double * associated with vector.

Definition at line 366 of file CoinAbcBaseFactorization.hpp.

const double* CoinAbcTypeFactorization::denseVector | ( | const CoinIndexedVector & | vector | ) | const
| inline

Definition at line 370 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::toLongArray | ( | CoinIndexedVector * | vector,
|  | int | which
| ) |  | const
| inline

To a work array and associate vector.

Definition at line 375 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::fromLongArray | ( | CoinIndexedVector * | vector | ) | const
| inline

From a work array and dis-associate vector.

Definition at line 377 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::fromLongArray | ( | int | which | ) | const
| inline

From a work array and dis-associate vector.

Definition at line 379 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::scan | ( | CoinIndexedVector * | vector | ) | const
| inline

Scans region to find nonzeros.

Definition at line 381 of file CoinAbcBaseFactorization.hpp.

virtual double CoinAbcTypeFactorization::checkReplacePart1 | ( | CoinIndexedVector * | regionSparse,
|  | int | pivotRow
| ) |  |
| virtual

Checks if can replace one Column to basis, returns update alpha Fills in region for use later partial update already in U.

Reimplemented from CoinAbcAnyFactorization.

virtual double CoinAbcTypeFactorization::checkReplacePart1 | ( | CoinIndexedVector * | regionSparse,
|  | CoinIndexedVector * | partialUpdate,
|  | int | pivotRow
| ) |  |
| virtual

Checks if can replace one Column to basis, returns update alpha Fills in region for use later partial update in vector.

Reimplemented from CoinAbcAnyFactorization.

virtual int CoinAbcTypeFactorization::checkReplacePart2 | ( | int | pivotRow,
|  | CoinSimplexDouble | btranAlpha,
|  | double | ftranAlpha,
|  | double | ftAlpha,
|  | double | acceptablePivot = `1.0e-8`
| ) |  |
| virtual

Checks if can replace one Column to basis, returns 0=OK, 1=Probably OK, 2=singular, 3=no room, 5 max pivots.

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::replaceColumnPart3 | ( | const AbcSimplex * | model,
|  | CoinIndexedVector * | regionSparse,
|  | CoinIndexedVector * | tableauColumn,
|  | int | pivotRow,
|  | double | alpha
| ) |  |
| virtual

Replaces one Column to basis, partial update already in U.

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::replaceColumnPart3 | ( | const AbcSimplex * | model,
|  | CoinIndexedVector * | regionSparse,
|  | CoinIndexedVector * | tableauColumn,
|  | CoinIndexedVector * | partialUpdate,
|  | int | pivotRow,
|  | double | alpha
| ) |  |
| virtual

Replaces one Column to basis, partial update in vector.

Implements CoinAbcAnyFactorization.

void CoinAbcTypeFactorization::updatePartialUpdate | ( | CoinIndexedVector & | partialUpdate | ) |

Update partial Ftran by R update.

virtual bool CoinAbcTypeFactorization::wantsTableauColumn | ( |  | ) | const
| inline virtual

Returns true if wants tableauColumn in replaceColumn.

Reimplemented from CoinAbcAnyFactorization.

Definition at line 503 of file CoinAbcBaseFactorization.hpp.

int CoinAbcTypeFactorization::replaceColumnU | ( | CoinIndexedVector * | regionSparse,
|  | CoinBigIndex * | deletedPosition,
|  | CoinSimplexInt * | deletedColumns,
|  | CoinSimplexInt | pivotRow
| ) |  |

Combines BtranU and store which elements are to be deleted returns number to be deleted.

virtual CoinSimplexInt CoinAbcTypeFactorization::updateColumnFT | ( | CoinIndexedVector & | regionSparse | ) |
| virtual

Later take out return codes (apart from +- 1 on FT)

Updates one column (FTRAN) from regionSparse2 Tries to do FT update number returned is negative if no room regionSparse starts as zero and is zero at end. Note - if regionSparse2 packed on input - will be packed on output

Implements CoinAbcAnyFactorization.

virtual int CoinAbcTypeFactorization::updateColumnFTPart1 | ( | CoinIndexedVector & | regionSparse | ) |
| virtual

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::updateColumnFTPart2 | ( | CoinIndexedVector & | regionSparse | ) |
| virtual

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::updateColumnFT | ( | CoinIndexedVector & | regionSparseFT,
|  | CoinIndexedVector & | partialUpdate,
|  | int | which
| ) |  |
| virtual

Updates one column (FTRAN) Tries to do FT update puts partial update in vector.

Implements CoinAbcAnyFactorization.

virtual CoinSimplexInt CoinAbcTypeFactorization::updateColumn | ( | CoinIndexedVector & | regionSparse | ) | const
| virtual

This version has same effect as above with FTUpdate==false so number returned is always >=0.

Implements CoinAbcAnyFactorization.

virtual CoinSimplexInt CoinAbcTypeFactorization::updateTwoColumnsFT | ( | CoinIndexedVector & | regionFT,
|  | CoinIndexedVector & | regionOther
| ) |  |
| virtual

Updates one column (FTRAN) from region2 Tries to do FT update number returned is negative if no room.

Also updates region3 region1 starts as zero and is zero at end

Implements CoinAbcAnyFactorization.

virtual CoinSimplexInt CoinAbcTypeFactorization::updateColumnTranspose | ( | CoinIndexedVector & | regionSparse | ) | const
| virtual

Updates one column (BTRAN) from regionSparse2 regionSparse starts as zero and is zero at end Note - if regionSparse2 packed on input - will be packed on output.

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::updateFullColumn | ( | CoinIndexedVector & | regionSparse | ) | const
| virtual

Updates one full column (FTRAN)

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::updateFullColumnTranspose | ( | CoinIndexedVector & | regionSparse | ) | const
| virtual

Updates one full column (BTRAN)

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::updateWeights | ( | CoinIndexedVector & | regionSparse | ) | const
| virtual

Updates one column for dual steepest edge weights (FTRAN)

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::updateColumnCpu | ( | CoinIndexedVector & | regionSparse,
|  | int | whichCpu
| ) |  | const
| virtual

Updates one column (FTRAN)

Reimplemented from CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::updateColumnTransposeCpu | ( | CoinIndexedVector & | regionSparse,
|  | int | whichCpu
| ) |  | const
| virtual

Updates one column (BTRAN)

Reimplemented from CoinAbcAnyFactorization.

void CoinAbcTypeFactorization::unpack | ( | CoinIndexedVector * | regionFrom,
|  | CoinIndexedVector * | regionTo
| ) |  | const

void CoinAbcTypeFactorization::pack | ( | CoinIndexedVector * | regionFrom,
|  | CoinIndexedVector * | regionTo
| ) |  | const

void CoinAbcTypeFactorization::goSparse | ( |  | ) |
| inline virtual

makes a row copy of L for speed and to allow very sparse problems

Reimplemented from CoinAbcAnyFactorization.

Definition at line 565 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::goSparse2 | ( |  | ) |

virtual void CoinAbcTypeFactorization::checkMarkArrays | ( |  | ) | const
| virtual

Reimplemented from CoinAbcAnyFactorization.

CoinSimplexInt CoinAbcTypeFactorization::sparseThreshold | ( |  | ) | const
| inline

get sparse threshold

Definition at line 572 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::sparseThreshold | ( | CoinSimplexInt | value | ) |

set sparse threshold

void CoinAbcTypeFactorization::clearArrays | ( |  | ) |
| inline virtual

Get rid of all memory.

Reimplemented from CoinAbcAnyFactorization.

Definition at line 586 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::checkSparse | ( |  | ) |

See if worth going sparse.

void CoinAbcTypeFactorization::gutsOfDestructor | ( | CoinSimplexInt | type = `1` | ) |

The real work of constructors etc 0 just scalars, 1 bit normal.

void CoinAbcTypeFactorization::gutsOfInitialize | ( | CoinSimplexInt | type | ) |

1 bit - tolerances etc, 2 more, 4 dummy arrays

void CoinAbcTypeFactorization::gutsOfCopy | ( | const CoinAbcTypeFactorization & | other | ) |

void CoinAbcTypeFactorization::resetStatistics | ( |  | ) |

Reset all sparsity etc statistics.

void CoinAbcTypeFactorization::printRegion | ( | const CoinIndexedVector & | vector,
|  | const char * | where
| ) |  | const

virtual void CoinAbcTypeFactorization::getAreas | ( | CoinSimplexInt | numberRows,
|  | CoinSimplexInt | numberColumns,
|  | CoinBigIndex | maximumL,
|  | CoinBigIndex | maximumU
| ) |  |
| virtual

Gets space for a factorization, called by constructors.

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::preProcess | ( |  | ) |
| virtual

PreProcesses column ordered copy of basis.

Implements CoinAbcAnyFactorization.

void CoinAbcTypeFactorization::preProcess | ( | CoinSimplexInt |  | ) |

double CoinAbcTypeFactorization::preProcess3 | ( |  | ) |

Return largest element.

void CoinAbcTypeFactorization::preProcess4 | ( |  | ) |

virtual CoinSimplexInt CoinAbcTypeFactorization::factor | ( | AbcSimplex * | model | ) |
| virtual

Does most of factorization.

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::postProcess | ( | const CoinSimplexInt * | sequence,
|  | CoinSimplexInt * | pivotVariable
| ) |  |
| virtual

Does post processing on valid factorization - putting variables on correct rows.

Implements CoinAbcAnyFactorization.

virtual void CoinAbcTypeFactorization::makeNonSingular | ( | CoinSimplexInt * | sequence | ) |
| virtual

Makes a non-singular basis by replacing variables.

Implements CoinAbcAnyFactorization.

CoinSimplexInt CoinAbcTypeFactorization::factorSparse | ( |  | ) |
| protected

Does sparse phase of factorization return code is <0 error, 0= finished.

CoinSimplexInt CoinAbcTypeFactorization::factorDense | ( |  | ) |
| protected

Does dense phase of factorization return code is <0 error, 0= finished.

bool CoinAbcTypeFactorization::pivotOneOtherRow | ( | CoinSimplexInt | pivotRow,
|  | CoinSimplexInt | pivotColumn
| ) |  |
| protected

Pivots when just one other row so faster?

bool CoinAbcTypeFactorization::pivotRowSingleton | ( | CoinSimplexInt | pivotRow,
|  | CoinSimplexInt | pivotColumn
| ) |  |
| protected

Does one pivot on Row Singleton in factorization.

void CoinAbcTypeFactorization::pivotColumnSingleton | ( | CoinSimplexInt | pivotRow,
|  | CoinSimplexInt | pivotColumn
| ) |  |
| protected

Does one pivot on Column Singleton in factorization (can't return false)

void CoinAbcTypeFactorization::afterPivot | ( | CoinSimplexInt | pivotRow,
|  | CoinSimplexInt | pivotColumn
| ) |  |
| protected

After pivoting.

int CoinAbcTypeFactorization::wantToGoDense | ( |  | ) |
| protected

After pivoting - returns true if need to go dense.

bool CoinAbcTypeFactorization::getColumnSpace | ( | CoinSimplexInt | iColumn,
|  | CoinSimplexInt | extraNeeded
| ) |  |
| protected

Gets space for one Column with given length, may have to do compression (returns True if successful), also moves existing vector, extraNeeded is over and above present.

bool CoinAbcTypeFactorization::reorderU | ( |  | ) |
| protected

Reorders U so contiguous and in order (if there is space) Returns true if it could.

bool CoinAbcTypeFactorization::getColumnSpaceIterateR | ( | CoinSimplexInt | iColumn,
|  | CoinFactorizationDouble | value,
|  | CoinSimplexInt | iRow
| ) |  |
| protected

getColumnSpaceIterateR.

Gets space for one extra R element in Column may have to do compression (returns true) also moves existing vector

CoinBigIndex CoinAbcTypeFactorization::getColumnSpaceIterate | ( | CoinSimplexInt | iColumn,
|  | CoinFactorizationDouble | value,
|  | CoinSimplexInt | iRow
| ) |  |
| protected

getColumnSpaceIterate.

Gets space for one extra U element in Column may have to do compression (returns true) also moves existing vector. Returns -1 if no memory or where element was put Used by replaceRow (turns off R version)

bool CoinAbcTypeFactorization::getRowSpace | ( | CoinSimplexInt | iRow,
|  | CoinSimplexInt | extraNeeded
| ) |  |
| protected

    Gets space for one Row with given length,

may have to do compression (returns True if successful), also moves existing vector

bool CoinAbcTypeFactorization::getRowSpaceIterate | ( | CoinSimplexInt | iRow,
|  | CoinSimplexInt | extraNeeded
| ) |  |
| protected

    Gets space for one Row with given length while iterating,

may have to do compression (returns True if successful), also moves existing vector

void CoinAbcTypeFactorization::checkConsistency | ( |  | ) |
| protected

Checks that row and column copies look OK.

void CoinAbcTypeFactorization::addLink | ( | CoinSimplexInt | index,
|  | CoinSimplexInt | count
| ) |  |
| inline protected

Adds a link in chain of equal counts.

Definition at line 694 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::deleteLink | ( | CoinSimplexInt | index | ) |
| inline protected

Deletes a link in chain of equal counts.

Definition at line 707 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::modifyLink | ( | CoinSimplexInt | index,
|  | CoinSimplexInt | count
| ) |  |
| inline protected

Modifies links in chain of equal counts.

Definition at line 726 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::separateLinks | ( |  | ) |
| protected

Separate out links with same row/column count.

void CoinAbcTypeFactorization::separateLinks | ( | CoinSimplexInt | ,
|  | CoinSimplexInt |
| ) |  |
| protected

void CoinAbcTypeFactorization::cleanup | ( |  | ) |
| protected

Cleans up at end of factorization.

void CoinAbcTypeFactorization::doAddresses | ( |  | ) |
| protected

Set up addresses from arrays.

void CoinAbcTypeFactorization::updateColumnL | ( | CoinIndexedVector * | region,
|  | CoinAbcStatistics & | statistics
| ) |  | const
| protected

Updates part of column (FTRANL)

void CoinAbcTypeFactorization::updateColumnLDensish | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column (FTRANL) when densish.

void CoinAbcTypeFactorization::updateColumnLDense | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column (FTRANL) when dense (i.e. do as inner products)

void CoinAbcTypeFactorization::updateColumnLSparse | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column (FTRANL) when sparse.

void CoinAbcTypeFactorization::updateColumnR | ( | CoinIndexedVector * | region,
|  | CoinAbcStatistics & | statistics
| ) |  | const
| protected

Updates part of column (FTRANR) without FT update.

bool CoinAbcTypeFactorization::storeFT | ( | const CoinIndexedVector * | regionFT | ) |
| protected

Store update after doing L and R - retuns false if no room.

void CoinAbcTypeFactorization::updateColumnU | ( | CoinIndexedVector * | region,
|  | CoinAbcStatistics & | statistics
| ) |  | const
| protected

Updates part of column (FTRANU)

void CoinAbcTypeFactorization::updateColumnUSparse | ( | CoinIndexedVector * | regionSparse | ) | const
| protected

Updates part of column (FTRANU) when sparse.

void CoinAbcTypeFactorization::updateColumnUDensish | ( | CoinIndexedVector * | regionSparse | ) | const
| protected

Updates part of column (FTRANU)

void CoinAbcTypeFactorization::updateColumnUDense | ( | CoinIndexedVector * | regionSparse | ) | const
| protected

Updates part of column (FTRANU) when dense (i.e. do as inner products)

void CoinAbcTypeFactorization::updateTwoColumnsUDensish | ( | CoinSimplexInt & | numberNonZero1,
|  | CoinFactorizationDouble *COIN_RESTRICT | region1,
|  | CoinSimplexInt *COIN_RESTRICT | index1,
|  | CoinSimplexInt & | numberNonZero2,
|  | CoinFactorizationDouble *COIN_RESTRICT | region2,
|  | CoinSimplexInt *COIN_RESTRICT | index2
| ) |  | const
| protected

Updates part of 2 columns (FTRANU) real work.

void CoinAbcTypeFactorization::updateColumnPFI | ( | CoinIndexedVector * | regionSparse | ) | const
| protected

Updates part of column PFI (FTRAN) (after rest)

void CoinAbcTypeFactorization::updateColumnTransposePFI | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column transpose PFI (BTRAN) (before rest)

void CoinAbcTypeFactorization::updateColumnTransposeU | ( | CoinIndexedVector * | region,
|  | CoinSimplexInt | smallestIndex,
|  | CoinAbcStatistics & | statistics
| ) |  | const
| protected

Updates part of column transpose (BTRANU), assumes index is sorted i.e.

region is correct

void CoinAbcTypeFactorization::updateColumnTransposeUDensish | ( | CoinIndexedVector * | region,
|  | CoinSimplexInt | smallestIndex
| ) |  | const
| protected

Updates part of column transpose (BTRANU) when densish, assumes index is sorted i.e.

region is correct

void CoinAbcTypeFactorization::updateColumnTransposeUSparse | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column transpose (BTRANU) when sparse, assumes index is sorted i.e.

region is correct

void CoinAbcTypeFactorization::updateColumnTransposeUByColumn | ( | CoinIndexedVector * | region,
|  | CoinSimplexInt | smallestIndex
| ) |  | const
| protected

Updates part of column transpose (BTRANU) by column assumes index is sorted i.e.

region is correct

void CoinAbcTypeFactorization::updateColumnTransposeR | ( | CoinIndexedVector * | region,
|  | CoinAbcStatistics & | statistics
| ) |  | const
| protected

Updates part of column transpose (BTRANR)

void CoinAbcTypeFactorization::updateColumnTransposeRDensish | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column transpose (BTRANR) when dense.

void CoinAbcTypeFactorization::updateColumnTransposeRSparse | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column transpose (BTRANR) when sparse.

void CoinAbcTypeFactorization::updateColumnTransposeL | ( | CoinIndexedVector * | region,
|  | CoinAbcStatistics & | statistics
| ) |  | const
| protected

Updates part of column transpose (BTRANL)

void CoinAbcTypeFactorization::updateColumnTransposeLDensish | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column transpose (BTRANL) when densish by column.

void CoinAbcTypeFactorization::updateColumnTransposeLByRow | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column transpose (BTRANL) when densish by row.

void CoinAbcTypeFactorization::updateColumnTransposeLSparse | ( | CoinIndexedVector * | region | ) | const
| protected

Updates part of column transpose (BTRANL) when sparse (by Row)

CoinSimplexInt CoinAbcTypeFactorization::replaceColumnPFI | ( | CoinIndexedVector * | regionSparse,
|  | CoinSimplexInt | pivotRow,
|  | CoinSimplexDouble | alpha
| ) |  |

Replaces one Column to basis for PFI returns 0=OK, 1=Probably OK, 2=singular, 3=no room.

In this case region is not empty - it is incoming variable (updated)

CoinSimplexInt CoinAbcTypeFactorization::checkPivot | ( | CoinSimplexDouble | saveFromU,
|  | CoinSimplexDouble | oldPivot
| ) |  | const
| protected

Returns accuracy status of replaceColumn returns 0=OK, 1=Probably OK, 2=singular.

int CoinAbcTypeFactorization::pivot | ( | CoinSimplexInt | pivotRow,
|  | CoinSimplexInt | pivotColumn,
|  | CoinBigIndex | pivotRowPosition,
|  | CoinBigIndex | pivotColumnPosition,
|  | CoinFactorizationDouble *COIN_RESTRICT | work,
|  | CoinSimplexUnsignedInt *COIN_RESTRICT | workArea2,
|  | CoinSimplexInt | increment2,
|  | int *COIN_RESTRICT | markRow
| ) |  |
| protected

0 fine, -99 singular, 2 dense

int CoinAbcTypeFactorization::pivot | ( | CoinSimplexInt & | pivotRow,
|  | CoinSimplexInt & | pivotColumn,
|  | CoinBigIndex | pivotRowPosition,
|  | CoinBigIndex | pivotColumnPosition,
|  | int *COIN_RESTRICT | markRow
| ) |  |
| protected

bool CoinAbcTypeFactorization::gotLCopy | ( |  | ) | const
| inline

Definition at line 1244 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setNoGotLCopy | ( |  | ) |
| inline

Definition at line 1248 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setYesGotLCopy | ( |  | ) |
| inline

Definition at line 1249 of file CoinAbcBaseFactorization.hpp.

bool CoinAbcTypeFactorization::gotRCopy | ( |  | ) | const
| inline

Definition at line 1250 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setNoGotRCopy | ( |  | ) |
| inline

Definition at line 1251 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setYesGotRCopy | ( |  | ) |
| inline

Definition at line 1252 of file CoinAbcBaseFactorization.hpp.

bool CoinAbcTypeFactorization::gotUCopy | ( |  | ) | const
| inline

Definition at line 1253 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setNoGotUCopy | ( |  | ) |
| inline

Definition at line 1254 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setYesGotUCopy | ( |  | ) |
| inline

Definition at line 1255 of file CoinAbcBaseFactorization.hpp.

bool CoinAbcTypeFactorization::gotSparse | ( |  | ) | const
| inline

Definition at line 1256 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setNoGotSparse | ( |  | ) |
| inline

Definition at line 1257 of file CoinAbcBaseFactorization.hpp.

void CoinAbcTypeFactorization::setYesGotSparse | ( |  | ) |
| inline

Definition at line 1258 of file CoinAbcBaseFactorization.hpp.

## Friends And Related Function Documentation

void CoinAbcFactorizationUnitTest | ( | const std::string & | mpsDir | ) |
| friend

## Member Data Documentation

CoinSimplexInt* CoinAbcTypeFactorization::pivotColumnAddress_
| protected

Definition at line 938 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::permuteAddress_
| protected

Definition at line 939 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::pivotRegionAddress_
| protected

Definition at line 940 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::elementUAddress_
| protected

Definition at line 941 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::indexRowUAddress_
| protected

Definition at line 942 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::numberInColumnAddress_
| protected

Definition at line 943 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::numberInColumnPlusAddress_
| protected

Definition at line 944 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startColumnUAddress_
| protected

Definition at line 950 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::convertRowToColumnUAddress_
| protected

Definition at line 952 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::convertColumnToRowUAddress_
| protected

Definition at line 954 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::elementRowUAddress_
| protected

Definition at line 958 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startRowUAddress_
| protected

Definition at line 960 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::numberInRowAddress_
| protected

Definition at line 961 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::indexColumnUAddress_
| protected

Definition at line 962 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::firstCountAddress_
| protected

Definition at line 963 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::nextCountAddress_
| protected

Next Row/Column with count.

Definition at line 965 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::lastCountAddress_
| protected

Previous Row/Column with count.

Definition at line 967 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::nextColumnAddress_
| protected

Definition at line 968 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::lastColumnAddress_
| protected

Definition at line 969 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::nextRowAddress_
| protected

Definition at line 970 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::lastRowAddress_
| protected

Definition at line 971 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::saveColumnAddress_
| protected

Definition at line 972 of file CoinAbcBaseFactorization.hpp.

CoinCheckZero* CoinAbcTypeFactorization::markRowAddress_
| protected

Definition at line 974 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::listAddress_
| protected

Definition at line 975 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::elementLAddress_
| protected

Definition at line 976 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::indexRowLAddress_
| protected

Definition at line 977 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startColumnLAddress_
| protected

Definition at line 978 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startRowLAddress_
| protected

Definition at line 980 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::pivotLinkedBackwardsAddress_
| protected

Definition at line 982 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::pivotLinkedForwardsAddress_
| protected

Definition at line 983 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::pivotLOrderAddress_
| protected

Definition at line 984 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex* CoinAbcTypeFactorization::startColumnRAddress_
| protected

Definition at line 985 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::elementRAddress_
| protected

Elements of R.

Definition at line 987 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::indexRowRAddress_
| protected

Row indices for R.

Definition at line 989 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::indexColumnLAddress_
| protected

Definition at line 990 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::elementByRowLAddress_
| protected

Definition at line 991 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::denseAreaAddress_
| protected

Definition at line 993 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDouble* CoinAbcTypeFactorization::workAreaAddress_
| protected

Definition at line 995 of file CoinAbcBaseFactorization.hpp.

CoinSimplexUnsignedInt* CoinAbcTypeFactorization::workArea2Address_
| protected

Definition at line 996 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt* CoinAbcTypeFactorization::sparseAddress_
| mutable protected

Definition at line 997 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberRowsExtra_
| protected

Number of Rows after iterating.

Definition at line 1003 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::maximumRowsExtra_
| protected

Maximum number of Rows after iterating.

Definition at line 1005 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberRowsSmall_
| protected

Size of small inverse.

Definition at line 1007 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberGoodL_
| protected

Number factorized in L.

Definition at line 1009 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberRowsLeft_
| protected

Number Rows left (numberRows-numberGood)

Definition at line 1011 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::totalElements_
| protected

Number of elements in U (to go) or while iterating total overall.

Definition at line 1014 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::firstZeroed_
| protected

First place in funny copy zeroed out.

Definition at line 1016 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::sparseThreshold_
| protected

Below this use sparse technology - if 0 then no L row copy.

Definition at line 1019 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberR_
| protected

Number in R.

Definition at line 1022 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lengthR_
| protected

Length of R stuff.

Definition at line 1024 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lengthAreaR_
| protected

length of area reserved for R

Definition at line 1026 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::numberL_
| protected

Number in L.

Definition at line 1028 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::baseL_
| protected

Base of L.

Definition at line 1030 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lengthL_
| protected

Length of L.

Definition at line 1032 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lengthAreaL_
| protected

Length of area reserved for L.

Definition at line 1034 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberU_
| protected

Number in U.

Definition at line 1036 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::maximumU_
| protected

Maximum space used in U.

Definition at line 1038 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lengthU_
| protected

Length of U.

Definition at line 1040 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lengthAreaU_
| protected

Length of area reserved for U.

Definition at line 1042 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lastEntryByColumnU_
| protected

Last entry by column for U.

Definition at line 1044 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::lastEntryByRowU_
| protected

Last entry by row for U.

Definition at line 1052 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberTrials_
| protected

Number of trials before rejection.

Definition at line 1054 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::leadingDimension_
| protected

Leading dimension for dense.

Definition at line 1057 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::pivotColumn_
| protected

Pivot order for each Column.

Definition at line 1066 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::permute_
| protected

Permutation vector for pivot row order.

Definition at line 1068 of file CoinAbcBaseFactorization.hpp.

CoinBigIndexArrayWithLength CoinAbcTypeFactorization::startRowU_
| protected

Start of each Row as pointer.

Definition at line 1070 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::numberInRow_
| protected

Number in each Row.

Definition at line 1072 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::numberInColumn_
| protected

Number in each Column.

Definition at line 1074 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::numberInColumnPlus_
| protected

Number in each Column including pivoted.

Definition at line 1076 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::firstCount_
| protected

First Row/Column with count of k, can tell which by offset - Rows then Columns.

Definition at line 1079 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::nextColumn_
| protected

Next Column in memory order.

Definition at line 1081 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::lastColumn_
| protected

Previous Column in memory order.

Definition at line 1083 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::nextRow_
| protected

Next Row in memory order.

Definition at line 1085 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::lastRow_
| protected

Previous Row in memory order.

Definition at line 1087 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::saveColumn_
| protected

Columns left to do in a single pivot.

Definition at line 1089 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::markRow_
| protected

Marks rows to be updated.

Definition at line 1091 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::indexColumnU_
| protected

Base address for U (may change)

Definition at line 1093 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDoubleArrayWithLength CoinAbcTypeFactorization::pivotRegion_
| protected

Inverses of pivot values.

Definition at line 1095 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDoubleArrayWithLength CoinAbcTypeFactorization::elementU_
| protected

Elements of U.

Definition at line 1097 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::indexRowU_
| protected

Row indices of U.

Definition at line 1099 of file CoinAbcBaseFactorization.hpp.

CoinBigIndexArrayWithLength CoinAbcTypeFactorization::startColumnU_
| protected

Start of each column in U.

Definition at line 1101 of file CoinAbcBaseFactorization.hpp.

CoinBigIndexArrayWithLength CoinAbcTypeFactorization::convertRowToColumnU_
| protected

Converts rows to columns in U.

Definition at line 1108 of file CoinAbcBaseFactorization.hpp.

CoinBigIndexArrayWithLength CoinAbcTypeFactorization::convertColumnToRowU_
| protected

Converts columns to rows in U.

Definition at line 1111 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDoubleArrayWithLength CoinAbcTypeFactorization::elementRowU_
| protected

Elements of U by row.

Definition at line 1116 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDoubleArrayWithLength CoinAbcTypeFactorization::elementL_
| protected

Elements of L.

Definition at line 1119 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::indexRowL_
| protected

Row indices of L.

Definition at line 1121 of file CoinAbcBaseFactorization.hpp.

CoinBigIndexArrayWithLength CoinAbcTypeFactorization::startColumnL_
| protected

Start of each column in L.

Definition at line 1123 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDoubleArrayWithLength CoinAbcTypeFactorization::denseArea_
| protected

Dense area.

Definition at line 1126 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDoubleArrayWithLength CoinAbcTypeFactorization::workArea_
| protected

First work area.

Definition at line 1129 of file CoinAbcBaseFactorization.hpp.

CoinUnsignedIntArrayWithLength CoinAbcTypeFactorization::workArea2_
| protected

Second work area.

Definition at line 1131 of file CoinAbcBaseFactorization.hpp.

CoinBigIndexArrayWithLength CoinAbcTypeFactorization::startRowL_
| protected

Start of each row in L.

Definition at line 1134 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::indexColumnL_
| protected

Index of column in row for L.

Definition at line 1136 of file CoinAbcBaseFactorization.hpp.

CoinFactorizationDoubleArrayWithLength CoinAbcTypeFactorization::elementByRowL_
| protected

Elements in L (row copy)

Definition at line 1138 of file CoinAbcBaseFactorization.hpp.

CoinIntArrayWithLength CoinAbcTypeFactorization::sparse_
| mutable protected

Sparse regions.

Definition at line 1140 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::messageLevel_
| protected

Detail in messages.

Definition at line 1143 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::numberCompressions_
| protected

Number of compressions done.

Definition at line 1145 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::lastSlack_
| protected

Definition at line 1147 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranCountInput_
| mutable protected

To decide how to solve.

Definition at line 1150 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranCountAfterL_
| mutable protected

Definition at line 1151 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranCountAfterR_
| mutable protected

Definition at line 1152 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranCountAfterU_
| mutable protected

Definition at line 1153 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranAverageAfterL_
| protected

Definition at line 1154 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranAverageAfterR_
| protected

Definition at line 1155 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranAverageAfterU_
| protected

Definition at line 1156 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberFtranCounts_
| mutable protected

Definition at line 1161 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::maximumRows_
| protected

Maximum rows (ever) (here to use double alignment)

Definition at line 1164 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFTCountInput_
| mutable protected

Definition at line 1166 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFTCountAfterL_
| mutable protected

Definition at line 1167 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFTCountAfterR_
| mutable protected

Definition at line 1168 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFTCountAfterU_
| mutable protected

Definition at line 1169 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFTAverageAfterL_
| protected

Definition at line 1170 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFTAverageAfterR_
| protected

Definition at line 1171 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFTAverageAfterU_
| protected

Definition at line 1172 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberFtranFTCounts_
| mutable protected

Definition at line 1177 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::denseThreshold_
| protected

Dense threshold (here to use double alignment)

Definition at line 1181 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranCountInput_
| mutable protected

Definition at line 1184 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranCountAfterU_
| mutable protected

Definition at line 1185 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranCountAfterR_
| mutable protected

Definition at line 1186 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranCountAfterL_
| mutable protected

Definition at line 1187 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranAverageAfterU_
| protected

Definition at line 1188 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranAverageAfterR_
| protected

Definition at line 1189 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranAverageAfterL_
| protected

Definition at line 1190 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberBtranCounts_
| mutable protected

Definition at line 1195 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::maximumMaximumPivots_
| protected

Maximum maximum pivots.

Definition at line 1198 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFullCountInput_
| mutable protected

To decide how to solve.

Definition at line 1201 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFullCountAfterL_
| mutable protected

Definition at line 1202 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFullCountAfterR_
| mutable protected

Definition at line 1203 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFullCountAfterU_
| mutable protected

Definition at line 1204 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFullAverageAfterL_
| protected

Definition at line 1205 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFullAverageAfterR_
| protected

Definition at line 1206 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::ftranFullAverageAfterU_
| protected

Definition at line 1207 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberFtranFullCounts_
| mutable protected

Definition at line 1212 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::initialNumberRows_
| protected

Rows first time nonzero.

Definition at line 1215 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranFullCountInput_
| mutable protected

To decide how to solve.

Definition at line 1218 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranFullCountAfterL_
| mutable protected

Definition at line 1219 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranFullCountAfterR_
| mutable protected

Definition at line 1220 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranFullCountAfterU_
| mutable protected

Definition at line 1221 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranFullAverageAfterL_
| protected

Definition at line 1222 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranFullAverageAfterR_
| protected

Definition at line 1223 of file CoinAbcBaseFactorization.hpp.

double CoinAbcTypeFactorization::btranFullAverageAfterU_
| protected

Definition at line 1224 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::numberBtranFullCounts_
| mutable protected

Definition at line 1229 of file CoinAbcBaseFactorization.hpp.

CoinSimplexInt CoinAbcTypeFactorization::state_
| protected

State of saved version and what can be done 0 - nothing saved 1 - saved and can go back to previous save by unwinding 2 - saved - getting on for a full copy higher bits - see ABC_FAC....

Definition at line 1237 of file CoinAbcBaseFactorization.hpp.

CoinBigIndex CoinAbcTypeFactorization::sizeSparseArray_
| protected

Size in bytes of a sparseArray.

Definition at line 1239 of file CoinAbcBaseFactorization.hpp.

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

- /tmp/Clp-1.17.6/Clp/src/CoinAbcBaseFactorization.hpp