Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
opt
build
coinutils-2.6.4
CoinUtils
src
CoinPresolveZeros.hpp
Go to the documentation of this file.
1
/* $Id: CoinPresolveZeros.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 CoinPresolveZeros_H
6
#define CoinPresolveZeros_H
7
13
#define DROP_ZERO 8
14
21
struct
dropped_zero
{
22
int
row
;
23
int
col
;
24
};
25
31
class
drop_zero_coefficients_action
:
public
CoinPresolveAction
{
32
33
const
int
nzeros_
;
34
const
dropped_zero
*
const
zeros_
;
35
36
drop_zero_coefficients_action
(
int
nzeros,
37
const
dropped_zero
*zeros,
38
const
CoinPresolveAction
*
next
) :
39
CoinPresolveAction
(next),
40
nzeros_
(nzeros),
zeros_
(zeros)
41
{}
42
43
public
:
44
const
char
*
name
()
const
{
return
(
"drop_zero_coefficients_action"
); }
45
46
static
const
CoinPresolveAction
*
presolve
(
CoinPresolveMatrix
*prob,
47
int
*checkcols,
48
int
ncheckcols,
49
const
CoinPresolveAction
*
next
);
50
51
void
postsolve
(
CoinPostsolveMatrix
*prob)
const
;
52
53
~drop_zero_coefficients_action
() {
deleteAction
(
zeros_
,
dropped_zero
*); }
54
};
55
56
const
CoinPresolveAction
*
drop_zero_coefficients
(
CoinPresolveMatrix
*prob,
57
const
CoinPresolveAction
*next);
58
59
#endif
drop_zero_coefficients
const CoinPresolveAction * drop_zero_coefficients(CoinPresolveMatrix *prob, const CoinPresolveAction *next)
CoinPostsolveMatrix
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
Definition:
CoinPresolveMatrix.hpp:1307
CoinPresolveMatrix
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
Definition:
CoinPresolveMatrix.hpp:773
deleteAction
#define deleteAction(array, type)
Definition:
CoinPresolveMatrix.hpp:30
drop_zero_coefficients_action::nzeros_
const int nzeros_
Definition:
CoinPresolveZeros.hpp:33
drop_zero_coefficients_action::presolve
static const CoinPresolveAction * presolve(CoinPresolveMatrix *prob, int *checkcols, int ncheckcols, const CoinPresolveAction *next)
dropped_zero::col
int col
Definition:
CoinPresolveZeros.hpp:23
CoinPresolveAction
Abstract base class of all presolve routines.
Definition:
CoinPresolveMatrix.hpp:133
drop_zero_coefficients_action::drop_zero_coefficients_action
drop_zero_coefficients_action(int nzeros, const dropped_zero *zeros, const CoinPresolveAction *next)
Definition:
CoinPresolveZeros.hpp:36
dropped_zero
Tracking information for an explicit zero coefficient.
Definition:
CoinPresolveZeros.hpp:21
drop_zero_coefficients_action::~drop_zero_coefficients_action
~drop_zero_coefficients_action()
Definition:
CoinPresolveZeros.hpp:53
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:44
dropped_zero::row
int row
Definition:
CoinPresolveZeros.hpp:22
drop_zero_coefficients_action::zeros_
const dropped_zero *const zeros_
Definition:
CoinPresolveZeros.hpp:34
drop_zero_coefficients_action
Removal of explicit zeros.
Definition:
CoinPresolveZeros.hpp:31
CoinPresolveAction::next
const CoinPresolveAction * next
The next presolve transformation.
Definition:
CoinPresolveMatrix.hpp:150
Generated on Sun Feb 21 2016 03:15:09 by
1.8.7