#include <CoinSimpFactorization.hpp>
Public Member Functions | |
void | gutsOfDestructor () |
The real work of destructor. More... | |
void | gutsOfInitialize () |
The real work of constructor. More... | |
void | gutsOfCopy (const CoinSimpFactorization &other) |
The real work of copy. More... | |
void | factorize (int numberOfRows, int numberOfColumns, const int colStarts[], const int indicesRow[], const double elements[]) |
calls factorization More... | |
int | mainLoopFactor (FactorPointers &pointers) |
main loop of factorization More... | |
void | copyLbyRows () |
copies L by rows More... | |
void | copyUbyColumns () |
copies U by columns More... | |
int | findPivot (FactorPointers &pointers, int &r, int &s, bool &ifSlack) |
finds a pivot element using Markowitz count More... | |
int | findPivotShCol (FactorPointers &pointers, int &r, int &s) |
finds a pivot in a shortest column More... | |
int | findPivotSimp (FactorPointers &pointers, int &r, int &s) |
finds a pivot in the first column available More... | |
void | GaussEliminate (FactorPointers &pointers, int &r, int &s) |
does Gauss elimination More... | |
int | findShortRow (const int column, const int length, int &minRow, int &minRowLength, FactorPointers &pointers) |
finds short row that intersects a given column More... | |
int | findShortColumn (const int row, const int length, int &minCol, int &minColLength, FactorPointers &pointers) |
finds short column that intersects a given row More... | |
double | findMaxInRrow (const int row, FactorPointers &pointers) |
finds maximum absolute value in a row More... | |
void | pivoting (const int pivotRow, const int pivotColumn, const double invPivot, FactorPointers &pointers) |
does pivoting More... | |
void | updateCurrentRow (const int pivotRow, const int row, const double multiplier, FactorPointers &pointers, int &newNonZeros) |
part of pivoting More... | |
void | increaseLsize () |
allocates more space for L More... | |
void | increaseRowSize (const int row, const int newSize) |
allocates more space for a row of U More... | |
void | increaseColSize (const int column, const int newSize, const bool b) |
allocates more space for a column of U More... | |
void | enlargeUrow (const int numNewElements) |
allocates more space for rows of U More... | |
void | enlargeUcol (const int numNewElements, const bool b) |
allocates more space for columns of U More... | |
int | findInRow (const int row, const int column) |
finds a given row in a column More... | |
int | findInColumn (const int column, const int row) |
finds a given column in a row More... | |
void | removeRowFromActSet (const int row, FactorPointers &pointers) |
declares a row inactive More... | |
void | removeColumnFromActSet (const int column, FactorPointers &pointers) |
declares a column inactive More... | |
void | allocateSpaceForU () |
allocates space for U More... | |
void | allocateSomeArrays () |
allocates several working arrays More... | |
void | initialSomeNumbers () |
initializes some numbers More... | |
void | Lxeqb (double *b) const |
solves L x = b More... | |
void | Lxeqb2 (double *b1, double *b2) const |
same as above but with two rhs More... | |
void | Uxeqb (double *b, double *sol) const |
solves U x = b More... | |
void | Uxeqb2 (double *b1, double *sol1, double *sol2, double *b2) const |
same as above but with two rhs More... | |
void | xLeqb (double *b) const |
solves x L = b More... | |
void | xUeqb (double *b, double *sol) const |
solves x U = b More... | |
int | LUupdate (int newBasicCol) |
updates factorization after a Simplex iteration More... | |
void | newEta (int row, int numNewElements) |
creates a new eta vector More... | |
void | copyRowPermutations () |
makes a copy of row permutations More... | |
void | Hxeqb (double *b) const |
solves H x = b, where H is a product of eta matrices More... | |
void | Hxeqb2 (double *b1, double *b2) const |
same as above but with two rhs More... | |
void | xHeqb (double *b) const |
solves x H = b More... | |
void | ftran (double *b, double *sol, bool save) const |
does FTRAN More... | |
void | ftran2 (double *b1, double *sol1, double *b2, double *sol2) const |
same as above but with two columns More... | |
void | btran (double *b, double *sol) const |
does BTRAN More... | |
Constructors and destructor and copy | |
CoinSimpFactorization () | |
Default constructor. More... | |
CoinSimpFactorization (const CoinSimpFactorization &other) | |
Copy constructor. More... | |
virtual | ~CoinSimpFactorization () |
Destructor. More... | |
CoinSimpFactorization & | operator= (const CoinSimpFactorization &other) |
= copy More... | |
virtual CoinOtherFactorization * | clone () const |
Clone. More... | |
Do factorization - public | |
virtual void | getAreas (int numberRows, int numberColumns, CoinBigIndex maximumL, CoinBigIndex maximumU) |
Gets space for a factorization. More... | |
virtual void | preProcess () |
PreProcesses column ordered copy of basis. More... | |
virtual int | factor () |
Does most of factorization returning status 0 - OK -99 - needs more memory -1 - singular - use numberGoodColumns and redo. More... | |
virtual void | postProcess (const int *sequence, int *pivotVariable) |
Does post processing on valid factorization - putting variables on correct rows. More... | |
virtual void | makeNonSingular (int *sequence, int numberColumns) |
Makes a non-singular basis by replacing variables. More... | |
general stuff such as status | |
virtual int | numberElements () const |
Total number of elements in factorization. More... | |
double | maximumCoefficient () const |
Returns maximum absolute value in factorization. More... | |
rank one updates which do exist | |
virtual int | replaceColumn (CoinIndexedVector *regionSparse, int pivotRow, double pivotCheck, bool checkBeforeModifying=false, double acceptablePivot=1.0e-8) |
Replaces one Column to basis, returns 0=OK, 1=Probably OK, 2=singular, 3=no room If checkBeforeModifying is true will do all accuracy checks before modifying factorization. More... | |
various uses of factorization (return code number elements) | |
which user may want to know about | |
virtual int | updateColumnFT (CoinIndexedVector *regionSparse, CoinIndexedVector *regionSparse2, bool noPermute=false) |
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. More... | |
virtual int | updateColumn (CoinIndexedVector *regionSparse, CoinIndexedVector *regionSparse2, bool noPermute=false) const |
This version has same effect as above with FTUpdate==false so number returned is always >=0. More... | |
virtual int | updateTwoColumnsFT (CoinIndexedVector *regionSparse1, CoinIndexedVector *regionSparse2, CoinIndexedVector *regionSparse3, bool noPermute=false) |
does FTRAN on two columns More... | |
int | upColumn (CoinIndexedVector *regionSparse, CoinIndexedVector *regionSparse2, bool noPermute=false, bool save=false) const |
does updatecolumn if save==true keeps column for replace column More... | |
virtual int | updateColumnTranspose (CoinIndexedVector *regionSparse, CoinIndexedVector *regionSparse2) 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... | |
int | upColumnTranspose (CoinIndexedVector *regionSparse, CoinIndexedVector *regionSparse2) const |
does updateColumnTranspose, the other is a wrapper More... | |
various uses of factorization | |
*** Below this user may not want to know about which user may not want to know about (left over from my LP code) | |
void | clearArrays () |
Get rid of all memory. More... | |
int * | indices () const |
Returns array to put basis indices in. More... | |
virtual int * | permute () const |
Returns permute in. More... | |
![]() | |
CoinOtherFactorization () | |
Default constructor. More... | |
CoinOtherFactorization (const CoinOtherFactorization &other) | |
Copy constructor. More... | |
virtual | ~CoinOtherFactorization () |
Destructor. More... | |
CoinOtherFactorization & | operator= (const CoinOtherFactorization &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... | |
void | setNumberRows (int value) |
Set number of Rows after factorization. More... | |
int | numberRows () const |
Number of Rows after factorization. More... | |
int | numberColumns () const |
Total number of columns in 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 |
Returns status. More... | |
int | maximumPivots () const |
Maximum number of pivots between factorizations. More... | |
virtual void | maximumPivots (int value) |
Set maximum pivots. More... | |
double | pivotTolerance () const |
Pivot tolerance. More... | |
void | pivotTolerance (double value) |
Returns status. More... | |
double | zeroTolerance () const |
Zero tolerance. More... | |
void | zeroTolerance (double value) |
Returns status. More... | |
double | slackValue () const |
Whether slack value is +1 or -1. More... | |
void | slackValue (double value) |
Returns status. More... | |
virtual CoinFactorizationDouble * | elements () const |
Returns array to put basis elements in. More... | |
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 * | numberInRow () const |
Number of entries in each row. More... | |
virtual int * | numberInColumn () const |
Number of entries in each column. More... | |
virtual CoinBigIndex * | starts () const |
Returns array to put basis starts in. 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 bool | wantsTableauColumn () const |
Returns true if wants tableauColumn in replaceColumn. 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... | |
Protected Member Functions | |
int | checkPivot (double saveFromU, double oldPivot) const |
More... | |
Protected Attributes | |
data | |
double * | denseVector_ |
work array (should be initialized to zero) More... | |
double * | workArea2_ |
work array More... | |
double * | workArea3_ |
work array More... | |
int * | vecLabels_ |
array of labels (should be initialized to zero) More... | |
int * | indVector_ |
array of indices More... | |
double * | auxVector_ |
auxiliary vector More... | |
int * | auxInd_ |
auxiliary vector More... | |
double * | vecKeep_ |
vector to keep for LUupdate More... | |
int * | indKeep_ |
indices of this vector More... | |
int | keepSize_ |
number of nonzeros More... | |
int * | LrowStarts_ |
Starts of the rows of L. More... | |
int * | LrowLengths_ |
Lengths of the rows of L. More... | |
double * | Lrows_ |
L by rows. More... | |
int * | LrowInd_ |
indices in the rows of L More... | |
int | LrowSize_ |
Size of Lrows_;. More... | |
int | LrowCap_ |
Capacity of Lrows_. More... | |
int * | LcolStarts_ |
Starts of the columns of L. More... | |
int * | LcolLengths_ |
Lengths of the columns of L. More... | |
double * | Lcolumns_ |
L by columns. More... | |
int * | LcolInd_ |
indices in the columns of L More... | |
int | LcolSize_ |
numbers of elements in L More... | |
int | LcolCap_ |
maximum capacity of L More... | |
int * | UrowStarts_ |
Starts of the rows of U. More... | |
int * | UrowLengths_ |
Lengths of the rows of U. More... | |
double * | Urows_ |
U by rows. More... | |
int * | UrowInd_ |
Indices in the rows of U. More... | |
int | UrowMaxCap_ |
maximum capacity of Urows More... | |
int | UrowEnd_ |
number of used places in Urows More... | |
int | firstRowInU_ |
first row in U More... | |
int | lastRowInU_ |
last row in U More... | |
int * | prevRowInU_ |
previous row in U More... | |
int * | nextRowInU_ |
next row in U More... | |
int * | UcolStarts_ |
Starts of the columns of U. More... | |
int * | UcolLengths_ |
Lengths of the columns of U. More... | |
double * | Ucolumns_ |
U by columns. More... | |
int * | UcolInd_ |
Indices in the columns of U. More... | |
int * | prevColInU_ |
previous column in U More... | |
int * | nextColInU_ |
next column in U More... | |
int | firstColInU_ |
first column in U More... | |
int | lastColInU_ |
last column in U More... | |
int | UcolMaxCap_ |
maximum capacity of Ucolumns_ More... | |
int | UcolEnd_ |
last used position in Ucolumns_ More... | |
int * | colSlack_ |
indicator of slack variables More... | |
double * | invOfPivots_ |
inverse values of the elements of diagonal of U More... | |
int * | colOfU_ |
permutation of columns More... | |
int * | colPosition_ |
position of column after permutation More... | |
int * | rowOfU_ |
permutations of rows More... | |
int * | rowPosition_ |
position of row after permutation More... | |
int * | secRowOfU_ |
permutations of rows during LUupdate More... | |
int * | secRowPosition_ |
position of row after permutation during LUupdate More... | |
int * | EtaPosition_ |
position of Eta vector More... | |
int * | EtaStarts_ |
Starts of eta vectors. More... | |
int * | EtaLengths_ |
Lengths of eta vectors. More... | |
int * | EtaInd_ |
columns of eta vectors More... | |
double * | Eta_ |
elements of eta vectors More... | |
int | EtaSize_ |
number of elements in Eta_ More... | |
int | lastEtaRow_ |
last eta row More... | |
int | maxEtaRows_ |
maximum number of eta vectors More... | |
int | EtaMaxCap_ |
Capacity of Eta_. More... | |
int | minIncrease_ |
minimum storage increase More... | |
double | updateTol_ |
maximum size for the diagonal of U after update More... | |
bool | doSuhlHeuristic_ |
do Shul heuristic More... | |
double | maxU_ |
maximum of U More... | |
double | maxGrowth_ |
bound on the growth rate More... | |
double | maxA_ |
maximum of A More... | |
int | pivotCandLimit_ |
maximum number of candidates for pivot More... | |
int | numberSlacks_ |
number of slacks in basis More... | |
int | firstNumberSlacks_ |
number of slacks in irst basis More... | |
![]() | |
double | pivotTolerance_ |
Pivot tolerance. More... | |
double | zeroTolerance_ |
Zero tolerance. More... | |
double | slackValue_ |
Whether slack value is +1 or -1. 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 | numberColumns_ |
Number of Columns 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 | status_ |
Status of factorization. More... | |
int | maximumRows_ |
Maximum rows ever (i.e. use to copy arrays etc) More... | |
CoinBigIndex | maximumSpace_ |
Maximum length of iterating area. 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... | |
Friends | |
void | CoinSimpFactorizationUnitTest (const std::string &mpsDir) |
Definition at line 39 of file CoinSimpFactorization.hpp.
CoinSimpFactorization::CoinSimpFactorization | ( | ) |
Default constructor.
CoinSimpFactorization::CoinSimpFactorization | ( | const CoinSimpFactorization & | other | ) |
Copy constructor.
|
virtual |
Destructor.
CoinSimpFactorization& CoinSimpFactorization::operator= | ( | const CoinSimpFactorization & | other | ) |
= copy
|
virtual |
Clone.
Implements CoinOtherFactorization.
|
virtual |
Gets space for a factorization.
Implements CoinOtherFactorization.
|
virtual |
PreProcesses column ordered copy of basis.
Implements CoinOtherFactorization.
|
virtual |
Does most of factorization returning status 0 - OK -99 - needs more memory -1 - singular - use numberGoodColumns and redo.
Implements CoinOtherFactorization.
|
virtual |
Does post processing on valid factorization - putting variables on correct rows.
Implements CoinOtherFactorization.
|
virtual |
Makes a non-singular basis by replacing variables.
Implements CoinOtherFactorization.
|
inlinevirtual |
Total number of elements in factorization.
Implements CoinOtherFactorization.
Definition at line 84 of file CoinSimpFactorization.hpp.
double CoinSimpFactorization::maximumCoefficient | ( | ) | const |
Returns maximum absolute value in factorization.
|
virtual |
Replaces one Column to basis, returns 0=OK, 1=Probably OK, 2=singular, 3=no room If checkBeforeModifying is true will do all accuracy checks before modifying factorization.
Whether to set this depends on speed considerations. You could just do this on first iteration after factorization and thereafter re-factorize partial update already in U
Implements CoinOtherFactorization.
|
virtual |
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 CoinOtherFactorization.
|
virtual |
This version has same effect as above with FTUpdate==false so number returned is always >=0.
Implements CoinOtherFactorization.
|
virtual |
does FTRAN on two columns
Implements CoinOtherFactorization.
int CoinSimpFactorization::upColumn | ( | CoinIndexedVector * | regionSparse, |
CoinIndexedVector * | regionSparse2, | ||
bool | noPermute = false , |
||
bool | save = false |
||
) | const |
does updatecolumn if save==true keeps column for replace column
|
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 CoinOtherFactorization.
int CoinSimpFactorization::upColumnTranspose | ( | CoinIndexedVector * | regionSparse, |
CoinIndexedVector * | regionSparse2 | ||
) | const |
does updateColumnTranspose, the other is a wrapper
|
inlinevirtual |
Get rid of all memory.
Reimplemented from CoinOtherFactorization.
Definition at line 152 of file CoinSimpFactorization.hpp.
|
inlinevirtual |
Returns array to put basis indices in.
Implements CoinOtherFactorization.
Definition at line 155 of file CoinSimpFactorization.hpp.
|
inlinevirtual |
Returns permute in.
Implements CoinOtherFactorization.
Definition at line 158 of file CoinSimpFactorization.hpp.
void CoinSimpFactorization::gutsOfDestructor | ( | ) |
The real work of destructor.
void CoinSimpFactorization::gutsOfInitialize | ( | ) |
The real work of constructor.
void CoinSimpFactorization::gutsOfCopy | ( | const CoinSimpFactorization & | other | ) |
The real work of copy.
void CoinSimpFactorization::factorize | ( | int | numberOfRows, |
int | numberOfColumns, | ||
const int | colStarts[], | ||
const int | indicesRow[], | ||
const double | elements[] | ||
) |
calls factorization
int CoinSimpFactorization::mainLoopFactor | ( | FactorPointers & | pointers | ) |
main loop of factorization
void CoinSimpFactorization::copyLbyRows | ( | ) |
copies L by rows
void CoinSimpFactorization::copyUbyColumns | ( | ) |
copies U by columns
int CoinSimpFactorization::findPivot | ( | FactorPointers & | pointers, |
int & | r, | ||
int & | s, | ||
bool & | ifSlack | ||
) |
finds a pivot element using Markowitz count
int CoinSimpFactorization::findPivotShCol | ( | FactorPointers & | pointers, |
int & | r, | ||
int & | s | ||
) |
finds a pivot in a shortest column
int CoinSimpFactorization::findPivotSimp | ( | FactorPointers & | pointers, |
int & | r, | ||
int & | s | ||
) |
finds a pivot in the first column available
void CoinSimpFactorization::GaussEliminate | ( | FactorPointers & | pointers, |
int & | r, | ||
int & | s | ||
) |
does Gauss elimination
int CoinSimpFactorization::findShortRow | ( | const int | column, |
const int | length, | ||
int & | minRow, | ||
int & | minRowLength, | ||
FactorPointers & | pointers | ||
) |
finds short row that intersects a given column
int CoinSimpFactorization::findShortColumn | ( | const int | row, |
const int | length, | ||
int & | minCol, | ||
int & | minColLength, | ||
FactorPointers & | pointers | ||
) |
finds short column that intersects a given row
double CoinSimpFactorization::findMaxInRrow | ( | const int | row, |
FactorPointers & | pointers | ||
) |
finds maximum absolute value in a row
void CoinSimpFactorization::pivoting | ( | const int | pivotRow, |
const int | pivotColumn, | ||
const double | invPivot, | ||
FactorPointers & | pointers | ||
) |
does pivoting
void CoinSimpFactorization::updateCurrentRow | ( | const int | pivotRow, |
const int | row, | ||
const double | multiplier, | ||
FactorPointers & | pointers, | ||
int & | newNonZeros | ||
) |
part of pivoting
void CoinSimpFactorization::increaseLsize | ( | ) |
allocates more space for L
void CoinSimpFactorization::increaseRowSize | ( | const int | row, |
const int | newSize | ||
) |
allocates more space for a row of U
void CoinSimpFactorization::increaseColSize | ( | const int | column, |
const int | newSize, | ||
const bool | b | ||
) |
allocates more space for a column of U
void CoinSimpFactorization::enlargeUrow | ( | const int | numNewElements | ) |
allocates more space for rows of U
void CoinSimpFactorization::enlargeUcol | ( | const int | numNewElements, |
const bool | b | ||
) |
allocates more space for columns of U
int CoinSimpFactorization::findInRow | ( | const int | row, |
const int | column | ||
) |
finds a given row in a column
int CoinSimpFactorization::findInColumn | ( | const int | column, |
const int | row | ||
) |
finds a given column in a row
void CoinSimpFactorization::removeRowFromActSet | ( | const int | row, |
FactorPointers & | pointers | ||
) |
declares a row inactive
void CoinSimpFactorization::removeColumnFromActSet | ( | const int | column, |
FactorPointers & | pointers | ||
) |
declares a column inactive
void CoinSimpFactorization::allocateSpaceForU | ( | ) |
allocates space for U
void CoinSimpFactorization::allocateSomeArrays | ( | ) |
allocates several working arrays
void CoinSimpFactorization::initialSomeNumbers | ( | ) |
initializes some numbers
void CoinSimpFactorization::Lxeqb | ( | double * | b | ) | const |
solves L x = b
void CoinSimpFactorization::Lxeqb2 | ( | double * | b1, |
double * | b2 | ||
) | const |
same as above but with two rhs
void CoinSimpFactorization::Uxeqb | ( | double * | b, |
double * | sol | ||
) | const |
solves U x = b
void CoinSimpFactorization::Uxeqb2 | ( | double * | b1, |
double * | sol1, | ||
double * | sol2, | ||
double * | b2 | ||
) | const |
same as above but with two rhs
void CoinSimpFactorization::xLeqb | ( | double * | b | ) | const |
solves x L = b
void CoinSimpFactorization::xUeqb | ( | double * | b, |
double * | sol | ||
) | const |
solves x U = b
int CoinSimpFactorization::LUupdate | ( | int | newBasicCol | ) |
updates factorization after a Simplex iteration
void CoinSimpFactorization::newEta | ( | int | row, |
int | numNewElements | ||
) |
creates a new eta vector
void CoinSimpFactorization::copyRowPermutations | ( | ) |
makes a copy of row permutations
void CoinSimpFactorization::Hxeqb | ( | double * | b | ) | const |
solves H x = b, where H is a product of eta matrices
void CoinSimpFactorization::Hxeqb2 | ( | double * | b1, |
double * | b2 | ||
) | const |
same as above but with two rhs
void CoinSimpFactorization::xHeqb | ( | double * | b | ) | const |
solves x H = b
void CoinSimpFactorization::ftran | ( | double * | b, |
double * | sol, | ||
bool | save | ||
) | const |
does FTRAN
void CoinSimpFactorization::ftran2 | ( | double * | b1, |
double * | sol1, | ||
double * | b2, | ||
double * | sol2 | ||
) | const |
same as above but with two columns
void CoinSimpFactorization::btran | ( | double * | b, |
double * | sol | ||
) | const |
does BTRAN
|
protected |
Returns accuracy status of replaceColumn returns 0=OK, 1=Probably OK, 2=singular
|
friend |
|
protected |
work array (should be initialized to zero)
Definition at line 274 of file CoinSimpFactorization.hpp.
|
protected |
work array
Definition at line 276 of file CoinSimpFactorization.hpp.
|
protected |
work array
Definition at line 278 of file CoinSimpFactorization.hpp.
|
protected |
array of labels (should be initialized to zero)
Definition at line 280 of file CoinSimpFactorization.hpp.
|
protected |
array of indices
Definition at line 282 of file CoinSimpFactorization.hpp.
|
protected |
auxiliary vector
Definition at line 285 of file CoinSimpFactorization.hpp.
|
protected |
auxiliary vector
Definition at line 287 of file CoinSimpFactorization.hpp.
|
protected |
vector to keep for LUupdate
Definition at line 290 of file CoinSimpFactorization.hpp.
|
protected |
indices of this vector
Definition at line 292 of file CoinSimpFactorization.hpp.
|
mutableprotected |
number of nonzeros
Definition at line 294 of file CoinSimpFactorization.hpp.
|
protected |
Starts of the rows of L.
Definition at line 299 of file CoinSimpFactorization.hpp.
|
protected |
Lengths of the rows of L.
Definition at line 301 of file CoinSimpFactorization.hpp.
|
protected |
L by rows.
Definition at line 303 of file CoinSimpFactorization.hpp.
|
protected |
indices in the rows of L
Definition at line 305 of file CoinSimpFactorization.hpp.
|
protected |
Size of Lrows_;.
Definition at line 307 of file CoinSimpFactorization.hpp.
|
protected |
Capacity of Lrows_.
Definition at line 309 of file CoinSimpFactorization.hpp.
|
protected |
Starts of the columns of L.
Definition at line 312 of file CoinSimpFactorization.hpp.
|
protected |
Lengths of the columns of L.
Definition at line 314 of file CoinSimpFactorization.hpp.
|
protected |
L by columns.
Definition at line 316 of file CoinSimpFactorization.hpp.
|
protected |
indices in the columns of L
Definition at line 318 of file CoinSimpFactorization.hpp.
|
protected |
numbers of elements in L
Definition at line 320 of file CoinSimpFactorization.hpp.
|
protected |
maximum capacity of L
Definition at line 322 of file CoinSimpFactorization.hpp.
|
protected |
Starts of the rows of U.
Definition at line 326 of file CoinSimpFactorization.hpp.
|
protected |
Lengths of the rows of U.
Definition at line 328 of file CoinSimpFactorization.hpp.
|
protected |
U by rows.
Definition at line 334 of file CoinSimpFactorization.hpp.
|
protected |
Indices in the rows of U.
Definition at line 336 of file CoinSimpFactorization.hpp.
|
protected |
maximum capacity of Urows
Definition at line 338 of file CoinSimpFactorization.hpp.
|
protected |
number of used places in Urows
Definition at line 340 of file CoinSimpFactorization.hpp.
|
protected |
first row in U
Definition at line 342 of file CoinSimpFactorization.hpp.
|
protected |
last row in U
Definition at line 344 of file CoinSimpFactorization.hpp.
|
protected |
previous row in U
Definition at line 346 of file CoinSimpFactorization.hpp.
|
protected |
next row in U
Definition at line 348 of file CoinSimpFactorization.hpp.
|
protected |
Starts of the columns of U.
Definition at line 351 of file CoinSimpFactorization.hpp.
|
protected |
Lengths of the columns of U.
Definition at line 353 of file CoinSimpFactorization.hpp.
|
protected |
U by columns.
Definition at line 359 of file CoinSimpFactorization.hpp.
|
protected |
Indices in the columns of U.
Definition at line 361 of file CoinSimpFactorization.hpp.
|
protected |
previous column in U
Definition at line 363 of file CoinSimpFactorization.hpp.
|
protected |
next column in U
Definition at line 365 of file CoinSimpFactorization.hpp.
|
protected |
first column in U
Definition at line 367 of file CoinSimpFactorization.hpp.
|
protected |
last column in U
Definition at line 369 of file CoinSimpFactorization.hpp.
|
protected |
maximum capacity of Ucolumns_
Definition at line 371 of file CoinSimpFactorization.hpp.
|
protected |
last used position in Ucolumns_
Definition at line 373 of file CoinSimpFactorization.hpp.
|
protected |
indicator of slack variables
Definition at line 375 of file CoinSimpFactorization.hpp.
|
protected |
inverse values of the elements of diagonal of U
Definition at line 378 of file CoinSimpFactorization.hpp.
|
protected |
permutation of columns
Definition at line 381 of file CoinSimpFactorization.hpp.
|
protected |
position of column after permutation
Definition at line 383 of file CoinSimpFactorization.hpp.
|
protected |
permutations of rows
Definition at line 385 of file CoinSimpFactorization.hpp.
|
protected |
position of row after permutation
Definition at line 387 of file CoinSimpFactorization.hpp.
|
protected |
permutations of rows during LUupdate
Definition at line 389 of file CoinSimpFactorization.hpp.
|
protected |
position of row after permutation during LUupdate
Definition at line 391 of file CoinSimpFactorization.hpp.
|
protected |
position of Eta vector
Definition at line 394 of file CoinSimpFactorization.hpp.
|
protected |
Starts of eta vectors.
Definition at line 396 of file CoinSimpFactorization.hpp.
|
protected |
Lengths of eta vectors.
Definition at line 398 of file CoinSimpFactorization.hpp.
|
protected |
columns of eta vectors
Definition at line 400 of file CoinSimpFactorization.hpp.
|
protected |
elements of eta vectors
Definition at line 402 of file CoinSimpFactorization.hpp.
|
protected |
number of elements in Eta_
Definition at line 404 of file CoinSimpFactorization.hpp.
|
protected |
last eta row
Definition at line 406 of file CoinSimpFactorization.hpp.
|
protected |
maximum number of eta vectors
Definition at line 408 of file CoinSimpFactorization.hpp.
|
protected |
Capacity of Eta_.
Definition at line 410 of file CoinSimpFactorization.hpp.
|
protected |
minimum storage increase
Definition at line 413 of file CoinSimpFactorization.hpp.
|
protected |
maximum size for the diagonal of U after update
Definition at line 415 of file CoinSimpFactorization.hpp.
|
protected |
do Shul heuristic
Definition at line 417 of file CoinSimpFactorization.hpp.
|
protected |
maximum of U
Definition at line 419 of file CoinSimpFactorization.hpp.
|
protected |
bound on the growth rate
Definition at line 421 of file CoinSimpFactorization.hpp.
|
protected |
maximum of A
Definition at line 423 of file CoinSimpFactorization.hpp.
|
protected |
maximum number of candidates for pivot
Definition at line 425 of file CoinSimpFactorization.hpp.
|
protected |
number of slacks in basis
Definition at line 427 of file CoinSimpFactorization.hpp.
|
protected |
number of slacks in irst basis
Definition at line 429 of file CoinSimpFactorization.hpp.