Clp
1.17.8
|
Ufl class for Clp Cholesky factorization. More...
#include <ClpCholeskyUfl.hpp>
Public Member Functions | |
Virtual methods that the derived classes provides | |
| |
virtual int | order (ClpInterior *model) |
Orders rows and saves pointer to matrix.and model. More... | |
virtual int | symbolic () |
Does Symbolic factorization given permutation using CHOLMOD (if available). More... | |
virtual int | factorize (const double *diagonal, int *rowsDropped) |
Factorize - filling in rowsDropped and returning number dropped using CHOLMOD (if available). More... | |
virtual void | solve (double *region) |
Uses factorization to solve. More... | |
Public Member Functions inherited from ClpCholeskyBase | |
int | status () const |
status. Returns status More... | |
int | numberRowsDropped () const |
numberRowsDropped. Number of rows gone More... | |
void | resetRowsDropped () |
reset numberRowsDropped and rowsDropped. More... | |
char * | rowsDropped () const |
rowsDropped - which rows are gone More... | |
double | choleskyCondition () const |
choleskyCondition. More... | |
double | goDense () const |
goDense i.e. use dense factoriaztion if > this (default 0.7). More... | |
void | setGoDense (double value) |
goDense i.e. use dense factoriaztion if > this (default 0.7). More... | |
int | rank () const |
rank. Returns rank More... | |
int | numberRows () const |
Return number of rows. More... | |
int | size () const |
Return size. More... | |
longDouble * | sparseFactor () const |
Return sparseFactor. More... | |
longDouble * | diagonal () const |
Return diagonal. More... | |
longDouble * | workDouble () const |
Return workDouble. More... | |
bool | kkt () const |
If KKT on. More... | |
void | setKKT (bool yesNo) |
Set KKT. More... | |
void | setIntegerParameter (int i, int value) |
Set integer parameter. More... | |
int | getIntegerParameter (int i) |
get integer parameter More... | |
void | setDoubleParameter (int i, double value) |
Set double parameter. More... | |
double | getDoubleParameter (int i) |
get double parameter More... | |
ClpCholeskyBase (int denseThreshold=-1) | |
Constructor which has dense columns activated. More... | |
virtual | ~ClpCholeskyBase () |
Destructor (has to be public) More... | |
ClpCholeskyBase (const ClpCholeskyBase &) | |
Copy. More... | |
ClpCholeskyBase & | operator= (const ClpCholeskyBase &) |
Assignment. More... | |
virtual int | factorize (const CoinWorkDouble *diagonal, int *rowsDropped) |
Factorize - filling in rowsDropped and returning number dropped. More... | |
virtual void | solve (CoinWorkDouble *region) |
Uses factorization to solve. More... | |
virtual void | solveKKT (CoinWorkDouble *region1, CoinWorkDouble *region2, const CoinWorkDouble *diagonal, CoinWorkDouble diagonalScaleFactor) |
Uses factorization to solve. More... | |
int | type () const |
Returns type. More... | |
Constructors, destructor | |
cholmod_factor * | L_ |
cholmod_common * | c_ |
ClpCholeskyUfl (int denseThreshold=-1) | |
Constructor which has dense columns activated. More... | |
virtual | ~ClpCholeskyUfl () |
Destructor More... | |
virtual ClpCholeskyBase * | clone () const |
Clone. More... | |
ClpCholeskyUfl (const ClpCholeskyUfl &) | |
ClpCholeskyUfl & | operator= (const ClpCholeskyUfl &) |
Additional Inherited Members | |
Protected Member Functions inherited from ClpCholeskyBase | |
int | symbolic1 (const int *Astart, const int *Arow) |
Symbolic1 - works out size without clever stuff. More... | |
void | symbolic2 (const int *Astart, const int *Arow) |
Symbolic2 - Fills in indices Uses lower triangular so can do cliques etc. More... | |
void | factorizePart2 (int *rowsDropped) |
Factorize - filling in rowsDropped and returning number dropped in integerParam. More... | |
void | solve (CoinWorkDouble *region, int type) |
solve - 1 just first half, 2 just second half - 3 both. More... | |
int | preOrder (bool lowerTriangular, bool includeDiagonal, bool doKKT) |
Forms ADAT - returns nonzero if not enough memory. More... | |
void | updateDense (longDouble *d, int *first) |
Updates dense part (broken out for profiling) More... | |
void | setType (int type) |
Sets type. More... | |
void | setModel (ClpInterior *model) |
model. More... | |
Protected Attributes inherited from ClpCholeskyBase | |
int | type_ |
type (may be useful) if > 20 do KKT More... | |
bool | doKKT_ |
Doing full KKT (only used if default symbolic and factorization) More... | |
double | goDense_ |
Go dense at this fraction. More... | |
double | choleskyCondition_ |
choleskyCondition. More... | |
ClpInterior * | model_ |
model. More... | |
int | numberTrials_ |
numberTrials. Number of trials before rejection More... | |
int | numberRows_ |
numberRows. Number of Rows in factorization More... | |
int | status_ |
status. Status of factorization More... | |
char * | rowsDropped_ |
rowsDropped More... | |
int * | permuteInverse_ |
permute inverse. More... | |
int * | permute_ |
main permute. More... | |
int | numberRowsDropped_ |
numberRowsDropped. Number of rows gone More... | |
longDouble * | sparseFactor_ |
sparseFactor. More... | |
int * | choleskyStart_ |
choleskyStart - element starts More... | |
int * | choleskyRow_ |
choleskyRow (can be shorter than sparsefactor) More... | |
int * | indexStart_ |
Index starts. More... | |
longDouble * | diagonal_ |
Diagonal. More... | |
longDouble * | workDouble_ |
double work array More... | |
int * | link_ |
link array More... | |
int * | workInteger_ |
int * | clique_ |
int | sizeFactor_ |
sizeFactor. More... | |
int | sizeIndex_ |
Size of index array. More... | |
int | firstDense_ |
First dense row. More... | |
int | integerParameters_ [64] |
integerParameters More... | |
double | doubleParameters_ [64] |
doubleParameters; More... | |
ClpMatrixBase * | rowCopy_ |
Row copy of matrix. More... | |
char * | whichDense_ |
Dense indicators. More... | |
longDouble * | denseColumn_ |
Dense columns (updated) More... | |
ClpCholeskyDense * | dense_ |
Dense cholesky. More... | |
int | denseThreshold_ |
Dense threshold (for taking out of Cholesky) More... | |
Ufl class for Clp Cholesky factorization.
If you wish to use AMD code from University of Florida see
http://www.cise.ufl.edu/research/sparse/amd
for terms of use
If you wish to use CHOLMOD code from University of Florida see
http://www.cise.ufl.edu/research/sparse/cholmod
for terms of use
Definition at line 32 of file ClpCholeskyUfl.hpp.
ClpCholeskyUfl::ClpCholeskyUfl | ( | int | denseThreshold = -1 | ) |
Constructor which has dense columns activated.
Default is off.
|
virtual |
Destructor
|
private |
|
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 using CHOLMOD (if available).
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 using CHOLMOD (if available).
If return code negative then out of memory
|
virtual |
Uses factorization to solve.
Uses CHOLMOD (if available).
|
virtual |
Clone.
Reimplemented from ClpCholeskyBase.
|
private |
|
private |
Definition at line 64 of file ClpCholeskyUfl.hpp.
|
private |
Definition at line 65 of file ClpCholeskyUfl.hpp.