Scippy

SCIP

Solving Constraint Integer Programs

pub_presol.h
Go to the documentation of this file.
1 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
2 /* */
3 /* This file is part of the program and library */
4 /* SCIP --- Solving Constraint Integer Programs */
5 /* */
6 /* Copyright (C) 2002-2016 Konrad-Zuse-Zentrum */
7 /* fuer Informationstechnik Berlin */
8 /* */
9 /* SCIP is distributed under the terms of the ZIB Academic License. */
10 /* */
11 /* You should have received a copy of the ZIB Academic License */
12 /* along with SCIP; see the file COPYING. If not email to scip@zib.de. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file pub_presol.h
17  * @ingroup PUBLICMETHODS
18  * @brief public methods for presolvers
19  * @author Tobias Achterberg
20  */
21 
22 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
23 
24 #ifndef __SCIP_PUB_PRESOL_H__
25 #define __SCIP_PUB_PRESOL_H__
26 
27 
28 #include "scip/def.h"
29 #include "scip/type_misc.h"
30 #include "scip/type_presol.h"
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 /** compares two presolvers w. r. to their priority */
37 extern
38 SCIP_DECL_SORTPTRCOMP(SCIPpresolComp);
39 
40 /** comparison method for sorting presolvers w.r.t. to their name */
41 extern
42 SCIP_DECL_SORTPTRCOMP(SCIPpresolCompName);
43 
44 /** gets user data of presolver */
45 extern
47  SCIP_PRESOL* presol /**< presolver */
48  );
49 
50 /** sets user data of presolver; user has to free old data in advance! */
51 extern
53  SCIP_PRESOL* presol, /**< presolver */
54  SCIP_PRESOLDATA* presoldata /**< new presolver user data */
55  );
56 
57 /** gets name of presolver */
58 extern
59 const char* SCIPpresolGetName(
60  SCIP_PRESOL* presol /**< presolver */
61  );
62 
63 /** gets description of presolver */
64 extern
65 const char* SCIPpresolGetDesc(
66  SCIP_PRESOL* presol /**< presolver */
67  );
68 
69 /** gets priority of presolver */
70 extern
72  SCIP_PRESOL* presol /**< presolver */
73  );
74 
75 /** gets round limit of presolver */
76 extern
78  SCIP_PRESOL* presol /**< presolver */
79  );
80 
81 /** gets the timing mask of the presolver */
82 extern
84  SCIP_PRESOL* presol /**< presolver */
85  );
86 
87 /** sets the timing mask of the presolver */
88 extern
90  SCIP_PRESOL* presol, /**< presolver */
91  SCIP_PRESOLTIMING timing /**< timing mask of the presolver */
92  );
93 
94 /** should presolver be delayed, if other presolvers found reductions? */
95 extern
97  SCIP_PRESOL* presol /**< presolver */
98  );
99 
100 /** was presolver delayed at the last call? */
101 extern
103  SCIP_PRESOL* presol /**< presolver */
104  );
105 
106 /** is presolver initialized? */
107 extern
109  SCIP_PRESOL* presol /**< presolver */
110  );
111 
112 /** gets time in seconds used in this presolver for setting up for next stages */
113 extern
115  SCIP_PRESOL* presol /**< presolver */
116  );
117 
118 /** gets time in seconds used in this presolver */
119 extern
121  SCIP_PRESOL* presol /**< presolver */
122  );
123 
124 /** gets number of variables fixed in presolver */
125 extern
127  SCIP_PRESOL* presol /**< presolver */
128  );
129 
130 /** gets number of variables aggregated in presolver */
131 extern
133  SCIP_PRESOL* presol /**< presolver */
134  );
135 
136 /** gets number of variable types changed in presolver */
137 extern
139  SCIP_PRESOL* presol /**< presolver */
140  );
141 
142 /** gets number of bounds changed in presolver */
143 extern
145  SCIP_PRESOL* presol /**< presolver */
146  );
147 
148 /** gets number of holes added to domains of variables in presolver */
149 extern
151  SCIP_PRESOL* presol /**< presolver */
152  );
153 
154 /** gets number of constraints deleted in presolver */
155 extern
157  SCIP_PRESOL* presol /**< presolver */
158  );
159 
160 /** gets number of constraints added in presolver */
161 extern
163  SCIP_PRESOL* presol /**< presolver */
164  );
165 
166 /** gets number of constraints upgraded in presolver */
167 extern
169  SCIP_PRESOL* presol /**< presolver */
170  );
171 
172 /** gets number of coefficients changed in presolver */
173 extern
175  SCIP_PRESOL* presol /**< presolver */
176  );
177 
178 /** gets number of constraint sides changed in presolver */
179 extern
181  SCIP_PRESOL* presol /**< presolver */
182  );
183 
184 /** gets number of times the presolver was called and tried to find reductions */
185 extern
187  SCIP_PRESOL* presol /**< presolver */
188  );
189 
190 #ifdef __cplusplus
191 }
192 #endif
193 
194 #endif
SCIP_PRESOLTIMING SCIPpresolGetTiming(SCIP_PRESOL *presol)
Definition: presol.c:607
struct SCIP_PresolData SCIP_PRESOLDATA
Definition: type_presol.h:37
type definitions for miscellaneous datastructures
int SCIPpresolGetNAddConss(SCIP_PRESOL *presol)
Definition: presol.c:731
void SCIPpresolSetData(SCIP_PRESOL *presol, SCIP_PRESOLDATA *presoldata)
Definition: presol.c:476
SCIP_Real SCIPpresolGetTime(SCIP_PRESOL *presol)
Definition: presol.c:661
int SCIPpresolGetMaxrounds(SCIP_PRESOL *presol)
Definition: presol.c:583
const char * SCIPpresolGetDesc(SCIP_PRESOL *presol)
Definition: presol.c:563
type definitions for presolvers
int SCIPpresolGetNChgBds(SCIP_PRESOL *presol)
Definition: presol.c:701
int SCIPpresolGetNAggrVars(SCIP_PRESOL *presol)
Definition: presol.c:681
SCIP_Bool SCIPpresolIsInitialized(SCIP_PRESOL *presol)
Definition: presol.c:629
SCIP_Bool SCIPpresolIsDelayed(SCIP_PRESOL *presol)
int SCIPpresolGetNFixedVars(SCIP_PRESOL *presol)
Definition: presol.c:671
SCIP_Bool SCIPpresolWasDelayed(SCIP_PRESOL *presol)
unsigned int SCIP_PRESOLTIMING
Definition: type_timing.h:50
int SCIPpresolGetNChgVarTypes(SCIP_PRESOL *presol)
Definition: presol.c:691
int SCIPpresolGetNUpgdConss(SCIP_PRESOL *presol)
Definition: presol.c:741
void SCIPpresolSetTiming(SCIP_PRESOL *presol, SCIP_PRESOLTIMING timing)
Definition: presol.c:617
int SCIPpresolGetNChgSides(SCIP_PRESOL *presol)
Definition: presol.c:761
int SCIPpresolGetNChgCoefs(SCIP_PRESOL *presol)
Definition: presol.c:751
#define SCIP_Bool
Definition: def.h:53
SCIP_PRESOLDATA * SCIPpresolGetData(SCIP_PRESOL *presol)
Definition: presol.c:466
int SCIPpresolGetNAddHoles(SCIP_PRESOL *presol)
Definition: presol.c:711
SCIP_Real SCIPpresolGetSetupTime(SCIP_PRESOL *presol)
Definition: presol.c:651
int SCIPpresolGetNDelConss(SCIP_PRESOL *presol)
Definition: presol.c:721
SCIP_DECL_SORTPTRCOMP(SCIPpresolComp)
Definition: presol.c:47
#define SCIP_Real
Definition: def.h:127
common defines and data types used in all packages of SCIP
int SCIPpresolGetNCalls(SCIP_PRESOL *presol)
Definition: presol.c:771
int SCIPpresolGetPriority(SCIP_PRESOL *presol)
Definition: presol.c:573
const char * SCIPpresolGetName(SCIP_PRESOL *presol)
Definition: presol.c:553