Scippy

SCIP

Solving Constraint Integer Programs

table_default.c
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-2024 Zuse Institute Berlin (ZIB) */
7 /* */
8 /* Licensed under the Apache License, Version 2.0 (the "License"); */
9 /* you may not use this file except in compliance with the License. */
10 /* You may obtain a copy of the License at */
11 /* */
12 /* http://www.apache.org/licenses/LICENSE-2.0 */
13 /* */
14 /* Unless required by applicable law or agreed to in writing, software */
15 /* distributed under the License is distributed on an "AS IS" BASIS, */
16 /* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. */
17 /* See the License for the specific language governing permissions and */
18 /* limitations under the License. */
19 /* */
20 /* You should have received a copy of the Apache-2.0 license */
21 /* along with SCIP; see the file LICENSE. If not visit scipopt.org. */
22 /* */
23 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
24 
25 /**@file table_default.c
26  * @ingroup DEFPLUGINS_TABLE
27  * @brief default statistics tables
28  * @author Tristan Gally
29  */
30 
31 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
32 
33 #include "scip/pub_message.h"
34 #include "scip/pub_table.h"
35 #include "scip/scip_solvingstats.h"
36 #include "scip/scip_table.h"
37 #include "scip/table_default.h"
38 
39 
40 #define TABLE_NAME_STATUS "status"
41 #define TABLE_DESC_STATUS "status statistics table"
42 #define TABLE_POSITION_STATUS 0 /**< the position of the statistics table */
43 #define TABLE_EARLIEST_STAGE_STATUS SCIP_STAGE_INIT /**< output of the statistics table is only printed from this stage onwards */
44 
45 #define TABLE_NAME_TIMING "timing"
46 #define TABLE_DESC_TIMING "timing statistics table"
47 #define TABLE_POSITION_TIMING 1000 /**< the position of the statistics table */
48 #define TABLE_EARLIEST_STAGE_TIMING SCIP_STAGE_PROBLEM /**< output of the statistics table is only printed from this stage onwards */
49 
50 #define TABLE_NAME_ORIGPROB "origprob"
51 #define TABLE_DESC_ORIGPROB "original problem statistics table"
52 #define TABLE_POSITION_ORIGPROB 2000 /**< the position of the statistics table */
53 #define TABLE_EARLIEST_STAGE_ORIGPROB SCIP_STAGE_PROBLEM /**< output of the statistics table is only printed from this stage onwards */
54 
55 #define TABLE_NAME_TRANSPROB "presolvedprob"
56 #define TABLE_DESC_TRANSPROB "presolved problem statistics table"
57 #define TABLE_POSITION_TRANSPROB 3000 /**< the position of the statistics table */
58 #define TABLE_EARLIEST_STAGE_TRANSPROB SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
59 
60 #define TABLE_NAME_PRESOL "presolver"
61 #define TABLE_DESC_PRESOL "presolver statistics table"
62 #define TABLE_POSITION_PRESOL 4000 /**< the position of the statistics table */
63 #define TABLE_EARLIEST_STAGE_PRESOL SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
64 
65 #define TABLE_NAME_CONS "constraint"
66 #define TABLE_DESC_CONS "constraint statistics table"
67 #define TABLE_POSITION_CONS 5000 /**< the position of the statistics table */
68 #define TABLE_EARLIEST_STAGE_CONS SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
69 
70 #define TABLE_NAME_CONSTIMING "constiming"
71 #define TABLE_DESC_CONSTIMING "constraint timing statistics table"
72 #define TABLE_POSITION_CONSTIMING 6000 /**< the position of the statistics table */
73 #define TABLE_EARLIEST_STAGE_CONSTIMING SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
74 
75 #define TABLE_NAME_PROP "propagator"
76 #define TABLE_DESC_PROP "propagator statistics table"
77 #define TABLE_POSITION_PROP 7000 /**< the position of the statistics table */
78 #define TABLE_EARLIEST_STAGE_PROP SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
79 
80 #define TABLE_NAME_CONFLICT "conflict"
81 #define TABLE_DESC_CONFLICT "conflict statistics table"
82 #define TABLE_POSITION_CONFLICT 8000 /**< the position of the statistics table */
83 #define TABLE_EARLIEST_STAGE_CONFLICT SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
84 
85 #define TABLE_NAME_SEPA "separator"
86 #define TABLE_DESC_SEPA "separator statistics table"
87 #define TABLE_POSITION_SEPA 9000 /**< the position of the statistics table */
88 #define TABLE_EARLIEST_STAGE_SEPA SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
89 
90 #define TABLE_NAME_CUTSEL "cutsel"
91 #define TABLE_DESC_CUTSEL "cutsel statistics table"
92 #define TABLE_POSITION_CUTSEL 9500 /**< the position of the statistics table */
93 #define TABLE_EARLIEST_STAGE_CUTSEL SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
94 
95 #define TABLE_NAME_PRICER "pricer"
96 #define TABLE_DESC_PRICER "pricer statistics table"
97 #define TABLE_POSITION_PRICER 10000 /**< the position of the statistics table */
98 #define TABLE_EARLIEST_STAGE_PRICER SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
99 
100 #define TABLE_NAME_BRANCH "branchrules"
101 #define TABLE_DESC_BRANCH "branching rules statistics table"
102 #define TABLE_POSITION_BRANCH 11000 /**< the position of the statistics table */
103 #define TABLE_EARLIEST_STAGE_BRANCH SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
104 
105 #define TABLE_NAME_HEUR "heuristics"
106 #define TABLE_DESC_HEUR "heuristics statistics table"
107 #define TABLE_POSITION_HEUR 12000 /**< the position of the statistics table */
108 #define TABLE_EARLIEST_STAGE_HEUR SCIP_STAGE_PRESOLVING /**< output of the statistics table is only printed from this stage onwards */
109 
110 #define TABLE_NAME_COMPRESSION "compression"
111 #define TABLE_DESC_COMPRESSION "compression statistics table"
112 #define TABLE_POSITION_COMPRESSION 13000 /**< the position of the statistics table */
113 #define TABLE_EARLIEST_STAGE_COMPRESSION SCIP_STAGE_PRESOLVING /**< output of the statistics table is only printed from this stage onwards */
114 
115 #define TABLE_NAME_BENDERS "benders"
116 #define TABLE_DESC_BENDERS "benders' decomposition statistics table"
117 #define TABLE_POSITION_BENDERS 14000 /**< the position of the statistics table */
118 #define TABLE_EARLIEST_STAGE_BENDERS SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
119 
120 #define TABLE_NAME_EXPRHDLRS "exprhdlr"
121 #define TABLE_DESC_EXPRHDLRS "expression handlers statistics table"
122 #define TABLE_POSITION_EXPRHDLRS 14500 /**< the position of the statistics table */
123 #define TABLE_EARLIEST_STAGE_EXPRHDLRS SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
124 
125 #define TABLE_NAME_LP "lp"
126 #define TABLE_DESC_LP "lp statistics table"
127 #define TABLE_POSITION_LP 15000 /**< the position of the statistics table */
128 #define TABLE_EARLIEST_STAGE_LP SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
129 
130 #define TABLE_NAME_NLP "nlp"
131 #define TABLE_DESC_NLP "nlp statistics table"
132 #define TABLE_POSITION_NLP 16000 /**< the position of the statistics table */
133 #define TABLE_EARLIEST_STAGE_NLP SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
134 
135 #define TABLE_NAME_NLPIS "nlpi"
136 #define TABLE_DESC_NLPIS "NLP solver interfaces statistics table"
137 #define TABLE_POSITION_NLPIS 16500 /**< the position of the statistics table */
138 #define TABLE_EARLIEST_STAGE_NLPIS SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
139 
140 #define TABLE_NAME_RELAX "relaxator"
141 #define TABLE_DESC_RELAX "relaxator statistics table"
142 #define TABLE_POSITION_RELAX 17000 /**< the position of the statistics table */
143 #define TABLE_EARLIEST_STAGE_RELAX SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
144 
145 #define TABLE_NAME_TREE "tree"
146 #define TABLE_DESC_TREE "tree statistics table"
147 #define TABLE_POSITION_TREE 18000 /**< the position of the statistics table */
148 #define TABLE_EARLIEST_STAGE_TREE SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
149 
150 #define TABLE_NAME_ROOT "root"
151 #define TABLE_DESC_ROOT "root statistics table"
152 #define TABLE_POSITION_ROOT 19000 /**< the position of the statistics table */
153 #define TABLE_EARLIEST_STAGE_ROOT SCIP_STAGE_SOLVING /**< output of the statistics table is only printed from this stage onwards */
154 
155 #define TABLE_NAME_SOL "solution"
156 #define TABLE_DESC_SOL "solution statistics table"
157 #define TABLE_POSITION_SOL 20000 /**< the position of the statistics table */
158 #define TABLE_EARLIEST_STAGE_SOL SCIP_STAGE_PRESOLVING /**< output of the statistics table is only printed from this stage onwards */
159 
160 #define TABLE_NAME_CONC "concurrentsolver"
161 #define TABLE_DESC_CONC "concurrent solver statistics table"
162 #define TABLE_POSITION_CONC 21000 /**< the position of the statistics table */
163 #define TABLE_EARLIEST_STAGE_CONC SCIP_STAGE_TRANSFORMED /**< output of the statistics table is only printed from this stage onwards */
164 
165 /*
166  * Callback methods of statistics table
167  */
168 
169 /** copy method for statistics table plugins (called when SCIP copies plugins) */
170 static
171 SCIP_DECL_TABLECOPY(tableCopyDefault)
172 { /*lint --e{715}*/
173  assert(scip != NULL);
174  assert(table != NULL);
175 
176  /* call inclusion method of statistics tables (unless it has already been included by the copy call of the first default table) */
177  if( SCIPfindTable(scip, SCIPtableGetName(table)) == NULL )
178  {
180  }
181 
182  return SCIP_OKAY;
183 }
184 
185 /** output method of statistics table to output file stream 'file' */
186 static
187 SCIP_DECL_TABLEOUTPUT(tableOutputStatus)
188 { /*lint --e{715}*/
189  assert(scip != NULL);
190  assert(table != NULL);
191 
193 
194  return SCIP_OKAY;
195 }
196 
197 /** output method of statistics table to output file stream 'file' */
198 static
199 SCIP_DECL_TABLEOUTPUT(tableOutputTiming)
200 { /*lint --e{715}*/
201  assert(scip != NULL);
202  assert(table != NULL);
203 
205 
206  return SCIP_OKAY;
207 }
208 
209 /** output method of statistics table to output file stream 'file' */
210 static
211 SCIP_DECL_TABLEOUTPUT(tableOutputOrigProb)
212 { /*lint --e{715}*/
213  assert(scip != NULL);
214  assert(table != NULL);
215 
217 
218  return SCIP_OKAY;
219 }
220 
221 /** output method of statistics table to output file stream 'file' */
222 static
223 SCIP_DECL_TABLEOUTPUT(tableOutputTransProb)
224 { /*lint --e{715}*/
225  assert(scip != NULL);
226  assert(table != NULL);
227 
229 
230  return SCIP_OKAY;
231 }
232 
233 /** output method of statistics table to output file stream 'file' */
234 static
235 SCIP_DECL_TABLEOUTPUT(tableOutputPresol)
236 { /*lint --e{715}*/
237  assert(scip != NULL);
238  assert(table != NULL);
239 
241 
242  return SCIP_OKAY;
243 }
244 
245 /** output method of statistics table to output file stream 'file' */
246 static
247 SCIP_DECL_TABLEOUTPUT(tableOutputCons)
248 { /*lint --e{715}*/
249  assert(scip != NULL);
250  assert(table != NULL);
251 
253 
254  return SCIP_OKAY;
255 }
256 
257 /** output method of statistics table to output file stream 'file' */
258 static
259 SCIP_DECL_TABLEOUTPUT(tableOutputConstiming)
260 { /*lint --e{715}*/
261  assert(scip != NULL);
262  assert(table != NULL);
263 
265 
266  return SCIP_OKAY;
267 }
268 
269 /** output method of statistics table to output file stream 'file' */
270 static
271 SCIP_DECL_TABLEOUTPUT(tableOutputProp)
272 { /*lint --e{715}*/
273  assert(scip != NULL);
274  assert(table != NULL);
275 
277 
278  return SCIP_OKAY;
279 }
280 
281 /** output method of statistics table to output file stream 'file' */
282 static
283 SCIP_DECL_TABLEOUTPUT(tableOutputConflict)
284 { /*lint --e{715}*/
285  assert(scip != NULL);
286  assert(table != NULL);
287 
289 
290  return SCIP_OKAY;
291 }
292 
293 /** output method of statistics table to output file stream 'file' */
294 static
295 SCIP_DECL_TABLEOUTPUT(tableOutputSepa)
296 { /*lint --e{715}*/
297  assert(scip != NULL);
298  assert(table != NULL);
299 
301 
302  return SCIP_OKAY;
303 }
304 
305 /** output method of statistics table to output file stream 'file' */
306 static
307 SCIP_DECL_TABLEOUTPUT(tableOutputCutsel)
308 { /*lint --e{715}*/
309  assert(scip != NULL);
310  assert(table != NULL);
311 
313 
314  return SCIP_OKAY;
315 }
316 
317 /** output method of statistics table to output file stream 'file' */
318 static
319 SCIP_DECL_TABLEOUTPUT(tableOutputPricer)
320 { /*lint --e{715}*/
321  assert(scip != NULL);
322  assert(table != NULL);
323 
325 
326  return SCIP_OKAY;
327 }
328 
329 /** output method of statistics table to output file stream 'file' */
330 static
331 SCIP_DECL_TABLEOUTPUT(tableOutputBranch)
332 { /*lint --e{715}*/
333  assert(scip != NULL);
334  assert(table != NULL);
335 
337 
338  return SCIP_OKAY;
339 }
340 
341 /** output method of statistics table to output file stream 'file' */
342 static
343 SCIP_DECL_TABLEOUTPUT(tableOutputHeur)
344 { /*lint --e{715}*/
345  assert(scip != NULL);
346  assert(table != NULL);
347 
349 
350  return SCIP_OKAY;
351 }
352 
353 /** output method of statistics table to output file stream 'file' */
354 static
355 SCIP_DECL_TABLEOUTPUT(tableOutputCompression)
356 { /*lint --e{715}*/
357  assert(scip != NULL);
358  assert(table != NULL);
359 
361 
362  return SCIP_OKAY;
363 }
364 
365 /** output method of statistics table to output file stream 'file' */
366 static
367 SCIP_DECL_TABLEOUTPUT(tableOutputLP)
368 { /*lint --e{715}*/
369  assert(scip != NULL);
370  assert(table != NULL);
371 
373 
374  return SCIP_OKAY;
375 }
376 
377 /** output method of statistics table to output file stream 'file' */
378 static
379 SCIP_DECL_TABLEOUTPUT(tableOutputNLP)
380 { /*lint --e{715}*/
381  assert(scip != NULL);
382  assert(table != NULL);
383 
385 
386  return SCIP_OKAY;
387 }
388 
389 /** output method of statistics table to output file stream 'file' */
390 static
391 SCIP_DECL_TABLEOUTPUT(tableOutputRelax)
392 { /*lint --e{715}*/
393  assert(scip != NULL);
394  assert(table != NULL);
395 
397 
398  return SCIP_OKAY;
399 }
400 
401 /** output method of statistics table to output file stream 'file' */
402 static
403 SCIP_DECL_TABLEOUTPUT(tableOutputTree)
404 { /*lint --e{715}*/
405  assert(scip != NULL);
406  assert(table != NULL);
407 
409 
410  return SCIP_OKAY;
411 }
412 
413 /** output method of statistics table to output file stream 'file' */
414 static
415 SCIP_DECL_TABLEOUTPUT(tableOutputRoot)
416 { /*lint --e{715}*/
417  assert(scip != NULL);
418  assert(table != NULL);
419 
421 
422  return SCIP_OKAY;
423 }
424 
425 /** output method of statistics table to output file stream 'file' */
426 static
427 SCIP_DECL_TABLEOUTPUT(tableOutputSol)
428 { /*lint --e{715}*/
429  assert(scip != NULL);
430  assert(table != NULL);
431 
433 
434  return SCIP_OKAY;
435 }
436 
437 /** output method of statistics table to output file stream 'file' */
438 static
439 SCIP_DECL_TABLEOUTPUT(tableOutputConc)
440 { /*lint --e{715}*/
441  assert(scip != NULL);
442  assert(table != NULL);
443 
445 
446  return SCIP_OKAY;
447 }
448 
449 /** output method of statistics table to output file stream 'file' */
450 static
451 SCIP_DECL_TABLEOUTPUT(tableOutputBenders)
452 { /*lint --e{715}*/
453  assert(scip != NULL);
454  assert(table != NULL);
455 
457 
458  return SCIP_OKAY;
459 }
460 
461 /** output method of statistics table to output file stream 'file' */
462 static
463 SCIP_DECL_TABLEOUTPUT(tableOutputExprhdlrs)
464 { /*lint --e{715}*/
465  assert(scip != NULL);
466  assert(table != NULL);
467 
469 
470  return SCIP_OKAY;
471 }
472 
473 /** output method of statistics table to output file stream 'file' */
474 static
475 SCIP_DECL_TABLEOUTPUT(tableOutputNlpis)
476 { /*lint --e{715}*/
477  assert(scip != NULL);
478  assert(table != NULL);
479 
481 
482  return SCIP_OKAY;
483 }
484 
485 
486 /*
487  * statistics table specific interface methods
488  */
489 
490 /** creates the default statistics tables and includes them in SCIP */
492  SCIP* scip /**< SCIP data structure */
493  )
494 {
495  SCIP_TABLE* tmptable;
496 
497  tmptable = SCIPfindTable(scip, TABLE_NAME_STATUS);
498 
499  /* since the default statistics tables are always included all at once in this method,
500  * they should all be included already if the first one is */
501  if( tmptable != NULL )
502  {
503  assert(SCIPfindTable(scip, TABLE_NAME_TIMING) != NULL );
504  assert(SCIPfindTable(scip, TABLE_NAME_ORIGPROB) != NULL );
505  assert(SCIPfindTable(scip, TABLE_NAME_TRANSPROB) != NULL );
506  assert(SCIPfindTable(scip, TABLE_NAME_PRESOL) != NULL );
507  assert(SCIPfindTable(scip, TABLE_NAME_CONS) != NULL );
508  assert(SCIPfindTable(scip, TABLE_NAME_CONSTIMING) != NULL );
509  assert(SCIPfindTable(scip, TABLE_NAME_PROP) != NULL );
510  assert(SCIPfindTable(scip, TABLE_NAME_CONFLICT) != NULL );
511  assert(SCIPfindTable(scip, TABLE_NAME_SEPA) != NULL );
512  assert(SCIPfindTable(scip, TABLE_NAME_PRICER) != NULL );
513  assert(SCIPfindTable(scip, TABLE_NAME_BRANCH) != NULL );
514  assert(SCIPfindTable(scip, TABLE_NAME_HEUR) != NULL );
515  assert(SCIPfindTable(scip, TABLE_NAME_COMPRESSION) != NULL );
516  assert(SCIPfindTable(scip, TABLE_NAME_LP) != NULL );
517  assert(SCIPfindTable(scip, TABLE_NAME_NLP) != NULL );
518  assert(SCIPfindTable(scip, TABLE_NAME_RELAX) != NULL );
519  assert(SCIPfindTable(scip, TABLE_NAME_TREE) != NULL );
520  assert(SCIPfindTable(scip, TABLE_NAME_ROOT) != NULL );
521  assert(SCIPfindTable(scip, TABLE_NAME_SOL) != NULL );
522  assert(SCIPfindTable(scip, TABLE_NAME_CONC) != NULL );
523  assert(SCIPfindTable(scip, TABLE_NAME_BENDERS) != NULL );
524  assert(SCIPfindTable(scip, TABLE_NAME_EXPRHDLRS) != NULL );
525  assert(SCIPfindTable(scip, TABLE_NAME_NLPIS) != NULL );
526 
527  return SCIP_OKAY;
528  }
529 
531  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputStatus,
533 
534  assert(SCIPfindTable(scip, TABLE_NAME_TIMING) == NULL);
536  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputTiming,
538 
539  assert(SCIPfindTable(scip, TABLE_NAME_ORIGPROB) == NULL);
541  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputOrigProb,
543 
544  assert(SCIPfindTable(scip, TABLE_NAME_TRANSPROB) == NULL);
546  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputTransProb,
548 
549  assert(SCIPfindTable(scip, TABLE_NAME_PRESOL) == NULL);
551  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputPresol,
553 
554  assert(SCIPfindTable(scip, TABLE_NAME_CONS) == NULL);
556  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputCons,
558 
559  assert(SCIPfindTable(scip, TABLE_NAME_CONSTIMING) == NULL);
561  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputConstiming,
563 
564  assert(SCIPfindTable(scip, TABLE_NAME_PROP) == NULL);
566  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputProp,
568 
569  assert(SCIPfindTable(scip, TABLE_NAME_CONFLICT) == NULL);
571  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputConflict,
573 
574  assert(SCIPfindTable(scip, TABLE_NAME_SEPA) == NULL);
576  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputSepa,
578 
579  assert(SCIPfindTable(scip, TABLE_NAME_CUTSEL) == NULL);
581  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputCutsel,
583 
584  assert(SCIPfindTable(scip, TABLE_NAME_PRICER) == NULL);
586  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputPricer,
588 
589  assert(SCIPfindTable(scip, TABLE_NAME_BRANCH) == NULL);
591  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputBranch,
593 
594  assert(SCIPfindTable(scip, TABLE_NAME_HEUR) == NULL);
596  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputHeur,
598 
599  assert(SCIPfindTable(scip, TABLE_NAME_COMPRESSION) == NULL);
601  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputCompression,
603 
604  assert(SCIPfindTable(scip, TABLE_NAME_BENDERS) == NULL);
606  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputBenders,
608 
609  assert(SCIPfindTable(scip, TABLE_NAME_EXPRHDLRS) == NULL);
611  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputExprhdlrs,
613 
614  assert(SCIPfindTable(scip, TABLE_NAME_LP) == NULL);
616  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputLP,
618 
619  assert(SCIPfindTable(scip, TABLE_NAME_NLP) == NULL);
621  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputNLP,
623 
624  assert(SCIPfindTable(scip, TABLE_NAME_NLPIS) == NULL);
626  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputNlpis,
628 
629  assert(SCIPfindTable(scip, TABLE_NAME_RELAX) == NULL);
631  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputRelax,
633 
634  assert(SCIPfindTable(scip, TABLE_NAME_TREE) == NULL);
636  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputTree,
638 
639  assert(SCIPfindTable(scip, TABLE_NAME_ROOT) == NULL);
641  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputRoot,
643 
644  assert(SCIPfindTable(scip, TABLE_NAME_SOL) == NULL);
646  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputSol,
648 
649  assert(SCIPfindTable(scip, TABLE_NAME_CONC) == NULL);
651  tableCopyDefault, NULL, NULL, NULL, NULL, NULL, tableOutputConc,
653 
654  return SCIP_OKAY;
655 }
#define TABLE_EARLIEST_STAGE_EXPRHDLRS
#define TABLE_DESC_PRICER
Definition: table_default.c:96
#define TABLE_POSITION_PRESOL
Definition: table_default.c:62
#define TABLE_EARLIEST_STAGE_ORIGPROB
Definition: table_default.c:53
void SCIPprintSeparatorStatistics(SCIP *scip, FILE *file)
#define NULL
Definition: def.h:267
#define TABLE_NAME_TREE
SCIP_RETCODE SCIPincludeTable(SCIP *scip, const char *name, const char *desc, SCIP_Bool active, SCIP_DECL_TABLECOPY((*tablecopy)), SCIP_DECL_TABLEFREE((*tablefree)), SCIP_DECL_TABLEINIT((*tableinit)), SCIP_DECL_TABLEEXIT((*tableexit)), SCIP_DECL_TABLEINITSOL((*tableinitsol)), SCIP_DECL_TABLEEXITSOL((*tableexitsol)), SCIP_DECL_TABLEOUTPUT((*tableoutput)), SCIP_TABLEDATA *tabledata, int position, SCIP_STAGE earlieststage)
Definition: scip_table.c:56
void SCIPprintConstraintStatistics(SCIP *scip, FILE *file)
#define TABLE_DESC_BENDERS
#define TABLE_NAME_CONSTIMING
Definition: table_default.c:70
#define TABLE_EARLIEST_STAGE_NLP
#define TABLE_POSITION_SEPA
Definition: table_default.c:87
#define TABLE_NAME_BRANCH
#define TABLE_POSITION_BENDERS
#define TABLE_EARLIEST_STAGE_NLPIS
#define TABLE_DESC_CUTSEL
Definition: table_default.c:91
#define TABLE_EARLIEST_STAGE_CONS
Definition: table_default.c:68
void SCIPprintConcsolverStatistics(SCIP *scip, FILE *file)
SCIP_TABLE * SCIPfindTable(SCIP *scip, const char *name)
Definition: scip_table.c:94
#define TABLE_DESC_ROOT
#define TABLE_DESC_PROP
Definition: table_default.c:76
void SCIPprintStatusStatistics(SCIP *scip, FILE *file)
void SCIPprintBendersStatistics(SCIP *scip, FILE *file)
void SCIPprintTransProblemStatistics(SCIP *scip, FILE *file)
void SCIPprintTimingStatistics(SCIP *scip, FILE *file)
const char * SCIPtableGetName(SCIP_TABLE *table)
Definition: table.c:309
#define TABLE_DESC_HEUR
#define TABLE_POSITION_CONS
Definition: table_default.c:67
#define TABLE_NAME_PROP
Definition: table_default.c:75
#define TABLE_EARLIEST_STAGE_ROOT
#define TRUE
Definition: def.h:93
enum SCIP_Retcode SCIP_RETCODE
Definition: type_retcode.h:63
default statistics tables
#define TABLE_NAME_NLP
void SCIPprintHeuristicStatistics(SCIP *scip, FILE *file)
#define TABLE_POSITION_ORIGPROB
Definition: table_default.c:52
void SCIPprintPresolverStatistics(SCIP *scip, FILE *file)
#define TABLE_EARLIEST_STAGE_CONSTIMING
Definition: table_default.c:73
#define TABLE_POSITION_RELAX
#define TABLE_POSITION_PROP
Definition: table_default.c:77
#define TABLE_NAME_SOL
#define TABLE_DESC_SEPA
Definition: table_default.c:86
#define TABLE_DESC_RELAX
void SCIPprintBranchruleStatistics(SCIP *scip, FILE *file)
#define TABLE_EARLIEST_STAGE_CONFLICT
Definition: table_default.c:83
#define TABLE_DESC_CONSTIMING
Definition: table_default.c:71
public methods for querying solving statistics
#define TABLE_NAME_TRANSPROB
Definition: table_default.c:55
#define TABLE_POSITION_ROOT
#define TABLE_POSITION_CONFLICT
Definition: table_default.c:82
#define TABLE_DESC_PRESOL
Definition: table_default.c:61
#define TABLE_DESC_CONS
Definition: table_default.c:66
#define TABLE_DESC_SOL
#define TABLE_DESC_NLPIS
#define TABLE_EARLIEST_STAGE_TRANSPROB
Definition: table_default.c:58
#define TABLE_POSITION_LP
#define TABLE_NAME_EXPRHDLRS
#define TABLE_NAME_TIMING
Definition: table_default.c:45
public methods for displaying statistic tables
#define TABLE_NAME_STATUS
Definition: table_default.c:40
#define TABLE_POSITION_TREE
#define TABLE_NAME_NLPIS
#define TABLE_POSITION_STATUS
Definition: table_default.c:42
#define TABLE_NAME_PRESOL
Definition: table_default.c:60
#define TABLE_DESC_STATUS
Definition: table_default.c:41
#define TABLE_POSITION_EXPRHDLRS
#define TABLE_EARLIEST_STAGE_BENDERS
SCIP_RETCODE SCIPincludeTableDefault(SCIP *scip)
void SCIPprintConflictStatistics(SCIP *scip, FILE *file)
void SCIPprintCompressionStatistics(SCIP *scip, FILE *file)
static SCIP_DECL_TABLECOPY(tableCopyDefault)
void SCIPprintLPStatistics(SCIP *scip, FILE *file)
#define TABLE_POSITION_HEUR
void SCIPprintPropagatorStatistics(SCIP *scip, FILE *file)
#define TABLE_NAME_RELAX
#define TABLE_DESC_TIMING
Definition: table_default.c:46
#define TABLE_DESC_CONFLICT
Definition: table_default.c:81
#define SCIP_CALL(x)
Definition: def.h:380
#define TABLE_EARLIEST_STAGE_PRICER
Definition: table_default.c:98
#define TABLE_EARLIEST_STAGE_BRANCH
#define TABLE_EARLIEST_STAGE_SOL
void SCIPprintRootStatistics(SCIP *scip, FILE *file)
#define TABLE_NAME_CONS
Definition: table_default.c:65
#define TABLE_EARLIEST_STAGE_RELAX
#define TABLE_POSITION_NLPIS
#define TABLE_DESC_LP
#define TABLE_POSITION_CUTSEL
Definition: table_default.c:92
#define TABLE_POSITION_SOL
#define TABLE_EARLIEST_STAGE_PROP
Definition: table_default.c:78
#define TABLE_NAME_CUTSEL
Definition: table_default.c:90
#define TABLE_POSITION_CONSTIMING
Definition: table_default.c:72
void SCIPprintRelaxatorStatistics(SCIP *scip, FILE *file)
void SCIPprintTreeStatistics(SCIP *scip, FILE *file)
void SCIPprintSolutionStatistics(SCIP *scip, FILE *file)
public methods for statistics table plugins
#define TABLE_POSITION_TRANSPROB
Definition: table_default.c:57
void SCIPprintExpressionHandlerStatistics(SCIP *scip, FILE *file)
void SCIPprintNLPStatistics(SCIP *scip, FILE *file)
#define TABLE_DESC_TRANSPROB
Definition: table_default.c:56
#define TABLE_NAME_HEUR
#define TABLE_NAME_BENDERS
#define TABLE_NAME_PRICER
Definition: table_default.c:95
#define TABLE_EARLIEST_STAGE_HEUR
void SCIPprintNLPIStatistics(SCIP *scip, FILE *file)
void SCIPprintPricerStatistics(SCIP *scip, FILE *file)
#define TABLE_NAME_ROOT
#define TABLE_POSITION_PRICER
Definition: table_default.c:97
#define TABLE_EARLIEST_STAGE_TIMING
Definition: table_default.c:48
static SCIP_DECL_TABLEOUTPUT(tableOutputStatus)
#define TABLE_NAME_COMPRESSION
#define TABLE_DESC_CONC
void SCIPprintCutselectorStatistics(SCIP *scip, FILE *file)
#define TABLE_EARLIEST_STAGE_CONC
#define TABLE_NAME_LP
#define TABLE_POSITION_CONC
#define TABLE_DESC_COMPRESSION
#define TABLE_NAME_CONFLICT
Definition: table_default.c:80
#define TABLE_DESC_TREE
#define TABLE_EARLIEST_STAGE_LP
public methods for message output
#define TABLE_POSITION_NLP
#define TABLE_NAME_ORIGPROB
Definition: table_default.c:50
#define TABLE_EARLIEST_STAGE_PRESOL
Definition: table_default.c:63
#define TABLE_DESC_BRANCH
#define TABLE_EARLIEST_STAGE_SEPA
Definition: table_default.c:88
#define TABLE_EARLIEST_STAGE_STATUS
Definition: table_default.c:43
void SCIPprintConstraintTimingStatistics(SCIP *scip, FILE *file)
#define TABLE_NAME_SEPA
Definition: table_default.c:85
#define TABLE_POSITION_COMPRESSION
#define TABLE_EARLIEST_STAGE_COMPRESSION
#define TABLE_POSITION_BRANCH
#define TABLE_DESC_ORIGPROB
Definition: table_default.c:51
#define TABLE_POSITION_TIMING
Definition: table_default.c:47
#define TABLE_DESC_NLP
void SCIPprintOrigProblemStatistics(SCIP *scip, FILE *file)
#define TABLE_NAME_CONC
#define TABLE_EARLIEST_STAGE_CUTSEL
Definition: table_default.c:93
#define TABLE_EARLIEST_STAGE_TREE
#define TABLE_DESC_EXPRHDLRS