CoinPresolveImpliedFree.hpp

Go to the documentation of this file.
00001 /* $Id: CoinPresolveImpliedFree.hpp 1694 2014-04-29 02:08:35Z tkr $ */
00002 // Copyright (C) 2002, International Business Machines
00003 // Corporation and others.  All Rights Reserved.
00004 // This code is licensed under the terms of the Eclipse Public License (EPL).
00005 
00006 #ifndef CoinPresolveImpliedFree_H
00007 #define CoinPresolveImpliedFree_H
00008 
00013 #define IMPLIED_FREE    9
00014 
00029 class implied_free_action : public CoinPresolveAction {
00030   struct action {
00031     int row, col;
00032     double clo, cup;
00033     double rlo, rup;
00034     const double *rowels;
00035     const double *costs;
00036     int ninrow;
00037   };
00038 
00039   const int nactions_;
00040   const action *const actions_;
00041 
00042   implied_free_action(int nactions,
00043                       const action *actions,
00044                       const CoinPresolveAction *next) :
00045     CoinPresolveAction(next),
00046     nactions_(nactions), actions_(actions) {}
00047 
00048  public:
00049   const char *name() const;
00050 
00051   static const CoinPresolveAction *presolve(CoinPresolveMatrix * prob,
00052                                          const CoinPresolveAction *next,
00053                                         int & fillLevel);
00054 
00055   void postsolve(CoinPostsolveMatrix *prob) const;
00056 
00057   virtual ~implied_free_action();
00058 };
00059 
00060 #endif
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines

Generated on 28 Aug 2016 for CoinUtils by  doxygen 1.6.1