/home/coin/CoinUtils-1.0.2/CoinUtils/src/CoinPresolveDupcol.hpp

Go to the documentation of this file.
00001 // Copyright (C) 2002, International Business Machines
00002 // Corporation and others.  All Rights Reserved.
00003 
00004 #ifndef CoinPresolveDupcol_H
00005 #define CoinPresolveDupcol_H
00006 
00011 #define DUPCOL  10
00012 
00028 class dupcol_action : public CoinPresolveAction {
00029   struct action {
00030     double thislo;
00031     double thisup;
00032     double lastlo;
00033     double lastup;
00034     int ithis;
00035     int ilast;
00036 
00037     double *colels;
00038     int nincol;
00039   };
00040 
00041   const int nactions_;
00042   const action *const actions_;
00043 
00044   dupcol_action():CoinPresolveAction(NULL),nactions_(0),actions_(NULL) {};
00045   dupcol_action(int nactions, const action *actions,
00046                 const CoinPresolveAction *next) ;
00047 
00048  public:
00049   const char *name() const;
00050 
00051   static const CoinPresolveAction *presolve(CoinPresolveMatrix *prob,
00052                                          const CoinPresolveAction *next);
00053 
00054   void postsolve(CoinPostsolveMatrix *prob) const;
00055 
00056 };
00057 
00058 
00073 class duprow_action : public CoinPresolveAction {
00074   struct action {
00075     int row;
00076     double lbound;
00077     double ubound;
00078   };
00079 
00080   const int nactions_;
00081   const action *const actions_;
00082 
00083   duprow_action():CoinPresolveAction(NULL),nactions_(0),actions_(NULL) {};
00084   duprow_action(int nactions,
00085                       const action *actions,
00086                       const CoinPresolveAction *next) :
00087     CoinPresolveAction(next),
00088     nactions_(nactions), actions_(actions) {}
00089 
00090  public:
00091   const char *name() const;
00092 
00093   static const CoinPresolveAction *presolve(CoinPresolveMatrix *prob,
00094                                          const CoinPresolveAction *next);
00095 
00096   void postsolve(CoinPostsolveMatrix *prob) const;
00097 
00098   //~duprow_action() { delete[]actions_; }
00099 };
00100 
00101 #endif
00102 

Generated on Wed Aug 22 05:55:47 2007 by  doxygen 1.4.7