Loading...
Searching...
No Matches
ClpCholeskyDense Class Reference

`#include <ClpCholeskyDense.hpp>`

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

## Public Member Functions

Virtual methods that the derived classes provides
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
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.
Public Member Functions inherited from ClpCholeskyBase
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

Protected Member Functions inherited from ClpCholeskyBase
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.
Protected Attributes inherited from ClpCholeskyBase
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).

## Detailed Description

Definition at line 14 of file ClpCholeskyDense.hpp.

## Constructor & Destructor Documentation

## ClpCholeskyDense() [1/2]

ClpCholeskyDense::ClpCholeskyDense | ( |  | ) |

Default constructor.

## ~ClpCholeskyDense()

virtual ClpCholeskyDense::~ClpCholeskyDense | ( |  | ) |

virtual

Destructor.

## ClpCholeskyDense() [2/2]

ClpCholeskyDense::ClpCholeskyDense | ( | const ClpCholeskyDense & |  | ) |

Copy.

## Member Function Documentation

## order()

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.

## symbolic()

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.

## factorize()

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.

## solve()

virtual void ClpCholeskyDense::solve | ( | CoinWorkDouble * | region | ) |

virtual

Uses factorization to solve.

Reimplemented from ClpCholeskyBase.

## reserveSpace()

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

## space()

int ClpCholeskyDense::space | ( | int | numberRows | ) | const

Returns space needed.

## factorizePart2()

void ClpCholeskyDense::factorizePart2 | ( | int * | rowsDropped | ) |

part 2 of Factorize - filling in rowsDropped

## factorizePart3()

void ClpCholeskyDense::factorizePart3 | ( | int * | rowsDropped | ) |

part 2 of Factorize - filling in rowsDropped - blocked

## solveF1()

void ClpCholeskyDense::solveF1 | ( | longDouble * | a,
|  | int | n,
|  | CoinWorkDouble * | region )

Forward part of solve.

## solveF2()

void ClpCholeskyDense::solveF2 | ( | longDouble * | a,
|  | int | n,
|  | CoinWorkDouble * | region,
|  | CoinWorkDouble * | region2 )

## solveB1()

void ClpCholeskyDense::solveB1 | ( | longDouble * | a,
|  | int | n,
|  | CoinWorkDouble * | region )

Backward part of solve.

## solveB2()

void ClpCholeskyDense::solveB2 | ( | longDouble * | a,
|  | int | n,
|  | CoinWorkDouble * | region,
|  | CoinWorkDouble * | region2 )

## bNumber()

int ClpCholeskyDense::bNumber | ( | const longDouble * | array,
|  | int & | ,
|  | int & | )

## aMatrix()

longDouble * ClpCholeskyDense::aMatrix | ( |  | ) | const

inline

A.

Definition at line 54 of file ClpCholeskyDense.hpp.

## diagonal()

longDouble * ClpCholeskyDense::diagonal | ( |  | ) | const

inline

Diagonal.

Definition at line 59 of file ClpCholeskyDense.hpp.

## operator=()

ClpCholeskyDense & ClpCholeskyDense::operator= | ( | const ClpCholeskyDense & |  | ) |

Assignment.

## clone()

virtual ClpCholeskyBase * ClpCholeskyDense::clone | ( |  | ) | const

virtual

Clone.

Reimplemented from ClpCholeskyBase.

## Member Data Documentation

## borrowSpace_

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:

- Clp/src/ClpCholeskyDense.hpp