Clp 1.17.5
|
#include <ClpCholeskyDense.hpp>
Public Member Functions | |
Virtual methods that the derived classes provides <br> | |
virtual int | order (ClpInterior *model) |
Orders rows and saves pointer to matrix.and model. | |
virtual int | symbolic () |
Does Symbolic factorization given permutation. | |
virtual int | factorize (const CoinWorkDouble *diagonal, int *rowsDropped) |
Factorize - filling in rowsDropped and returning number dropped. | |
virtual void | solve (CoinWorkDouble *region) |
Uses factorization to solve. | |
Non virtual methods for ClpCholeskyDense <br> | |
int | reserveSpace (const ClpCholeskyBase *factor, int numberRows) |
Reserves space. | |
int | space (int numberRows) const |
Returns space needed. | |
void | factorizePart2 (int *rowsDropped) |
part 2 of Factorize - filling in rowsDropped | |
void | factorizePart3 (int *rowsDropped) |
part 2 of Factorize - filling in rowsDropped - blocked | |
void | solveF1 (longDouble *a, int n, CoinWorkDouble *region) |
Forward part of solve. | |
void | solveF2 (longDouble *a, int n, CoinWorkDouble *region, CoinWorkDouble *region2) |
void | solveB1 (longDouble *a, int n, CoinWorkDouble *region) |
Backward part of solve. | |
void | solveB2 (longDouble *a, int n, CoinWorkDouble *region, CoinWorkDouble *region2) |
int | bNumber (const longDouble *array, int &, int &) |
longDouble * | aMatrix () const |
A. | |
longDouble * | diagonal () const |
Diagonal. | |
Constructors, destructor | |
ClpCholeskyDense () | |
Default constructor. | |
virtual | ~ClpCholeskyDense () |
Destructor | |
ClpCholeskyDense (const ClpCholeskyDense &) | |
Copy. | |
ClpCholeskyDense & | operator= (const ClpCholeskyDense &) |
Assignment. | |
virtual ClpCholeskyBase * | clone () const |
Clone. | |
![]() | |
int | status () const |
status. Returns status | |
int | numberRowsDropped () const |
numberRowsDropped. Number of rows gone | |
void | resetRowsDropped () |
reset numberRowsDropped and rowsDropped. | |
char * | rowsDropped () const |
rowsDropped - which rows are gone | |
double | choleskyCondition () const |
choleskyCondition. | |
double | goDense () const |
goDense i.e. use dense factoriaztion if > this (default 0.7). | |
void | setGoDense (double value) |
goDense i.e. use dense factoriaztion if > this (default 0.7). | |
int | rank () const |
rank. Returns rank | |
int | numberRows () const |
Return number of rows. | |
int | size () const |
Return size. | |
longDouble * | sparseFactor () const |
Return sparseFactor. | |
longDouble * | diagonal () const |
Return diagonal. | |
longDouble * | workDouble () const |
Return workDouble. | |
bool | kkt () const |
If KKT on. | |
void | setKKT (bool yesNo) |
Set KKT. | |
void | setIntegerParameter (int i, int value) |
Set integer parameter. | |
int | getIntegerParameter (int i) |
get integer parameter | |
void | setDoubleParameter (int i, double value) |
Set double parameter. | |
double | getDoubleParameter (int i) |
get double parameter | |
ClpCholeskyBase (int denseThreshold=-1) | |
Constructor which has dense columns activated. | |
virtual | ~ClpCholeskyBase () |
Destructor (has to be public) | |
ClpCholeskyBase (const ClpCholeskyBase &) | |
Copy. | |
ClpCholeskyBase & | operator= (const ClpCholeskyBase &) |
Assignment. | |
virtual void | solveKKT (CoinWorkDouble *region1, CoinWorkDouble *region2, const CoinWorkDouble *diagonal, CoinWorkDouble diagonalScaleFactor) |
Uses factorization to solve. | |
int | type () const |
Returns type. | |
Private Attributes | |
Data members | |
bool | borrowSpace_ |
Just borrowing space. | |
Additional Inherited Members | |
![]() | |
int | symbolic1 (const int *Astart, const int *Arow) |
Symbolic1 - works out size without clever stuff. | |
void | symbolic2 (const int *Astart, const int *Arow) |
Symbolic2 - Fills in indices Uses lower triangular so can do cliques etc. | |
void | factorizePart2 (int *rowsDropped) |
Factorize - filling in rowsDropped and returning number dropped in integerParam. | |
void | solve (CoinWorkDouble *region, int type) |
solve - 1 just first half, 2 just second half - 3 both. | |
int | preOrder (bool lowerTriangular, bool includeDiagonal, bool doKKT) |
Forms ADAT - returns nonzero if not enough memory. | |
void | updateDense (longDouble *d, int *first) |
Updates dense part (broken out for profiling) | |
void | setType (int type) |
Sets type. | |
void | setModel (ClpInterior *model) |
model. | |
![]() | |
int | type_ |
type (may be useful) if > 20 do KKT | |
bool | doKKT_ |
Doing full KKT (only used if default symbolic and factorization) | |
double | goDense_ |
Go dense at this fraction. | |
double | choleskyCondition_ |
choleskyCondition. | |
ClpInterior * | model_ |
model. | |
int | numberTrials_ |
numberTrials. Number of trials before rejection | |
int | numberRows_ |
numberRows. Number of Rows in factorization | |
int | status_ |
status. Status of factorization | |
char * | rowsDropped_ |
rowsDropped | |
int * | permuteInverse_ |
permute inverse. | |
int * | permute_ |
main permute. | |
int | numberRowsDropped_ |
numberRowsDropped. Number of rows gone | |
longDouble * | sparseFactor_ |
sparseFactor. | |
int * | choleskyStart_ |
choleskyStart - element starts | |
int * | choleskyRow_ |
choleskyRow (can be shorter than sparsefactor) | |
int * | indexStart_ |
Index starts. | |
longDouble * | diagonal_ |
Diagonal. | |
longDouble * | workDouble_ |
double work array | |
int * | link_ |
link array | |
int * | workInteger_ |
int * | clique_ |
int | sizeFactor_ |
sizeFactor. | |
int | sizeIndex_ |
Size of index array. | |
int | firstDense_ |
First dense row. | |
int | integerParameters_ [64] |
integerParameters | |
double | doubleParameters_ [64] |
doubleParameters; | |
ClpMatrixBase * | rowCopy_ |
Row copy of matrix. | |
char * | whichDense_ |
Dense indicators. | |
longDouble * | denseColumn_ |
Dense columns (updated) | |
ClpCholeskyDense * | dense_ |
Dense cholesky. | |
int | denseThreshold_ |
Dense threshold (for taking out of Cholesky) | |
Definition at line 14 of file ClpCholeskyDense.hpp.
ClpCholeskyDense::ClpCholeskyDense | ( | ) |
Default constructor.
|
virtual |
Destructor
ClpCholeskyDense::ClpCholeskyDense | ( | const ClpCholeskyDense & | ) |
Copy.
|
virtual |
Orders rows and saves pointer to matrix.and model.
Returns non-zero if not enough memory
Reimplemented from ClpCholeskyBase.
|
virtual |
Does Symbolic factorization given permutation.
This is called immediately after order. If user provides this then user must provide factorize and solve. Otherwise the default factorization is used returns non-zero if not enough memory
Reimplemented from ClpCholeskyBase.
|
virtual |
Factorize - filling in rowsDropped and returning number dropped.
If return code negative then out of memory
Reimplemented from ClpCholeskyBase.
|
virtual |
Uses factorization to solve.
Reimplemented from ClpCholeskyBase.
int ClpCholeskyDense::reserveSpace | ( | const ClpCholeskyBase * | factor, |
int | numberRows | ||
) |
Reserves space.
If factor not NULL then just uses passed space Returns non-zero if not enough memory
int ClpCholeskyDense::space | ( | int | numberRows | ) | const |
Returns space needed.
void ClpCholeskyDense::factorizePart2 | ( | int * | rowsDropped | ) |
part 2 of Factorize - filling in rowsDropped
void ClpCholeskyDense::factorizePart3 | ( | int * | rowsDropped | ) |
part 2 of Factorize - filling in rowsDropped - blocked
void ClpCholeskyDense::solveF1 | ( | longDouble * | a, |
int | n, | ||
CoinWorkDouble * | region | ||
) |
Forward part of solve.
void ClpCholeskyDense::solveF2 | ( | longDouble * | a, |
int | n, | ||
CoinWorkDouble * | region, | ||
CoinWorkDouble * | region2 | ||
) |
void ClpCholeskyDense::solveB1 | ( | longDouble * | a, |
int | n, | ||
CoinWorkDouble * | region | ||
) |
Backward part of solve.
void ClpCholeskyDense::solveB2 | ( | longDouble * | a, |
int | n, | ||
CoinWorkDouble * | region, | ||
CoinWorkDouble * | region2 | ||
) |
int ClpCholeskyDense::bNumber | ( | const longDouble * | array, |
int & | , | ||
int & | |||
) |
|
inline |
A.
Definition at line 54 of file ClpCholeskyDense.hpp.
|
inline |
Diagonal.
Definition at line 59 of file ClpCholeskyDense.hpp.
ClpCholeskyDense & ClpCholeskyDense::operator= | ( | const ClpCholeskyDense & | ) |
Assignment.
|
virtual |
Clone.
Reimplemented from ClpCholeskyBase.
|
private |
Just borrowing space.
Definition at line 83 of file ClpCholeskyDense.hpp.