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-2019 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 visit scip.zib.de. */
13 /* */
14 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
15 
16 /**@file pub_presol.h
17  * @ingroup PUBLICCOREAPI
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 #include "scip/def.h"
28 #include "scip/type_misc.h"
29 #include "scip/type_presol.h"
30 #include "scip/type_timing.h"
31 
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35 
36 /**@addtogroup PublicPresolverMethods
37  *
38  * @{
39  */
40 
41 /** compares two presolvers w. r. to their priority */
42 extern
43 SCIP_DECL_SORTPTRCOMP(SCIPpresolComp);
44 
45 /** comparison method for sorting presolvers w.r.t. to their name */
46 extern
47 SCIP_DECL_SORTPTRCOMP(SCIPpresolCompName);
48 
49 /** gets user data of presolver */
50 extern
52  SCIP_PRESOL* presol /**< presolver */
53  );
54 
55 /** sets user data of presolver; user has to free old data in advance! */
56 extern
58  SCIP_PRESOL* presol, /**< presolver */
59  SCIP_PRESOLDATA* presoldata /**< new presolver user data */
60  );
61 
62 /** gets name of presolver */
63 extern
64 const char* SCIPpresolGetName(
65  SCIP_PRESOL* presol /**< presolver */
66  );
67 
68 /** gets description of presolver */
69 extern
70 const char* SCIPpresolGetDesc(
71  SCIP_PRESOL* presol /**< presolver */
72  );
73 
74 /** gets priority of presolver */
75 extern
77  SCIP_PRESOL* presol /**< presolver */
78  );
79 
80 /** gets round limit of presolver */
81 extern
83  SCIP_PRESOL* presol /**< presolver */
84  );
85 
86 /** gets the timing mask of the presolver */
87 extern
89  SCIP_PRESOL* presol /**< presolver */
90  );
91 
92 /** sets the timing mask of the presolver */
93 extern
95  SCIP_PRESOL* presol, /**< presolver */
96  SCIP_PRESOLTIMING timing /**< timing mask of the presolver */
97  );
98 
99 /** is presolver initialized? */
100 extern
102  SCIP_PRESOL* presol /**< presolver */
103  );
104 
105 /** gets time in seconds used in this presolver for setting up for next stages */
106 extern
108  SCIP_PRESOL* presol /**< presolver */
109  );
110 
111 /** gets time in seconds used in this presolver */
112 extern
114  SCIP_PRESOL* presol /**< presolver */
115  );
116 
117 /** gets number of variables fixed in presolver */
118 extern
120  SCIP_PRESOL* presol /**< presolver */
121  );
122 
123 /** gets number of variables aggregated in presolver */
124 extern
126  SCIP_PRESOL* presol /**< presolver */
127  );
128 
129 /** gets number of variable types changed in presolver */
130 extern
132  SCIP_PRESOL* presol /**< presolver */
133  );
134 
135 /** gets number of bounds changed in presolver */
136 extern
138  SCIP_PRESOL* presol /**< presolver */
139  );
140 
141 /** gets number of holes added to domains of variables in presolver */
142 extern
144  SCIP_PRESOL* presol /**< presolver */
145  );
146 
147 /** gets number of constraints deleted in presolver */
148 extern
150  SCIP_PRESOL* presol /**< presolver */
151  );
152 
153 /** gets number of constraints added in presolver */
154 extern
156  SCIP_PRESOL* presol /**< presolver */
157  );
158 
159 /** gets number of constraints upgraded in presolver */
160 extern
162  SCIP_PRESOL* presol /**< presolver */
163  );
164 
165 /** gets number of coefficients changed in presolver */
166 extern
168  SCIP_PRESOL* presol /**< presolver */
169  );
170 
171 /** gets number of constraint sides changed in presolver */
172 extern
174  SCIP_PRESOL* presol /**< presolver */
175  );
176 
177 /** gets number of times the presolver was called and tried to find reductions */
178 extern
180  SCIP_PRESOL* presol /**< presolver */
181  );
182 
183 /* @} */
184 
185 #ifdef __cplusplus
186 }
187 #endif
188 
189 #endif
int SCIPpresolGetNDelConss(SCIP_PRESOL *presol)
Definition: presol.c:757
struct SCIP_PresolData SCIP_PRESOLDATA
Definition: type_presol.h:37
int SCIPpresolGetNAggrVars(SCIP_PRESOL *presol)
Definition: presol.c:717
type definitions for miscellaneous datastructures
timing definitions for SCIP
int SCIPpresolGetNChgCoefs(SCIP_PRESOL *presol)
Definition: presol.c:787
SCIP_DECL_SORTPTRCOMP(SCIPpresolComp)
Definition: presol.c:47
SCIP_PRESOLDATA * SCIPpresolGetData(SCIP_PRESOL *presol)
Definition: presol.c:502
int SCIPpresolGetNFixedVars(SCIP_PRESOL *presol)
Definition: presol.c:707
type definitions for presolvers
const char * SCIPpresolGetDesc(SCIP_PRESOL *presol)
Definition: presol.c:599
SCIP_Bool SCIPpresolIsInitialized(SCIP_PRESOL *presol)
Definition: presol.c:665
SCIP_Real SCIPpresolGetSetupTime(SCIP_PRESOL *presol)
Definition: presol.c:687
int SCIPpresolGetNChgVarTypes(SCIP_PRESOL *presol)
Definition: presol.c:727
void SCIPpresolSetData(SCIP_PRESOL *presol, SCIP_PRESOLDATA *presoldata)
Definition: presol.c:512
int SCIPpresolGetPriority(SCIP_PRESOL *presol)
Definition: presol.c:609
unsigned int SCIP_PRESOLTIMING
Definition: type_timing.h:52
#define SCIP_Bool
Definition: def.h:69
SCIP_Real SCIPpresolGetTime(SCIP_PRESOL *presol)
Definition: presol.c:697
int SCIPpresolGetNCalls(SCIP_PRESOL *presol)
Definition: presol.c:807
int SCIPpresolGetMaxrounds(SCIP_PRESOL *presol)
Definition: presol.c:619
const char * SCIPpresolGetName(SCIP_PRESOL *presol)
Definition: presol.c:589
void SCIPpresolSetTiming(SCIP_PRESOL *presol, SCIP_PRESOLTIMING timing)
Definition: presol.c:653
int SCIPpresolGetNUpgdConss(SCIP_PRESOL *presol)
Definition: presol.c:777
int SCIPpresolGetNChgSides(SCIP_PRESOL *presol)
Definition: presol.c:797
int SCIPpresolGetNAddHoles(SCIP_PRESOL *presol)
Definition: presol.c:747
#define SCIP_Real
Definition: def.h:157
common defines and data types used in all packages of SCIP
int SCIPpresolGetNAddConss(SCIP_PRESOL *presol)
Definition: presol.c:767
int SCIPpresolGetNChgBds(SCIP_PRESOL *presol)
Definition: presol.c:737
SCIP_PRESOLTIMING SCIPpresolGetTiming(SCIP_PRESOL *presol)
Definition: presol.c:643