CoinUtils  2.11.3
CoinPresolveDual.hpp
Go to the documentation of this file.
1 /* $Id: CoinPresolveDual.hpp 2083 2019-01-06 19:38:09Z unxusr $ */
2 
3 // Copyright (C) 2002, International Business Machines
4 // Corporation and others. All Rights Reserved.
5 // This code is licensed under the terms of the Eclipse Public License (EPL).
6 
7 #ifndef CoinPresolveDual_H
8 #define CoinPresolveDual_H
9 
36 
37 public:
40 
42  inline const char *name() const { return ("remove_dual_action"); }
43 
50  const CoinPresolveAction *next);
51 
57  void postsolve(CoinPostsolveMatrix *prob) const;
58 
59 private:
61  struct action {
62  double rlo_;
63  double rup_;
64  int ndx_;
65  };
66 
68  remove_dual_action(int nactions, const action *actions,
69  const CoinPresolveAction *next)
71  , nactions_(nactions)
72  , actions_(actions)
73  {
74  }
75 
77  const int nactions_;
79  const action *actions_;
80 };
81 #endif
82 
83 /* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
84 */
Abstract base class of all presolve routines.
void postsolve(CoinPostsolveMatrix *prob) const
Postsolve.
~remove_dual_action()
Destructor.
const CoinPresolveAction * next
The next presolve transformation.
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
Attempt to fix variables by bounding reduced costs.
const char * name() const
Name.
Attempt to fix variables by bounding reduced costs.