6 #ifndef CoinPresolveFixed_H
7 #define CoinPresolveFixed_H
8 #define FIXED_VARIABLE 1
54 const char *
name()
const;
106 const action *actions_;
112 const bool fix_to_lower_;
124 nactions_(nactions), actions_(actions),
125 fix_to_lower_(fix_to_lower),
131 const char *
name()
const;
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
const CoinPresolveAction * remove_fixed(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
Scan the problem for fixed columns and remove them.
Excise fixed variables from the model.
action * actions_
Vector specifying variable(s) affected by this object.
Abstract base class of all presolve routines.
int start
start of coefficients in colels_ and colrows_
#define deleteAction(array, type)
virtual ~remove_fixed_action()
Destructor.
const char * name() const
Returns string "remove_fixed_action".
const CoinPresolveAction * make_fixed(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
Scan variables and fix any with equal bounds.
int * colrows_
Array of row indices for coefficients of excised columns.
void postsolve(CoinPostsolveMatrix *prob) const
Postsolve (unfix variables)
const char * name() const
Returns string "make_fixed_action".
CoinPresolveAction(const CoinPresolveAction *next)
Construct a postsolve object and add it to the transformation list.
int col
column index of variable
const CoinPresolveAction * next
The next presolve transformation.
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
void transferCosts(CoinPresolveMatrix *prob)
Transfer costs from singleton variables.
double * colels_
Array of coefficients of excised columns.
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
double sol
value of variable
virtual ~make_fixed_action()
Destructor.
int nactions_
Number of entries in actions_.
Fix a variable at a specified bound.
static const remove_fixed_action * presolve(CoinPresolveMatrix *prob, int *fcols, int nfcols, const CoinPresolveAction *next)
Excise the specified columns.
Structure to hold information necessary to reintroduce a column into the problem representation.
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, int *fcols, int nfcols, bool fix_to_lower, const CoinPresolveAction *next)
Perform actions to fix variables and return postsolve object.