Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
opt
build
coinutils
coinutils-2.6.4
CoinUtils
src
CoinPresolveDupcol.hpp
Go to the documentation of this file.
1
/* $Id: CoinPresolveDupcol.hpp 1215 2009-11-05 11:03:04Z forrest $ */
2
// Copyright (C) 2002, International Business Machines
3
// Corporation and others. All Rights Reserved.
4
5
#ifndef CoinPresolveDupcol_H
6
#define CoinPresolveDupcol_H
7
8
#include "
CoinPresolveMatrix.hpp
"
9
14
#define DUPCOL 10
15
31
class
dupcol_action
:
public
CoinPresolveAction
{
32
dupcol_action
();
33
dupcol_action
(
const
dupcol_action
& rhs);
34
dupcol_action
&
operator=
(
const
dupcol_action
& rhs);
35
36
struct
action
{
37
double
thislo
;
38
double
thisup
;
39
double
lastlo
;
40
double
lastup
;
41
int
ithis
;
42
int
ilast
;
43
44
double
*
colels
;
45
int
nincol
;
46
};
47
48
const
int
nactions_
;
49
// actions_ is owned by the class and must be deleted at destruction
50
const
action
*
const
actions_
;
51
52
dupcol_action
(
int
nactions,
const
action
*actions,
53
const
CoinPresolveAction
*
next
) :
54
CoinPresolveAction
(next),
55
nactions_
(nactions),
56
actions_
(actions) {}
57
58
public
:
59
const
char
*
name
()
const
;
60
61
static
const
CoinPresolveAction
*
presolve
(
CoinPresolveMatrix
*prob,
62
const
CoinPresolveAction
*
next
);
63
64
void
postsolve
(
CoinPostsolveMatrix
*prob)
const
;
65
66
~dupcol_action
();
67
68
};
69
70
86
class
duprow_action
:
public
CoinPresolveAction
{
87
struct
action
{
88
int
row
;
89
double
lbound
;
90
double
ubound
;
91
};
92
93
const
int
nactions_
;
94
const
action
*
const
actions_
;
95
96
duprow_action
():
CoinPresolveAction
(NULL),
nactions_
(0),
actions_
(NULL) {}
97
duprow_action
(
int
nactions,
98
const
action
*actions,
99
const
CoinPresolveAction
*
next
) :
100
CoinPresolveAction
(next),
101
nactions_
(nactions),
actions_
(actions) {}
102
103
public
:
104
const
char
*
name
()
const
;
105
106
static
const
CoinPresolveAction
*
presolve
(
CoinPresolveMatrix
*prob,
107
const
CoinPresolveAction
*
next
);
108
109
void
postsolve
(
CoinPostsolveMatrix
*prob)
const
;
110
111
//~duprow_action() { delete[]actions_; }
112
};
113
124
class
gubrow_action
:
public
CoinPresolveAction
{
125
struct
action
{
126
int
row
;
127
double
lbound
;
128
double
ubound
;
129
};
130
131
const
int
nactions_
;
132
const
action
*
const
actions_
;
133
134
gubrow_action
():
CoinPresolveAction
(NULL),
nactions_
(0),
actions_
(NULL) {}
135
gubrow_action
(
int
nactions,
136
const
action
*actions,
137
const
CoinPresolveAction
*
next
) :
138
CoinPresolveAction
(next),
139
nactions_
(nactions),
actions_
(actions) {}
140
141
public
:
142
const
char
*
name
()
const
;
143
144
static
const
CoinPresolveAction
*
presolve
(
CoinPresolveMatrix
*prob,
145
const
CoinPresolveAction
*
next
);
146
147
void
postsolve
(
CoinPostsolveMatrix
*prob)
const
;
148
149
//~gubrow_action() { delete[]actions_; }
150
};
151
152
#endif
153
Generated on Tue Mar 1 2016 22:31:56 by
1.8.4