Dip
0.92.4
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
tmp
Dip-0.92.4
CoinUtils
src
CoinPresolveForcing.hpp
Go to the documentation of this file.
1
/* $Id: CoinPresolveForcing.hpp 2083 2019-01-06 19:38:09Z unxusr $ */
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 CoinPresolveForcing_H
7
#define CoinPresolveForcing_H
8
9
#include "
CoinPresolveMatrix.hpp
"
10
15
#define IMPLIED_BOUND 7
16
27
class
forcing_constraint_action
:
public
CoinPresolveAction
{
28
forcing_constraint_action
();
29
forcing_constraint_action
(
const
forcing_constraint_action
&rhs);
30
forcing_constraint_action
&
operator=
(
const
forcing_constraint_action
&rhs);
31
32
public
:
33
struct
action
{
34
const
int
*
rowcols
;
35
const
double
*
bounds
;
36
int
row
;
37
int
nlo
;
38
int
nup
;
39
};
40
41
private
:
42
const
int
nactions_
;
43
// actions_ is owned by the class and must be deleted at destruction
44
const
action
*
const
actions_
;
45
46
public
:
47
forcing_constraint_action
(
int
nactions,
48
const
action
*actions,
49
const
CoinPresolveAction
*
next
)
50
:
CoinPresolveAction
(next)
51
,
nactions_
(nactions)
52
,
actions_
(actions)
53
{
54
}
55
56
const
char
*
name
()
const
;
57
58
static
const
CoinPresolveAction
*
presolve
(
CoinPresolveMatrix
*prob,
59
const
CoinPresolveAction
*
next
);
60
61
void
postsolve
(
CoinPostsolveMatrix
*prob)
const
;
62
63
virtual
~forcing_constraint_action
();
64
};
65
66
#endif
67
68
/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
69
*/
forcing_constraint_action::actions_
const action *const actions_
Definition:
CoinPresolveForcing.hpp:44
forcing_constraint_action::forcing_constraint_action
forcing_constraint_action()
CoinPostsolveMatrix
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
Definition:
CoinPresolveMatrix.hpp:1552
CoinPresolveMatrix
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
Definition:
CoinPresolveMatrix.hpp:905
forcing_constraint_action::action
Definition:
CoinPresolveForcing.hpp:33
forcing_constraint_action::action::bounds
const double * bounds
Definition:
CoinPresolveForcing.hpp:35
forcing_constraint_action::action::row
int row
Definition:
CoinPresolveForcing.hpp:36
forcing_constraint_action::name
const char * name() const
A name for debug printing.
forcing_constraint_action::forcing_constraint_action
forcing_constraint_action(int nactions, const action *actions, const CoinPresolveAction *next)
Definition:
CoinPresolveForcing.hpp:47
forcing_constraint_action::postsolve
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
CoinPresolveAction
Abstract base class of all presolve routines.
Definition:
CoinPresolveMatrix.hpp:163
forcing_constraint_action::action::nup
int nup
Definition:
CoinPresolveForcing.hpp:38
CoinPresolveMatrix.hpp
forcing_constraint_action::~forcing_constraint_action
virtual ~forcing_constraint_action()
forcing_constraint_action::nactions_
const int nactions_
Definition:
CoinPresolveForcing.hpp:42
forcing_constraint_action::action::nlo
int nlo
Definition:
CoinPresolveForcing.hpp:37
forcing_constraint_action::action::rowcols
const int * rowcols
Definition:
CoinPresolveForcing.hpp:34
forcing_constraint_action::operator=
forcing_constraint_action & operator=(const forcing_constraint_action &rhs)
forcing_constraint_action::presolve
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
forcing_constraint_action
Detect and process forcing constraints and useless constraints.
Definition:
CoinPresolveForcing.hpp:27
CoinPresolveAction::next
const CoinPresolveAction * next
The next presolve transformation.
Definition:
CoinPresolveMatrix.hpp:180
Generated by
1.8.5