Dip
0.92.4
|
#include "CoinPragma.hpp"
#include "CoinPackedMatrix.hpp"
#include "CoinMessage.hpp"
#include "CoinTime.hpp"
#include <cmath>
#include <cassert>
#include <cfloat>
#include <cstdlib>
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.
Referenced by drop_empty_cols_action::~drop_empty_cols_action(), drop_empty_rows_action::~drop_empty_rows_action(), drop_zero_coefficients_action::~drop_zero_coefficients_action(), make_fixed_action::~make_fixed_action(), slack_doubleton_action::~slack_doubleton_action(), and slack_singleton_action::~slack_singleton_action().
#define PRESOLVEASSERT | ( | x | ) |
Definition at line 72 of file CoinPresolveMatrix.hpp.
#define PRESOLVE_STMT | ( | s | ) |
Definition at line 75 of file CoinPresolveMatrix.hpp.
Referenced by CoinPresolveMatrix::change_bias().
#define PRESOLVE_DETAIL_PRINT | ( | s | ) |
Definition at line 87 of file CoinPresolveMatrix.hpp.
#define PRESOLVE_INF COIN_DBL_MAX |
The usual finite infinity.
Definition at line 106 of file CoinPresolveMatrix.hpp.
Referenced by CoinPrePostsolveMatrix::setColumnStatus().
#define PRESOLVE_SMALL_INF 1.0e20 |
And a small infinity.
Definition at line 108 of file CoinPresolveMatrix.hpp.
#define PRESOLVEFINITE | ( | n | ) | (-PRESOLVE_INF < (n) && (n) < PRESOLVE_INF) |
Check for infinity using finite infinity.
Definition at line 110 of file CoinPresolveMatrix.hpp.
#define NO_LINK -66666666 |
Definition at line 814 of file CoinPresolveMatrix.hpp.
Referenced by presolvehlink::PRESOLVE_MOVE_LINK(), and presolvehlink::PRESOLVE_REMOVE_LINK().
|
inline |
Definition at line 79 of file CoinPresolveMatrix.hpp.
Referenced by CoinPrePostsolveMatrix::presolve_find_minor().
const double ZTOLDP = 1e-12 |
Zero tolerance.
OSL had a fixed zero tolerance; we still use that here.
Definition at line 98 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 103 of file CoinPresolveMatrix.hpp.