CoinUtils
trunk
|
00001 /* $Id$ */ 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 CoinPresolvePsdebug_H 00007 #define CoinPresolvePsdebug_H 00008 00009 /* 00010 The current idea of the relation between PRESOLVE_DEBUG and 00011 PRESOLVE_CONSISTENCY is that PRESOLVE_CONSISTENCY triggers the consistency 00012 checks and PRESOLVE_DEBUG triggers consistency checks and output. 00013 This isn't always true in the code, but that's the goal. Really, 00014 the whole compile-time scheme should be replaced with something more 00015 user-friendly (control variables that can be changed during the run). 00016 00017 Also floating about are PRESOLVE_SUMMARY and COIN_PRESOLVE_TUNING. 00018 -- lh, 111208 -- 00019 */ 00050 00058 void presolve_no_dups(const CoinPresolveMatrix *preObj, 00059 bool doCol = true, bool doRow = true) ; 00060 00069 void presolve_links_ok(const CoinPresolveMatrix *preObj, 00070 bool doCol = true, bool doRow = true) ; 00071 00078 void presolve_no_zeros(const CoinPresolveMatrix *preObj, 00079 bool doCol = true, bool doRow = true) ; 00080 00087 void presolve_consistent(const CoinPresolveMatrix *preObj, 00088 bool chkvals = true) ; 00089 00093 void presolve_check_threads(const CoinPostsolveMatrix *obj) ; 00094 00105 void presolve_check_free_list(const CoinPostsolveMatrix *obj, 00106 bool chkElemCnt = false) ; 00107 00118 void presolve_check_reduced_costs(const CoinPostsolveMatrix *obj) ; 00119 00127 void presolve_check_duals(const CoinPostsolveMatrix *postObj) ; 00128 00138 void presolve_check_sol(const CoinPresolveMatrix *preObj, 00139 int chkColSol = 2, int chkRowAct = 1, 00140 int chkStatus = 1) ; 00141 00150 void presolve_check_sol(const CoinPostsolveMatrix *postObj, 00151 int chkColSol = 2, int chkRowAct = 2, 00152 int chkStatus = 1) ; 00153 00157 void presolve_check_nbasic(const CoinPresolveMatrix *preObj) ; 00158 00162 void presolve_check_nbasic(const CoinPostsolveMatrix *postObj) ; 00163 00165 00166 #endif