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

- File List
- File Members

# /home/coin/SVN-release/Cgl-0.53.1/CoinUtils/src/CoinPresolveUseless.hpp

Go to the documentation of this file.

    00001 // Copyright (C) 2002, International Business Machines
    00002 // Corporation and others.  All Rights Reserved.
    00003
    00004 #ifndef CoinPresolveUseless_H
    00005 #define CoinPresolveUseless_H
    00006 #define USELESS         20
    00007
    00008 class useless_constraint_action : public CoinPresolveAction {
    00009   struct action {
    00010     double rlo;
    00011     double rup;
    00012     const int *rowcols;
    00013     const double *rowels;
    00014     int row;
    00015     int ninrow;
    00016   };
    00017
    00018   const int nactions_;
    00019   const action *const actions_;
    00020
    00021   useless_constraint_action(int nactions,
    00022                             const action *actions,
    00023                             const CoinPresolveAction *next);
    00024
    00025  public:
    00026   const char *name() const;
    00027
    00028   // These rows are asserted to be useless,
    00029   // that is, given a solution the row activity
    00030   // must be in range.
    00031   static const CoinPresolveAction *presolve(CoinPresolveMatrix * prob,
    00032                                          const int *useless_rows,
    00033                                          int nuseless_rows,
    00034                                          const CoinPresolveAction *next);
    00035
    00036   void postsolve(CoinPostsolveMatrix *prob) const;
    00037
    00038   ~useless_constraint_action();
    00039
    00040 };
    00041
    00042
    00043 #endif