Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | Related Pages

CoinPresolveForcing.hpp

00001 // Copyright (C) 2002, International Business Machines
00002 // Corporation and others.  All Rights Reserved.
00003 
00004 #ifndef CoinPresolveForcing_H
00005 #define CoinPresolveForcing_H
00006 #define IMPLIED_BOUND   7
00007 
00008 class forcing_constraint_action : public CoinPresolveAction {
00009   struct action {
00010     const int *rowcols;
00011     const double *bounds;
00012     int row;
00013     int nlo;
00014     int nup;
00015   };
00016 
00017   const int nactions_;
00018   const action *const actions_;
00019 
00020   forcing_constraint_action(int nactions,
00021                       const action *actions,
00022                       const CoinPresolveAction *next) :
00023     CoinPresolveAction(next),
00024     nactions_(nactions), actions_(actions) {};
00025 
00026  public:
00027   const char *name() const;
00028 
00029   static const CoinPresolveAction *presolve(CoinPresolveMatrix * prob,
00030                                          const CoinPresolveAction *next);
00031 
00032   void postsolve(CoinPostsolveMatrix *prob) const;
00033 
00034   ~forcing_constraint_action();
00035 };
00036 
00037 
00038 
00039 
00040 // HACK - from doubleton.cpp
00041 void compact_rep(double *elems, int *indices, CoinBigIndex *starts, const int *lengths, int n,
00042                  const presolvehlink *link);
00043 
00044 #endif

Generated on Wed Dec 3 14:34:22 2003 for Coin by doxygen 1.3.5