DyLP
1.10.4
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
CoinPresolveZeros.hpp
Go to the documentation of this file.
1
/* $Id: CoinPresolveZeros.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 CoinPresolveZeros_H
7
#define CoinPresolveZeros_H
8
14
#define DROP_ZERO 8
15
22
struct
dropped_zero
{
23
int
row
;
24
int
col
;
25
};
26
32
class
drop_zero_coefficients_action
:
public
CoinPresolveAction
{
33
34
const
int
nzeros_
;
35
const
dropped_zero
*
const
zeros_
;
36
37
drop_zero_coefficients_action
(
int
nzeros,
38
const
dropped_zero
*zeros,
39
const
CoinPresolveAction
*
next
)
40
:
CoinPresolveAction
(next)
41
,
nzeros_
(nzeros)
42
,
zeros_
(zeros)
43
{
44
}
45
46
public
:
47
const
char
*
name
()
const
{
return
(
"drop_zero_coefficients_action"
); }
48
49
static
const
CoinPresolveAction
*
presolve
(
CoinPresolveMatrix
*prob,
50
int
*checkcols,
51
int
ncheckcols,
52
const
CoinPresolveAction
*
next
);
53
54
void
postsolve
(
CoinPostsolveMatrix
*prob)
const
;
55
56
virtual
~drop_zero_coefficients_action
() {
deleteAction
(
zeros_
,
dropped_zero
*); }
57
};
58
59
const
CoinPresolveAction
*
drop_zero_coefficients
(
CoinPresolveMatrix
*prob,
60
const
CoinPresolveAction
*next);
61
62
#endif
63
64
/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
65
*/
CoinPresolveAction
Abstract base class of all presolve routines.
Definition:
CoinPresolveMatrix.hpp:163
deleteAction
#define deleteAction(array, type)
Definition:
CoinPresolveMatrix.hpp:38
drop_zero_coefficients_action::nzeros_
const int nzeros_
Definition:
CoinPresolveZeros.hpp:34
drop_zero_coefficients
const CoinPresolveAction * drop_zero_coefficients(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
drop_zero_coefficients_action::presolve
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, int *checkcols, int ncheckcols, const CoinPresolveAction *next)
drop_zero_coefficients_action::~drop_zero_coefficients_action
virtual ~drop_zero_coefficients_action()
Definition:
CoinPresolveZeros.hpp:56
CoinPresolveAction::next
const CoinPresolveAction * next
The next presolve transformation.
Definition:
CoinPresolveMatrix.hpp:180
dropped_zero::col
int col
Definition:
CoinPresolveZeros.hpp:24
CoinPostsolveMatrix
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
Definition:
CoinPresolveMatrix.hpp:1552
drop_zero_coefficients_action::drop_zero_coefficients_action
drop_zero_coefficients_action(int nzeros, const dropped_zero *zeros, const CoinPresolveAction *next)
Definition:
CoinPresolveZeros.hpp:37
dropped_zero
Tracking information for an explicit zero coefficient.
Definition:
CoinPresolveZeros.hpp:22
CoinPresolveMatrix
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
Definition:
CoinPresolveMatrix.hpp:905
drop_zero_coefficients_action::postsolve
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
drop_zero_coefficients_action::name
const char * name() const
A name for debug printing.
Definition:
CoinPresolveZeros.hpp:47
dropped_zero::row
int row
Definition:
CoinPresolveZeros.hpp:23
drop_zero_coefficients_action::zeros_
const dropped_zero *const zeros_
Definition:
CoinPresolveZeros.hpp:35
drop_zero_coefficients_action
Removal of explicit zeros.
Definition:
CoinPresolveZeros.hpp:32
Generated by
1.8.5