#include <CoinPresolveEmpty.hpp>
Inheritance diagram for drop_empty_cols_action:
Public Member Functions | |
const char * | name () const |
A name for debug printing. | |
void | postsolve (CoinPostsolveMatrix *prob) const |
Apply the postsolve transformation for this particular presolve action. | |
~drop_empty_cols_action () | |
Static Public Member Functions | |
static const CoinPresolveAction * | presolve (CoinPresolveMatrix *, int *ecols, int necols, const CoinPresolveAction *) |
static const CoinPresolveAction * | presolve (CoinPresolveMatrix *prob, const CoinPresolveAction *next) |
Private Member Functions | |
drop_empty_cols_action (int nactions, const action *const actions, const CoinPresolveAction *next) | |
Private Attributes | |
const int | nactions_ |
const action *const | actions_ |
Classes | |
struct | action |
Physical removal of rows and columns should be the last activities performed during presolve. Do them exactly once. The row-major matrix is not maintained by this transform.
To physically drop the columns, CoinPrePostsolveMatrix::mcstrt_ and CoinPrePostsolveMatrix::hincol_ are compressed, along with column bounds, objective, and (if present) the column portions of the solution. This renumbers the columns. drop_empty_cols_action::presolve will reconstruct CoinPresolveMatrix::clink_.
Definition at line 32 of file CoinPresolveEmpty.hpp.
drop_empty_cols_action::drop_empty_cols_action | ( | int | nactions, | |
const action *const | actions, | |||
const CoinPresolveAction * | next | |||
) | [inline, private] |
Definition at line 45 of file CoinPresolveEmpty.hpp.
drop_empty_cols_action::~drop_empty_cols_action | ( | ) | [inline] |
const char* drop_empty_cols_action::name | ( | ) | const [inline, virtual] |
A name for debug printing.
It is expected that the name is not stored in the transform itself.
Implements CoinPresolveAction.
Definition at line 54 of file CoinPresolveEmpty.hpp.
static const CoinPresolveAction* drop_empty_cols_action::presolve | ( | CoinPresolveMatrix * | , | |
int * | ecols, | |||
int | necols, | |||
const CoinPresolveAction * | ||||
) | [static] |
static const CoinPresolveAction* drop_empty_cols_action::presolve | ( | CoinPresolveMatrix * | prob, | |
const CoinPresolveAction * | next | |||
) | [static] |
void drop_empty_cols_action::postsolve | ( | CoinPostsolveMatrix * | prob | ) | const [virtual] |
Apply the postsolve transformation for this particular presolve action.
Implements CoinPresolveAction.
const int drop_empty_cols_action::nactions_ [private] |
Definition at line 34 of file CoinPresolveEmpty.hpp.
const action* const drop_empty_cols_action::actions_ [private] |