Cbc  2.9.9
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
List of all members
ClpCholeskyDense Class Reference

#include <ClpCholeskyDense.hpp>

+ Inheritance diagram for ClpCholeskyDense:
+ Collaboration diagram for ClpCholeskyDense:

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. 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...
 
Non virtual methods for ClpCholeskyDense
int reserveSpace (const ClpCholeskyBase *factor, int numberRows)
 Reserves space. More...
 
CoinBigIndex space (int numberRows) const
 Returns space needed. More...
 
void factorizePart2 (int *rowsDropped)
 part 2 of Factorize - filling in rowsDropped More...
 
void factorizePart3 (int *rowsDropped)
 part 2 of Factorize - filling in rowsDropped - blocked More...
 
void solveF1 (longDouble *a, int n, CoinWorkDouble *region)
 Forward part of solve. More...
 
void solveF2 (longDouble *a, int n, CoinWorkDouble *region, CoinWorkDouble *region2)
 
void solveB1 (longDouble *a, int n, CoinWorkDouble *region)
 Backward part of solve. More...
 
void solveB2 (longDouble *a, int n, CoinWorkDouble *region, CoinWorkDouble *region2)
 
int bNumber (const longDouble *array, int &, int &)
 
longDoubleaMatrix () const
 A. More...
 
longDoublediagonal () const
 Diagonal. More...
 
Constructors, destructor
 ClpCholeskyDense ()
 Default constructor. More...
 
virtual ~ClpCholeskyDense ()
 Destructor. More...
 
 ClpCholeskyDense (const ClpCholeskyDense &)
 Copy. More...
 
ClpCholeskyDenseoperator= (const ClpCholeskyDense &)
 Assignment. More...
 
virtual ClpCholeskyBaseclone () const
 Clone. 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...
 
CoinBigIndex size () const
 Return size. More...
 
longDoublesparseFactor () const
 Return sparseFactor. More...
 
longDoublediagonal () const
 Return diagonal. More...
 
longDoubleworkDouble () 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...
 
ClpCholeskyBaseoperator= (const ClpCholeskyBase &)
 Assignment. More...
 
virtual void solveKKT (CoinWorkDouble *region1, CoinWorkDouble *region2, const CoinWorkDouble *diagonal, CoinWorkDouble diagonalScaleFactor)
 Uses factorization to solve. More...
 
int type () const
 Returns type. More...
 

Private Attributes

Data members
bool borrowSpace_
 Just borrowing space. More...
 

Additional Inherited Members

- Protected Member Functions inherited from ClpCholeskyBase
int symbolic1 (const CoinBigIndex *Astart, const int *Arow)
 Symbolic1 - works out size without clever stuff. More...
 
void symbolic2 (const CoinBigIndex *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...
 
ClpInteriormodel_
 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...
 
longDoublesparseFactor_
 sparseFactor. More...
 
CoinBigIndexcholeskyStart_
 choleskyStart - element starts More...
 
int * choleskyRow_
 choleskyRow (can be shorter than sparsefactor) More...
 
CoinBigIndexindexStart_
 Index starts. More...
 
longDoublediagonal_
 Diagonal. More...
 
longDoubleworkDouble_
 double work array More...
 
int * link_
 link array More...
 
CoinBigIndexworkInteger_
 
int * clique_
 
CoinBigIndex sizeFactor_
 sizeFactor. More...
 
CoinBigIndex sizeIndex_
 Size of index array. More...
 
int firstDense_
 First dense row. More...
 
int integerParameters_ [64]
 integerParameters More...
 
double doubleParameters_ [64]
 doubleParameters; More...
 
ClpMatrixBaserowCopy_
 Row copy of matrix. More...
 
char * whichDense_
 Dense indicators. More...
 
longDoubledenseColumn_
 Dense columns (updated) More...
 
ClpCholeskyDensedense_
 Dense cholesky. More...
 
int denseThreshold_
 Dense threshold (for taking out of Cholesky) More...
 

Detailed Description

Definition at line 14 of file ClpCholeskyDense.hpp.

Constructor & Destructor Documentation

ClpCholeskyDense::ClpCholeskyDense ( )

Default constructor.

virtual ClpCholeskyDense::~ClpCholeskyDense ( )
virtual

Destructor.

ClpCholeskyDense::ClpCholeskyDense ( const ClpCholeskyDense )

Copy.

Member Function Documentation

virtual int ClpCholeskyDense::order ( ClpInterior model)
virtual

Orders rows and saves pointer to matrix.and model.

Returns non-zero if not enough memory

Reimplemented from ClpCholeskyBase.

virtual int ClpCholeskyDense::symbolic ( )
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 int ClpCholeskyDense::factorize ( const CoinWorkDouble diagonal,
int *  rowsDropped 
)
virtual

Factorize - filling in rowsDropped and returning number dropped.

If return code negative then out of memory

Reimplemented from ClpCholeskyBase.

virtual void ClpCholeskyDense::solve ( CoinWorkDouble region)
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

CoinBigIndex 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 &   
)
longDouble* ClpCholeskyDense::aMatrix ( ) const
inline

A.

Definition at line 54 of file ClpCholeskyDense.hpp.

longDouble* ClpCholeskyDense::diagonal ( ) const
inline

Diagonal.

Definition at line 58 of file ClpCholeskyDense.hpp.

ClpCholeskyDense& ClpCholeskyDense::operator= ( const ClpCholeskyDense )

Assignment.

virtual ClpCholeskyBase* ClpCholeskyDense::clone ( ) const
virtual

Clone.

Reimplemented from ClpCholeskyBase.

Member Data Documentation

bool ClpCholeskyDense::borrowSpace_
private

Just borrowing space.

Definition at line 83 of file ClpCholeskyDense.hpp.


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