CoinUtils
2.9.0
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Friends
Macros
Groups
Pages
CoinUtils
src
CoinPresolveFixed.hpp
Go to the documentation of this file.
1
/* $Id: CoinPresolveFixed.hpp 1510 2011-12-08 23:56:01Z 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 CoinPresolveFixed_H
7
#define CoinPresolveFixed_H
8
#define FIXED_VARIABLE 1
9
25
class
remove_fixed_action
:
public
CoinPresolveAction
{
26
public
:
30
struct
action
{
31
int
col
;
32
int
start
;
33
double
sol
;
34
};
36
int
*
colrows_
;
38
double
*
colels_
;
40
int
nactions_
;
42
action
*
actions_
;
43
44
private
:
46
remove_fixed_action
(
int
nactions,
47
action
*actions,
48
double
* colels,
49
int
* colrows,
50
const
CoinPresolveAction
*
next
);
51
52
public
:
54
const
char
*
name
()
const
;
55
63
static
const
remove_fixed_action
*
presolve
(
CoinPresolveMatrix
*prob,
64
int
*fcols,
65
int
nfcols,
66
const
CoinPresolveAction
*
next
);
67
68
void
postsolve
(
CoinPostsolveMatrix
*prob)
const
;
69
71
virtual
~remove_fixed_action
();
72
};
73
74
82
const
CoinPresolveAction
*
remove_fixed
(
CoinPresolveMatrix
*prob,
83
const
CoinPresolveAction
*next);
84
85
95
class
make_fixed_action
:
public
CoinPresolveAction
{
96
98
struct
action
{
99
double
bound
;
100
int
col
;
101
};
102
104
int
nactions_
;
106
const
action
*
actions_
;
107
112
const
bool
fix_to_lower_
;
113
117
const
remove_fixed_action
*
faction_
;
118
120
make_fixed_action
(
int
nactions,
const
action
*actions,
bool
fix_to_lower,
121
const
remove_fixed_action
*faction,
122
const
CoinPresolveAction
*
next
)
123
:
CoinPresolveAction
(next),
124
nactions_
(nactions),
actions_
(actions),
125
fix_to_lower_
(fix_to_lower),
126
faction_
(faction)
127
{}
128
129
public
:
131
const
char
*
name
()
const
;
132
140
static
const
CoinPresolveAction
*
presolve
(
CoinPresolveMatrix
*prob,
141
int
*fcols,
142
int
nfcols,
143
bool
fix_to_lower,
144
const
CoinPresolveAction
*
next
);
145
150
void
postsolve
(
CoinPostsolveMatrix
*prob)
const
;
151
153
virtual
~make_fixed_action
() {
154
deleteAction
(
actions_
,
action
*);
155
delete
faction_
;
156
}
157
};
158
166
const
CoinPresolveAction
*
make_fixed
(
CoinPresolveMatrix
*prob,
167
const
CoinPresolveAction
*next) ;
168
180
void
transferCosts
(
CoinPresolveMatrix
* prob);
181
#endif
Generated by
1.8.3.1