CoinUtils  2.11.9
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 
27 public:
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 
53 private:
54  doubleton_action(int nactions,
55  const action *actions,
56  const CoinPresolveAction *next)
58  , nactions_(nactions)
59  , actions_(actions)
60  {
61  }
62 
63 public:
64  const char *name() const { return ("doubleton_action"); }
65 
67  const CoinPresolveAction *next);
68 
69  void postsolve(CoinPostsolveMatrix *prob) const;
70 
71  virtual ~doubleton_action();
72 };
73 #endif
74 
75 /* vi: softtabstop=2 shiftwidth=2 expandtab tabstop=2
76 */
doubleton_action::action::rlo
double rlo
Definition: CoinPresolveDoubleton.hpp:36
doubleton_action::nactions_
const int nactions_
Definition: CoinPresolveDoubleton.hpp:50
doubleton_action::~doubleton_action
virtual ~doubleton_action()
doubleton_action::action::clox
double clox
Definition: CoinPresolveDoubleton.hpp:30
doubleton_action::action::row
int row
Definition: CoinPresolveDoubleton.hpp:45
doubleton_action::action::cupx
double cupx
Definition: CoinPresolveDoubleton.hpp:31
CoinPostsolveMatrix
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during postsol...
Definition: CoinPresolveMatrix.hpp:1552
doubleton_action::presolve
static const CoinPresolveAction * presolve(CoinPresolveMatrix *, const CoinPresolveAction *next)
doubleton_action::action
Definition: CoinPresolveDoubleton.hpp:28
doubleton_action::action::colel
double * colel
Definition: CoinPresolveDoubleton.hpp:41
doubleton_action::action::ncolx
int ncolx
Definition: CoinPresolveDoubleton.hpp:46
doubleton_action::action::costy
double costy
Definition: CoinPresolveDoubleton.hpp:34
CoinPresolveAction
Abstract base class of all presolve routines.
Definition: CoinPresolveMatrix.hpp:163
doubleton_action::postsolve
void postsolve(CoinPostsolveMatrix *prob) const
Apply the postsolve transformation for this particular presolve action.
doubleton_action::action::icolx
int icolx
Definition: CoinPresolveDoubleton.hpp:43
doubleton_action::action::coeffy
double coeffy
Definition: CoinPresolveDoubleton.hpp:39
doubleton_action::action::coeffx
double coeffx
Definition: CoinPresolveDoubleton.hpp:38
doubleton_action
Solve ax+by=c for y and substitute y out of the problem.
Definition: CoinPresolveDoubleton.hpp:26
doubleton_action::action::icoly
int icoly
Definition: CoinPresolveDoubleton.hpp:44
CoinPresolveMatrix
Augments CoinPrePostsolveMatrix with information about the problem that is only needed during presolv...
Definition: CoinPresolveMatrix.hpp:905
doubleton_action::doubleton_action
doubleton_action(int nactions, const action *actions, const CoinPresolveAction *next)
Definition: CoinPresolveDoubleton.hpp:54
CoinPresolveAction::next
const CoinPresolveAction * next
The next presolve transformation.
Definition: CoinPresolveMatrix.hpp:180
doubleton_action::actions_
const action *const actions_
Definition: CoinPresolveDoubleton.hpp:51
doubleton_action::action::ncoly
int ncoly
Definition: CoinPresolveDoubleton.hpp:47
doubleton_action::name
const char * name() const
A name for debug printing.
Definition: CoinPresolveDoubleton.hpp:64
doubleton_action::action::costx
double costx
Definition: CoinPresolveDoubleton.hpp:32