CoinUtils  2.9.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CoinPresolveUseless.hpp
Go to the documentation of this file.
1 /* $Id: CoinPresolveUseless.hpp 1566 2012-11-29 19:33:56Z lou $ */
2 // Copyright (C) 2002, International Business Machines
3 // Corporation and others. All Rights Reserved.
4 // This code is licensed under the terms of the Eclipse Public License (EPL).
5 
6 #ifndef CoinPresolveUseless_H
7 #define CoinPresolveUseless_H
8 #define USELESS 20
9 
11  struct action {
12  double rlo;
13  double rup;
14  const int *rowcols;
15  const double *rowels;
16  int row;
17  int ninrow;
18  };
19 
20  const int nactions_;
21  const action *const actions_;
22 
23  useless_constraint_action(int nactions,
24  const action *actions,
25  const CoinPresolveAction *next);
26 
27  public:
28  const char *name() const;
29 
30  // These rows are asserted to be useless,
31  // that is, given a solution the row activity
32  // must be in range.
33  static const CoinPresolveAction *presolve(CoinPresolveMatrix * prob,
34  const int *useless_rows,
35  int nuseless_rows,
36  const CoinPresolveAction *next);
37 
38  void postsolve(CoinPostsolveMatrix *prob) const;
39 
41 
42 };
43 
59  const CoinPresolveAction *next) ;
60 
61 
62 
63 #endif