make_fixed_action Class Reference

Fix a variable at a specified bound. More...

#include <CoinPresolveFixed.hpp>

Inheritance diagram for make_fixed_action:
CoinPresolveAction

List of all members.

Classes

struct  action
 Structure to preserve the bound overwritten when fixing a variable.

Public Member Functions

const char * name () const
 Returns string "make_fixed_action".
void postsolve (CoinPostsolveMatrix *prob) const
 Postsolve (unfix variables).
virtual ~make_fixed_action ()
 Destructor.

Static Public Member Functions

static const CoinPresolveActionpresolve (CoinPresolveMatrix *prob, int *fcols, int nfcols, bool fix_to_lower, const CoinPresolveAction *next)
 Perform actions to fix variables and return postsolve object.

Related Functions

(Note that these are not member functions.)



const CoinPresolveActionmake_fixed (CoinPresolveMatrix *prob, const CoinPresolveAction *next)
 Scan variables and fix any with equal bounds.
void transferCosts (CoinPresolveMatrix *prob)
 Transfer costs from singleton variables.

Detailed Description

Fix a variable at a specified bound.

Implements the action of fixing a variable by forcing both bounds to the same value and forcing the value of the variable to match.

If the bounds are already equal, and the value of the variable is already correct, consider remove_fixed_action.

Definition at line 95 of file CoinPresolveFixed.hpp.


Constructor & Destructor Documentation

virtual make_fixed_action::~make_fixed_action (  )  [inline, virtual]

Destructor.

Definition at line 153 of file CoinPresolveFixed.hpp.


Member Function Documentation

const char* make_fixed_action::name (  )  const [virtual]

Returns string "make_fixed_action".

Implements CoinPresolveAction.

static const CoinPresolveAction* make_fixed_action::presolve ( CoinPresolveMatrix prob,
int *  fcols,
int  nfcols,
bool  fix_to_lower,
const CoinPresolveAction next 
) [static]

Perform actions to fix variables and return postsolve object.

For each specified variable (nfcols, fcols), fix the variable to the specified bound (fix_to_lower) by setting the variable's bounds to be equal in prob. Create a postsolve object, link it at the head of the list of postsolve objects (next), and return the object.

void make_fixed_action::postsolve ( CoinPostsolveMatrix prob  )  const [virtual]

Postsolve (unfix variables).

Back out the variables fixed by the presolve side of this object.

Implements CoinPresolveAction.


Friends And Related Function Documentation

const CoinPresolveAction * make_fixed ( CoinPresolveMatrix prob,
const CoinPresolveAction next 
) [related]

Scan variables and fix any with equal bounds.

A front end to collect a list of columns with equal bounds and hand them to make_fixed_action::presolve() for processing.

void transferCosts ( CoinPresolveMatrix prob  )  [related]

Transfer costs from singleton variables.

Transfers costs from singleton variables in equalities onto the other variables. Will also transfer costs from one integer variable to other integer variables with zero cost if there's a net gain in integer variables with non-zero cost.

The relation to make_fixed_action is tenuous, but this transform should be attempted before the initial round of variable fixing.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 28 Aug 2016 for CoinUtils by  doxygen 1.6.1