CoinUtils 2.11.4
CoinPresolveDoubleton.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 CoinPresolveDoubleton_H
7#define CoinPresolveDoubleton_H
8
9#define DOUBLETON 5
10
27public:
28 struct action {
29
30 double clox;
31 double cupx;
32 double costx;
33
34 double costy;
35
36 double rlo;
37
38 double coeffx;
39 double coeffy;
40
41 double *colel;
42
43 int icolx;
44 int icoly;
45 int row;
46 int ncolx;
47 int ncoly;
48 };
49
50 const int nactions_;
51 const action *const actions_;
52
53private:
54 doubleton_action(int nactions,
55 const action *actions,
58 , nactions_(nactions)
59 , actions_(actions)
60 {
61 }
62
63public:
64 const char *name() const { return ("doubleton_action"); }
65
68
69 void postsolve(CoinPostsolveMatrix *prob) const;
70
72};
73#endif
74
75/* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
76*/
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...
Solve ax+by=c for y and substitute y out of the problem.
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
static const CoinPresolveAction * presolve(CoinPresolveMatrix *, const CoinPresolveAction *next)
doubleton_action(int nactions, const action *actions, const CoinPresolveAction *next)
virtual ~doubleton_action()
const char * name() const
A name for debug printing.
const action *const actions_