Cgl  0.60.3
 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 | List of all members
forcing_constraint_action Class Reference

Detect and process forcing constraints and useless constraints. More...

#include <CoinPresolveForcing.hpp>

+ Inheritance diagram for forcing_constraint_action:
+ Collaboration diagram for forcing_constraint_action:


struct  action

Public Member Functions

 forcing_constraint_action (int nactions, const action *actions, const CoinPresolveAction *next)
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 ~forcing_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 CoinPresolveActionpresolve (CoinPresolveMatrix *prob, 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

 forcing_constraint_action ()
 forcing_constraint_action (const forcing_constraint_action &rhs)
forcing_constraint_actionoperator= (const forcing_constraint_action &rhs)

Private Attributes

const int nactions_
const action *const actions_

Additional Inherited Members

- Public Attributes inherited from CoinPresolveAction
const CoinPresolveActionnext
 The next presolve transformation. More...

Detailed Description

Detect and process forcing constraints and useless constraints.

A constraint is useless if the bounds on the variables prevent the constraint from ever being violated.

A constraint is a forcing constraint if the bounds on the constraint force the value of an involved variable to one of its bounds. A constraint can force more than one variable.

Definition at line 27 of file CoinPresolveForcing.hpp.

Constructor & Destructor Documentation

forcing_constraint_action::forcing_constraint_action ( )
forcing_constraint_action::forcing_constraint_action ( const forcing_constraint_action rhs)
forcing_constraint_action::forcing_constraint_action ( int  nactions,
const action actions,
const CoinPresolveAction next 

Definition at line 47 of file CoinPresolveForcing.hpp.

virtual forcing_constraint_action::~forcing_constraint_action ( )

Member Function Documentation

forcing_constraint_action& forcing_constraint_action::operator= ( const forcing_constraint_action rhs)
const char* forcing_constraint_action::name ( ) const

A name for debug printing.

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

Implements CoinPresolveAction.

static const CoinPresolveAction* forcing_constraint_action::presolve ( CoinPresolveMatrix prob,
const CoinPresolveAction next 
void forcing_constraint_action::postsolve ( CoinPostsolveMatrix prob) const

Apply the postsolve transformation for this particular presolve action.

Implements CoinPresolveAction.

Member Data Documentation

const int forcing_constraint_action::nactions_

Definition at line 42 of file CoinPresolveForcing.hpp.

const action* const forcing_constraint_action::actions_

Definition at line 44 of file CoinPresolveForcing.hpp.

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