Clp 1.17.6

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Related Functions | List of all members
make_fixed_action Class Reference

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

`#include <CoinPresolveFixed.hpp>`

Inheritance diagram for make_fixed_action:
[legend]
Collaboration diagram for make_fixed_action:
[legend]

## Classes
struct | action
| Structure to preserve the bound overwritten when fixing a variable. More...

## Public Member Functions
const char * | name () const
| Returns string "make_fixed_action". More...
void | postsolve (CoinPostsolveMatrix *prob) const
| Postsolve (unfix variables) More...
virtual | ~make_fixed_action ()
| Destructor. More...
Public Member Functions inherited from CoinPresolveAction
| CoinPresolveAction (const CoinPresolveAction *next)
| Construct a postsolve object and add it to the transformation list. More...
void | setNext (const CoinPresolveAction *nextAction)
| modify next (when building rather than passing) More...
virtual | ~CoinPresolveAction ()
| Virtual destructor. More...

## Static Public Member Functions
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. More...
Static Public Member Functions inherited from CoinPresolveAction
static void | throwCoinError (const char *error, const char *ps_routine)
| Stub routine to throw exceptions. More...

## Private Member Functions
| make_fixed_action (int nactions, const action *actions, bool fix_to_lower, const remove_fixed_action *faction, const CoinPresolveAction *next)
| Constructor. More...

## Private Attributes
int | nactions_
| Number of preserved bounds. More...
const action * | actions_
| Vector of preserved bounds, one for each variable fixed in this object. More...
const bool | fix_to_lower_
| True to fix at lower bound, false to fix at upper bound. More...
const remove_fixed_action * | faction_
| The postsolve object with the information required to repopulate the fixed columns. More...

## Related Functions
(Note that these are not member functions.)
const CoinPresolveAction * | make_fixed (CoinPresolveMatrix *prob, const CoinPresolveAction *next)
| Scan variables and fix any with equal bounds. More...
void | transferCosts (CoinPresolveMatrix *prob)
| Transfer costs from singleton variables. More...

## Additional Inherited Members
Public Attributes inherited from CoinPresolveAction
const CoinPresolveAction * | next
| The next presolve transformation. More...

## 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 93 of file CoinPresolveFixed.hpp.

## Constructor & Destructor Documentation

make_fixed_action::make_fixed_action | ( | int | nactions,
|  | const action * | actions,
|  | bool | fix_to_lower,
|  | const remove_fixed_action * | faction,
|  | const CoinPresolveAction * | next
| ) |  |
| inline private

Constructor.

Definition at line 118 of file CoinPresolveFixed.hpp.

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.

## Member Data Documentation

int make_fixed_action::nactions_
| private

Number of preserved bounds.

Definition at line 102 of file CoinPresolveFixed.hpp.

const action* make_fixed_action::actions_
| private

Vector of preserved bounds, one for each variable fixed in this object.

Definition at line 104 of file CoinPresolveFixed.hpp.

const bool make_fixed_action::fix_to_lower_
| private

True to fix at lower bound, false to fix at upper bound.

Note that this applies to all variables fixed in this object.

Definition at line 110 of file CoinPresolveFixed.hpp.

const remove_fixed_action* make_fixed_action::faction_
| private

The postsolve object with the information required to repopulate the fixed columns.

Definition at line 115 of file CoinPresolveFixed.hpp.

The documentation for this class was generated from the following file:

- /tmp/Clp-1.17.6/CoinUtils/src/CoinPresolveFixed.hpp