CoinUtils  2.9.0
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
CoinPresolvePsdebug.hpp
Go to the documentation of this file.
1 /* $Id: CoinPresolvePsdebug.hpp 1560 2012-11-24 00:29:01Z lou $ */
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 CoinPresolvePsdebug_H
7 #define CoinPresolvePsdebug_H
8 
9 /*
10  The current idea of the relation between PRESOLVE_DEBUG and
11  PRESOLVE_CONSISTENCY is that PRESOLVE_CONSISTENCY triggers the consistency
12  checks and PRESOLVE_DEBUG triggers consistency checks and output.
13  This isn't always true in the code, but that's the goal. Really,
14  the whole compile-time scheme should be replaced with something more
15  user-friendly (control variables that can be changed during the run).
16 
17  Also floating about are PRESOLVE_SUMMARY and COIN_PRESOLVE_TUNING.
18  -- lh, 111208 --
19 */
50 
58 void presolve_no_dups(const CoinPresolveMatrix *preObj,
59  bool doCol = true, bool doRow = true) ;
60 
69 void presolve_links_ok(const CoinPresolveMatrix *preObj,
70  bool doCol = true, bool doRow = true) ;
71 
78 void presolve_no_zeros(const CoinPresolveMatrix *preObj,
79  bool doCol = true, bool doRow = true) ;
80 
87 void presolve_consistent(const CoinPresolveMatrix *preObj,
88  bool chkvals = true) ;
89 
94 
106  bool chkElemCnt = false) ;
107 
119 
127 void presolve_check_duals(const CoinPostsolveMatrix *postObj) ;
128 
138 void presolve_check_sol(const CoinPresolveMatrix *preObj,
139  int chkColSol = 2, int chkRowAct = 1,
140  int chkStatus = 1) ;
141 
150 void presolve_check_sol(const CoinPostsolveMatrix *postObj,
151  int chkColSol = 2, int chkRowAct = 2,
152  int chkStatus = 1) ;
153 
157 void presolve_check_nbasic(const CoinPresolveMatrix *preObj) ;
158 
162 void presolve_check_nbasic(const CoinPostsolveMatrix *postObj) ;
163 
165 
166 #endif