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