source: branches/devel-1/include/PresolveDupcol.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:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 1.6 KB
Line 
1// Copyright (C) 2002, International Business Machines
2// Corporation and others.  All Rights Reserved.
3
4#ifndef PresolveDupcol_H
5#define PresolveDupcol_H
6#define DUPCOL  10
7
8class dupcol_action : public PresolveAction {
9  struct action {
10    double thislo;
11    double thisup;
12    double lastlo;
13    double lastup;
14    int ithis;
15    int ilast;
16
17    int nincol;
18    int *colrows;
19    double *colels;
20  };
21
22  const int nactions_;
23  const action *const actions_;
24
25  dupcol_action():PresolveAction(NULL),nactions_(0),actions_(NULL) {};
26  dupcol_action(int nactions,
27                const action *actions,
28                const PresolveAction *next)/* :
29    nactions_(nactions), actions_(actions),
30    PresolveAction(next) {}*/;
31
32 public:
33  const char *name() const;
34
35  static const PresolveAction *presolve(PresolveMatrix *prob,
36                                         const PresolveAction *next);
37
38  void postsolve(PostsolveMatrix *prob) const;
39
40  //~dupcol_action() { delete[]actions_; }
41};
42
43
44class duprow_action : public PresolveAction {
45  struct action {
46    int row;
47    double lbound;
48    double ubound;
49  };
50
51  const int nactions_;
52  const action *const actions_;
53
54  duprow_action():PresolveAction(NULL),nactions_(0),actions_(NULL) {};
55  duprow_action(int nactions,
56                      const action *actions,
57                      const PresolveAction *next) :
58    PresolveAction(next),
59    nactions_(nactions), actions_(actions) {}
60
61 public:
62  const char *name() const;
63
64  static const PresolveAction *presolve(PresolveMatrix *prob,
65                                         const PresolveAction *next);
66
67  void postsolve(PostsolveMatrix *prob) const;
68
69  //~duprow_action() { delete[]actions_; }
70};
71
72#endif
73
Note: See TracBrowser for help on using the repository browser.