Osi 0.107.7

- 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
useless_constraint_action Class Reference

`#include <CoinPresolveUseless.hpp>`

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

## Classes
struct | action

## Public Member Functions
const char * | name () const
| A name for debug printing. More...
void | postsolve (CoinPostsolveMatrix *prob) const
| Apply the postsolve transformation for this particular presolve action. More...
virtual | ~useless_constraint_action ()
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, const int *useless_rows, int nuseless_rows, const CoinPresolveAction *next)
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
| useless_constraint_action (int nactions, const action *actions, const CoinPresolveAction *next)

## Private Attributes
const int | nactions_
const action *const | actions_

## Related Functions
(Note that these are not member functions.)
const CoinPresolveAction * | testRedundant (CoinPresolveMatrix *prob, const CoinPresolveAction *next)
| Scan constraints looking for useless constraints. More...

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

## Detailed Description

Definition at line 10 of file CoinPresolveUseless.hpp.

## Constructor & Destructor Documentation

useless_constraint_action::useless_constraint_action | ( | int | nactions,
|  | const action * | actions,
|  | const CoinPresolveAction * | next
| ) |  |
| private

virtual useless_constraint_action::~useless_constraint_action | ( |  | ) |
| virtual

## Member Function Documentation

const char* useless_constraint_action::name | ( |  | ) | const
| virtual

A name for debug printing.

It is expected that the name is not stored in the transform itself.

Implements CoinPresolveAction.

static const CoinPresolveAction* useless_constraint_action::presolve | ( | CoinPresolveMatrix * | prob,
|  | const int * | useless_rows,
|  | int | nuseless_rows,
|  | const CoinPresolveAction * | next
| ) |  |
| static

void useless_constraint_action::postsolve | ( | CoinPostsolveMatrix * | prob | ) | const
| virtual

Apply the postsolve transformation for this particular presolve action.

Implements CoinPresolveAction.

## Friends And Related Function Documentation

const CoinPresolveAction * testRedundant | ( | CoinPresolveMatrix * | prob,
|  | const CoinPresolveAction * | next
| ) |  |
| related

Scan constraints looking for useless constraints.

A front end to identify useless constraints and hand them to useless_constraint_action::presolve() for processing.

In a bit more detail, the routine implements a greedy algorithm that identifies a set of necessary constraints. A constraint is necessary if it implies a tighter bound on a variable than the original column bound. These tighter column bounds are then used to calculate row activity and identify constraints that are useless given the presence of the necessary constraints.

## Member Data Documentation

const int useless_constraint_action::nactions_
| private

Definition at line 20 of file CoinPresolveUseless.hpp.

const action* const useless_constraint_action::actions_
| private

Definition at line 21 of file CoinPresolveUseless.hpp.

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

- /tmp/Osi-0.107.7/CoinUtils/src/CoinPresolveUseless.hpp