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

Detect interesting 2 by 2 blocks. More...

#include <CoinPresolveDupcol.hpp>

+ Inheritance diagram for twoxtwo_action:
+ Collaboration diagram for twoxtwo_action:


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...
 ~twoxtwo_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

 twoxtwo_action ()
 twoxtwo_action (int nactions, const action *actions, const CoinPresolveAction *next)

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 interesting 2 by 2 blocks.

If a variable has two entries and for each row there are only two entries with same other variable then we can get rid of one constraint and modify costs.

This is a work in progress - I need more examples

Definition at line 214 of file CoinPresolveDupcol.hpp.

Constructor & Destructor Documentation

twoxtwo_action::twoxtwo_action ( )

Definition at line 230 of file CoinPresolveDupcol.hpp.

twoxtwo_action::twoxtwo_action ( int  nactions,
const action actions,
const CoinPresolveAction next 

Definition at line 236 of file CoinPresolveDupcol.hpp.

twoxtwo_action::~twoxtwo_action ( )

Definition at line 253 of file CoinPresolveDupcol.hpp.

Member Function Documentation

const char* twoxtwo_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* twoxtwo_action::presolve ( CoinPresolveMatrix prob,
const CoinPresolveAction next 
void twoxtwo_action::postsolve ( CoinPostsolveMatrix prob) const

Apply the postsolve transformation for this particular presolve action.

Implements CoinPresolveAction.

Member Data Documentation

const int twoxtwo_action::nactions_

Definition at line 227 of file CoinPresolveDupcol.hpp.

const action* const twoxtwo_action::actions_

Definition at line 228 of file CoinPresolveDupcol.hpp.

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