|
CoinUtils
2.10.14
|
Declarations for CoinPresolveMatrix and CoinPostsolveMatrix and their common base class CoinPrePostsolveMatrix. More...
#include "CoinPragma.hpp"#include "CoinPackedMatrix.hpp"#include "CoinMessage.hpp"#include "CoinTime.hpp"#include <cmath>#include <cassert>#include <cfloat>#include <cstdlib>
Include dependency graph for CoinPresolveMatrix.hpp:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| class | CoinPresolveAction |
| Abstract base class of all presolve routines. More... | |
| class | CoinPrePostsolveMatrix |
| Collects all the information about the problem that is needed in both presolve and postsolve. More... | |
| class | presolvehlink |
| Links to aid in packed matrix modification. More... | |
| class | CoinPresolveMatrix |
| Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolve. More... | |
| class | CoinPostsolveMatrix |
| Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsolve. More... | |
Macros | |
| #define | deleteAction(array, type) delete [] array |
| #define | PRESOLVEASSERT(x) {} |
| #define | PRESOLVE_STMT(s) {} |
| #define | PRESOLVE_DETAIL_PRINT(s) {} |
| #define | PRESOLVE_INF COIN_DBL_MAX |
| The usual finite infinity. More... | |
| #define | PRESOLVE_SMALL_INF 1.0e20 |
| And a small infinity. More... | |
| #define | PRESOLVEFINITE(n) (-PRESOLVE_INF < (n) && (n) < PRESOLVE_INF) |
| Check for infinity using finite infinity. More... | |
| #define | NO_LINK -66666666 |
Functions | |
| void | DIE (const char *) |
| double * | presolve_dupmajor (const double *elems, const int *indices, int length, CoinBigIndex offset, int tgt=-1) |
Duplicate a major-dimension vector; optionally omit the entry with minor index tgt. More... | |
| void | coin_init_random_vec (double *work, int n) |
| Initialize a vector with random numbers. More... | |
Variables | |
| const double | ZTOLDP = 1e-12 |
| Zero tolerance. More... | |
| const double | ZTOLDP2 = 1e-10 |
| Alternate zero tolerance. More... | |
Declarations for CoinPresolveMatrix and CoinPostsolveMatrix and their common base class CoinPrePostsolveMatrix.
Also declarations for CoinPresolveAction and a number of non-member utility functions.
Definition in file CoinPresolveMatrix.hpp.
| #define deleteAction | ( | array, | |
| type | |||
| ) | delete [] array |
Definition at line 38 of file CoinPresolveMatrix.hpp.
| #define PRESOLVEASSERT | ( | x | ) | {} |
Definition at line 69 of file CoinPresolveMatrix.hpp.
| #define PRESOLVE_STMT | ( | s | ) | {} |
Definition at line 70 of file CoinPresolveMatrix.hpp.
| #define PRESOLVE_DETAIL_PRINT | ( | s | ) | {} |
Definition at line 80 of file CoinPresolveMatrix.hpp.
| #define PRESOLVE_INF COIN_DBL_MAX |
The usual finite infinity.
Definition at line 97 of file CoinPresolveMatrix.hpp.
| #define PRESOLVE_SMALL_INF 1.0e20 |
And a small infinity.
Definition at line 99 of file CoinPresolveMatrix.hpp.
| #define PRESOLVEFINITE | ( | n | ) | (-PRESOLVE_INF < (n) && (n) < PRESOLVE_INF) |
Check for infinity using finite infinity.
Definition at line 101 of file CoinPresolveMatrix.hpp.
| #define NO_LINK -66666666 |
Definition at line 743 of file CoinPresolveMatrix.hpp.
|
inline |
Definition at line 72 of file CoinPresolveMatrix.hpp.
| double* presolve_dupmajor | ( | const double * | elems, |
| const int * | indices, | ||
| int | length, | ||
| CoinBigIndex | offset, | ||
| int | tgt = -1 |
||
| ) |
Duplicate a major-dimension vector; optionally omit the entry with minor index tgt.
Designed to copy a major-dimension vector from the paired coefficient (elems) and minor index (indices) arrays used in the standard packed matrix representation. Copies length entries starting at offset.
If tgt is specified, the entry with minor index == tgt is omitted from the copy.
| void coin_init_random_vec | ( | double * | work, |
| int | n | ||
| ) |
Initialize a vector with random numbers.
| const double ZTOLDP = 1e-12 |
Zero tolerance.
OSL had a fixed zero tolerance; we still use that here.
Definition at line 89 of file CoinPresolveMatrix.hpp.
| const double ZTOLDP2 = 1e-10 |
Alternate zero tolerance.
Use a different one if we are doing doubletons, etc.
Definition at line 94 of file CoinPresolveMatrix.hpp.