source: branches/devel-1/include/PresolveSingleton.hpp @ 29

Last change on this file since 29 was 29, checked in by forrest, 18 years ago

Presolve (no changes to Makefile)

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
File size: 1006 bytes
Line 
1// Copyright (C) 2002, International Business Machines
2// Corporation and others.  All Rights Reserved.
3
4#ifndef PresolveSingleton_H
5#define PresolveSingleton_H
6#define SLACK_DOUBLETON 2
7
8const int MAX_SLACK_DOUBLETONS  = 1000;
9
10class slack_doubleton_action : public PresolveAction {
11  struct action {
12    double clo;
13    double cup;
14
15    double rlo;
16    double rup;
17
18    double coeff;
19
20    int col;
21    int row;
22  };
23
24  const int nactions_;
25  const action *const actions_;
26
27  slack_doubleton_action(int nactions,
28                         const action *actions,
29                         const PresolveAction *next) :
30    PresolveAction(next),
31    nactions_(nactions),
32    actions_(actions)
33{}
34
35 public:
36  const char *name() const { return ("slack_doubleton_action"); }
37
38  // notFinished is set if action array filled up
39  static const PresolveAction *presolve(PresolveMatrix *,
40                                           const PresolveAction *next,
41                                        bool &notFinished);
42
43  void postsolve(PostsolveMatrix *prob) const;
44
45
46  ~slack_doubleton_action() { delete[]actions_; }
47};
48#endif
Note: See TracBrowser for help on using the repository browser.