Scippy

SCIP

Solving Constraint Integer Programs

paramset.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-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 paramset.h
26  * @ingroup INTERNALAPI
27  * @brief internal methods for handling parameter settings
28  * @author Tobias Achterberg
29  * @author Timo Berthold
30  */
31 
32 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
33 
34 #ifndef __SCIP_PARAMSET_H__
35 #define __SCIP_PARAMSET_H__
36 
37 
38 #include "scip/def.h"
39 #include "blockmemshell/memory.h"
40 #include "scip/type_set.h"
41 #include "scip/type_retcode.h"
42 #include "scip/type_paramset.h"
43 #include "scip/pub_paramset.h"
44 #include "scip/pub_misc.h"
45 
46 #ifdef __cplusplus
47 extern "C" {
48 #endif
49 
50 /** creates parameter set */
52  SCIP_PARAMSET** paramset, /**< pointer to store the parameter set */
53  BMS_BLKMEM* blkmem /**< block memory */
54  );
55 
56 /** frees parameter set */
57 void SCIPparamsetFree(
58  SCIP_PARAMSET** paramset, /**< pointer to the parameter set */
59  BMS_BLKMEM* blkmem /**< block memory */
60  );
61 
62 /** creates a bool parameter, sets it to its default value, and adds it to the parameter set */
64  SCIP_PARAMSET* paramset, /**< parameter set */
65  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
66  BMS_BLKMEM* blkmem, /**< block memory */
67  const char* name, /**< name of the parameter */
68  const char* desc, /**< description of the parameter */
69  SCIP_Bool* valueptr, /**< pointer to store the current parameter value, or NULL */
70  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
71  SCIP_Bool defaultvalue, /**< default value of the parameter */
72  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
73  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
74  );
75 
76 /** creates a int parameter, sets it to its default value, and adds it to the parameter set */
78  SCIP_PARAMSET* paramset, /**< parameter set */
79  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
80  BMS_BLKMEM* blkmem, /**< block memory */
81  const char* name, /**< name of the parameter */
82  const char* desc, /**< description of the parameter */
83  int* valueptr, /**< pointer to store the current parameter value, or NULL */
84  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
85  int defaultvalue, /**< default value of the parameter */
86  int minvalue, /**< minimum value for parameter */
87  int maxvalue, /**< maximum value for parameter */
88  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
89  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
90  );
91 
92 /** creates a SCIP_Longint parameter, sets it to its default value, and adds it to the parameter set */
94  SCIP_PARAMSET* paramset, /**< parameter set */
95  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
96  BMS_BLKMEM* blkmem, /**< block memory */
97  const char* name, /**< name of the parameter */
98  const char* desc, /**< description of the parameter */
99  SCIP_Longint* valueptr, /**< pointer to store the current parameter value, or NULL */
100  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
101  SCIP_Longint defaultvalue, /**< default value of the parameter */
102  SCIP_Longint minvalue, /**< minimum value for parameter */
103  SCIP_Longint maxvalue, /**< maximum value for parameter */
104  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
105  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
106  );
107 
108 /** creates a SCIP_Real parameter, sets it to its default value, and adds it to the parameter set */
110  SCIP_PARAMSET* paramset, /**< parameter set */
111  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
112  BMS_BLKMEM* blkmem, /**< block memory */
113  const char* name, /**< name of the parameter */
114  const char* desc, /**< description of the parameter */
115  SCIP_Real* valueptr, /**< pointer to store the current parameter value, or NULL */
116  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
117  SCIP_Real defaultvalue, /**< default value of the parameter */
118  SCIP_Real minvalue, /**< minimum value for parameter */
119  SCIP_Real maxvalue, /**< maximum value for parameter */
120  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
121  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
122  );
123 
124 /** creates a char parameter, sets it to its default value, and adds it to the parameter set */
126  SCIP_PARAMSET* paramset, /**< parameter set */
127  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
128  BMS_BLKMEM* blkmem, /**< block memory */
129  const char* name, /**< name of the parameter */
130  const char* desc, /**< description of the parameter */
131  char* valueptr, /**< pointer to store the current parameter value, or NULL */
132  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
133  char defaultvalue, /**< default value of the parameter */
134  const char* allowedvalues, /**< array with possible parameter values, or NULL if not restricted */
135  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
136  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
137  );
138 
139 /** creates a string parameter, sets it to its default value, and adds it to the parameter set */
141  SCIP_PARAMSET* paramset, /**< parameter set */
142  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
143  BMS_BLKMEM* blkmem, /**< block memory */
144  const char* name, /**< name of the parameter */
145  const char* desc, /**< description of the parameter */
146  char** valueptr, /**< pointer to store the current parameter value, or NULL */
147  SCIP_Bool isadvanced, /**< is this parameter an advanced parameter? */
148  const char* defaultvalue, /**< default value of the parameter */
149  SCIP_DECL_PARAMCHGD ((*paramchgd)), /**< change information method of parameter */
150  SCIP_PARAMDATA* paramdata /**< locally defined parameter specific data */
151  );
152 
153 /** returns whether an existing parameter is fixed */
155  SCIP_PARAMSET* paramset, /**< parameter set */
156  const char* name /**< name of the parameter */
157  );
158 
159 /** returns the pointer to an existing SCIP parameter */
161  SCIP_PARAMSET* paramset, /**< parameter set */
162  const char* name /**< name of the parameter */
163  );
164 
165 /** gets the value of an existing SCIP_Bool parameter */
167  SCIP_PARAMSET* paramset, /**< parameter set */
168  const char* name, /**< name of the parameter */
169  SCIP_Bool* value /**< pointer to store the parameter */
170  );
171 
172 /** gets the value of an existing int parameter */
174  SCIP_PARAMSET* paramset, /**< parameter set */
175  const char* name, /**< name of the parameter */
176  int* value /**< pointer to store the parameter */
177  );
178 
179 /** gets the value of an existing SCIP_Longint parameter */
181  SCIP_PARAMSET* paramset, /**< parameter set */
182  const char* name, /**< name of the parameter */
183  SCIP_Longint* value /**< pointer to store the parameter */
184  );
185 
186 /** gets the value of an existing SCIP_Real parameter */
188  SCIP_PARAMSET* paramset, /**< parameter set */
189  const char* name, /**< name of the parameter */
190  SCIP_Real* value /**< pointer to store the parameter */
191  );
192 
193 /** gets the value of an existing char parameter */
195  SCIP_PARAMSET* paramset, /**< parameter set */
196  const char* name, /**< name of the parameter */
197  char* value /**< pointer to store the parameter */
198  );
199 
200 /** gets the value of an existing string parameter */
202  SCIP_PARAMSET* paramset, /**< parameter set */
203  const char* name, /**< name of the parameter */
204  char** value /**< pointer to store the parameter */
205  );
206 
207 /** changes the fixing status of an existing parameter */
209  SCIP_PARAMSET* paramset, /**< parameter set */
210  const char* name, /**< name of the parameter */
211  SCIP_Bool fixed /**< new fixing status of the parameter */
212  );
213 
214 /** changes the value of an existing SCIP_Bool parameter */
216  SCIP_PARAMSET* paramset, /**< parameter set */
217  SCIP_SET* set, /**< global SCIP settings */
218  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
219  const char* name, /**< name of the parameter */
220  SCIP_Bool value /**< new value of the parameter */
221  );
222 
223 /** changes the value of an existing int parameter */
225  SCIP_PARAMSET* paramset, /**< parameter set */
226  SCIP_SET* set, /**< global SCIP settings */
227  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
228  const char* name, /**< name of the parameter */
229  int value /**< new value of the parameter */
230  );
231 
232 /** changes the value of an existing SCIP_Longint parameter */
234  SCIP_PARAMSET* paramset, /**< parameter set */
235  SCIP_SET* set, /**< global SCIP settings */
236  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
237  const char* name, /**< name of the parameter */
238  SCIP_Longint value /**< new value of the parameter */
239  );
240 
241 /** changes the value of an existing SCIP_Real parameter */
243  SCIP_PARAMSET* paramset, /**< parameter set */
244  SCIP_SET* set, /**< global SCIP settings */
245  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
246  const char* name, /**< name of the parameter */
247  SCIP_Real value /**< new value of the parameter */
248  );
249 
250 /** changes the value of an existing char parameter */
252  SCIP_PARAMSET* paramset, /**< parameter set */
253  SCIP_SET* set, /**< global SCIP settings */
254  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
255  const char* name, /**< name of the parameter */
256  char value /**< new value of the parameter */
257  );
258 
259 /** changes the value of an existing string parameter */
261  SCIP_PARAMSET* paramset, /**< parameter set */
262  SCIP_SET* set, /**< global SCIP settings */
263  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
264  const char* name, /**< name of the parameter */
265  const char* value /**< new value of the parameter */
266  );
267 
268 /** changes the value of an existing parameter */
270  SCIP_PARAMSET* paramset, /**< parameter set */
271  SCIP_SET* set, /**< global SCIP settings */
272  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
273  const char* name, /**< name of the parameter */
274  const char* value, /**< new value of the parameter as string */
275  SCIP_Bool fix /**< whether to fix parameter */
276  );
277 
278 /** changes the default value of an existing SCIP_Bool parameter */
280  SCIP_PARAMSET* paramset, /**< parameter set */
281  const char* name, /**< name of the parameter */
282  SCIP_Bool defaultvalue /**< new default value of the parameter */
283  );
284 
285 /** changes the default value of an existing int parameter */
287  SCIP_PARAMSET* paramset, /**< parameter set */
288  const char* name, /**< name of the parameter */
289  int defaultvalue /**< new default value of the parameter */
290  );
291 
292 /** changes the default value of an existing SCIP_Longint parameter */
294  SCIP_PARAMSET* paramset, /**< parameter set */
295  const char* name, /**< name of the parameter */
296  SCIP_Longint defaultvalue /**< new default value of the parameter */
297  );
298 
299 /** changes the default value of an existing SCIP_Real parameter */
301  SCIP_PARAMSET* paramset, /**< parameter set */
302  const char* name, /**< name of the parameter */
303  SCIP_Real defaultvalue /**< new default value of the parameter */
304  );
305 
306 /** changes the default value of an existing char parameter */
308  SCIP_PARAMSET* paramset, /**< parameter set */
309  const char* name, /**< name of the parameter */
310  char defaultvalue /**< new default value of the parameter */
311  );
312 
313 /** changes the default value of an existing string parameter */
315  SCIP_PARAMSET* paramset, /**< parameter set */
316  const char* name, /**< name of the parameter */
317  const char* defaultvalue /**< new default value of the parameter */
318  );
319 
320 /** reads parameters from a file */
322  SCIP_PARAMSET* paramset, /**< parameter set */
323  SCIP_SET* set, /**< global SCIP settings */
324  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
325  const char* filename /**< file name */
326  );
327 
328 /** writes all parameters in the parameter set to a file */
330  SCIP_PARAMSET* paramset, /**< parameter set */
331  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
332  const char* filename, /**< file name, or NULL for stdout */
333  SCIP_Bool comments, /**< should parameter descriptions be written as comments? */
334  SCIP_Bool onlychanged /**< should only the parameters been written, that are changed from default? */
335  );
336 
337 /** installs default values for all parameters */
339  SCIP_PARAMSET* paramset, /**< parameter set */
340  SCIP_SET* set, /**< global SCIP settings */
341  SCIP_MESSAGEHDLR* messagehdlr /**< message handler */
342  );
343 
344 /** installs default value for a single parameter */
346  SCIP_PARAMSET* paramset, /**< parameter set */
347  SCIP_SET* set, /**< global SCIP settings */
348  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
349  const char* paramname /**< name of the parameter */
350  );
351 
352 /** sets parameters to
353  *
354  * - \ref SCIP_PARAMEMPHASIS_DEFAULT to use default values (see also SCIPparamsetSetToDefault())
355  * - \ref SCIP_PARAMEMPHASIS_COUNTER to get feasible and "fast" counting process
356  * - \ref SCIP_PARAMEMPHASIS_CPSOLVER to get CP like search (e.g. no LP relaxation)
357  * - \ref SCIP_PARAMEMPHASIS_EASYCIP to solve easy problems fast
358  * - \ref SCIP_PARAMEMPHASIS_FEASIBILITY to detect feasibility fast
359  * - \ref SCIP_PARAMEMPHASIS_HARDLP to be capable to handle hard LPs
360  * - \ref SCIP_PARAMEMPHASIS_OPTIMALITY to prove optimality fast
361  * - \ref SCIP_PARAMEMPHASIS_PHASEFEAS to find feasible solutions during a 3 phase solution process
362  * - \ref SCIP_PARAMEMPHASIS_PHASEIMPROVE to find improved solutions during a 3 phase solution process
363  * - \ref SCIP_PARAMEMPHASIS_PHASEPROOF to proof optimality during a 3 phase solution process
364  * - \ref SCIP_PARAMEMPHASIS_NUMERICS to solve problems which cause numerical issues
365  */
367  SCIP_PARAMSET* paramset, /**< parameter set */
368  SCIP_SET* set, /**< global SCIP settings */
369  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
370  SCIP_PARAMEMPHASIS paramemphasis, /**< parameter emphasis */
371  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
372  );
373 
374 /** sets parameters to deactivate separators and heuristics that use auxiliary SCIP instances; should be called for
375  * auxiliary SCIP instances to avoid recursion
376  */
378  SCIP_PARAMSET* paramset, /**< parameter set */
379  SCIP_SET* set, /**< global SCIP settings */
380  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
381  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
382  );
383 
384 /** sets heuristic parameters values to
385  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all heuristic parameters
386  * - SCIP_PARAMSETTING_FAST such that the time spend for heuristic is decreased
387  * - SCIP_PARAMSETTING_AGGRESSIVE such that the heuristic are called more aggregative
388  * - SCIP_PARAMSETTING_OFF which turn off all heuristics
389  */
391  SCIP_PARAMSET* paramset, /**< parameter set */
392  SCIP_SET* set, /**< global SCIP settings */
393  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
394  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
395  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
396  );
397 
398 /** sets presolving parameters to
399  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all presolving parameters
400  * - SCIP_PARAMSETTING_FAST such that the time spend for presolving is decreased
401  * - SCIP_PARAMSETTING_AGGRESSIVE such that the presolving is more aggregative
402  * - SCIP_PARAMSETTING_OFF which turn off all presolving
403  */
405  SCIP_PARAMSET* paramset, /**< parameter set */
406  SCIP_SET* set, /**< global SCIP settings */
407  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
408  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
409  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
410  );
411 
412 /** sets separating parameters to
413  * - SCIP_PARAMSETTING_DEFAULT which are the default values of all separating parameters
414  * - SCIP_PARAMSETTING_FAST such that the time spend for separating is decreased
415  * - SCIP_PARAMSETTING_AGGRESSIVE such that the separating is done more aggregative
416  * - SCIP_PARAMSETTING_OFF which turn off all separating
417  */
419  SCIP_PARAMSET* paramset, /**< parameter set */
420  SCIP_SET* set, /**< global SCIP settings */
421  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
422  SCIP_PARAMSETTING paramsetting, /**< parameter settings */
423  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
424  );
425 
426 /** returns the array of parameters */
428  SCIP_PARAMSET* paramset /**< parameter set */
429  );
430 
431 /** returns the number of parameters in the parameter set */
433  SCIP_PARAMSET* paramset /**< parameter set */
434  );
435 
436 /** copies all parameter values of the source parameter set to the corresponding parameters in the target set */
438  SCIP_PARAMSET* sourceparamset, /**< source parameter set */
439  SCIP_PARAMSET* targetparamset, /**< target parameter set */
440  SCIP_SET* set, /**< global SCIP settings of target SCIP */
441  SCIP_MESSAGEHDLR* messagehdlr /**< message handler of target SCIP */
442  );
443 
444 /** checks whether value of SCIP_Bool parameter is valid */
446  SCIP_PARAM* param, /**< parameter */
447  SCIP_Bool value /**< value to check */
448  );
449 
450 /** checks whether value of integer parameter is valid */
452  SCIP_PARAM* param, /**< parameter */
453  int value /**< value to check */
454  );
455 
456 /** checks whether value of SCIP_Longint parameter is valid */
458  SCIP_PARAM* param, /**< parameter */
459  SCIP_Longint value /**< value to check */
460  );
461 
462 /** checks whether value of SCIP_Real parameter is valid */
464  SCIP_PARAM* param, /**< parameter */
465  SCIP_Real value /**< value to check */
466  );
467 
468 /** checks whether value of char parameter is valid */
470  SCIP_PARAM* param, /**< parameter */
471  const char value /**< value to check */
472  );
473 
474 /** checks whether value of string parameter is valid */
476  SCIP_PARAM* param, /**< parameter */
477  const char* value /**< value to check */
478  );
479 
480 /** sets value of SCIP_Bool parameter */
482  SCIP_PARAM* param, /**< parameter */
483  SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */
484  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
485  SCIP_Bool value, /**< new value of the parameter */
486  SCIP_Bool initialize, /**< is this the initialization of the parameter? */
487  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
488  );
489 
490 /** sets value of int parameter */
492  SCIP_PARAM* param, /**< parameter */
493  SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */
494  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
495  int value, /**< new value of the parameter */
496  SCIP_Bool initialize, /**< is this the initialization of the parameter? */
497  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
498  );
499 
500 /** sets value of SCIP_Longint parameter */
502  SCIP_PARAM* param, /**< parameter */
503  SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */
504  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
505  SCIP_Longint value, /**< new value of the parameter */
506  SCIP_Bool initialize, /**< is this the initialization of the parameter? */
507  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
508  );
509 
510 /** sets value of SCIP_Real parameter */
512  SCIP_PARAM* param, /**< parameter */
513  SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */
514  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
515  SCIP_Real value, /**< new value of the parameter */
516  SCIP_Bool initialize, /**< is this the initialization of the parameter? */
517  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
518  );
519 
520 /** sets value of char parameter */
522  SCIP_PARAM* param, /**< parameter */
523  SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */
524  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
525  char value, /**< new value of the parameter */
526  SCIP_Bool initialize, /**< is this the initialization of the parameter? */
527  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
528  );
529 
530 /** sets value of string parameter */
532  SCIP_PARAM* param, /**< parameter */
533  SCIP_SET* set, /**< global SCIP settings, or NULL if param change method should not be called */
534  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
535  const char* value, /**< new value of the parameter */
536  SCIP_Bool initialize, /**< is this the initialization of the parameter? */
537  SCIP_Bool quiet /**< should the parameter be set quiet (no output) */
538  );
539 
540 /** sets default value of SCIP_Bool parameter */
542  SCIP_PARAM* param, /**< parameter */
543  SCIP_Bool defaultvalue /**< new default value */
544  );
545 
546 /** sets default value of int parameter */
548  SCIP_PARAM* param, /**< parameter */
549  int defaultvalue /**< new default value */
550  );
551 
552 /** sets default value of SCIP_Longint parameter */
554  SCIP_PARAM* param, /**< parameter */
555  SCIP_Longint defaultvalue /**< new default value */
556  );
557 
558 /** sets default value of SCIP_Real parameter */
560  SCIP_PARAM* param, /**< parameter */
561  SCIP_Real defaultvalue /**< new default value */
562  );
563 
564 /** sets default value of char parameter */
566  SCIP_PARAM* param, /**< parameter */
567  char defaultvalue /**< new default value */
568  );
569 
570 /** sets default value of string parameter */
572  SCIP_PARAM* param, /**< parameter */
573  const char* defaultvalue /**< new default value */
574  );
575 
576 /** sets the parameter to its default setting */
578  SCIP_PARAM* param, /**< parameter */
579  SCIP_SET* set, /**< global SCIP settings */
580  SCIP_MESSAGEHDLR* messagehdlr /**< message handler */
581  );
582 
583 /** writes a single parameter to a file */
585  SCIP_PARAM* param, /**< parameter */
586  SCIP_MESSAGEHDLR* messagehdlr, /**< message handler */
587  const char* filename, /**< file name, or NULL for stdout */
588  SCIP_Bool comments, /**< should parameter descriptions be written as comments? */
589  SCIP_Bool onlychanged /**< should only the parameters been written, that are changed from default? */
590  );
591 
592 #ifdef __cplusplus
593 }
594 #endif
595 
596 #endif
SCIP_Bool SCIPparamIsValidInt(SCIP_PARAM *param, int value)
Definition: paramset.c:4453
SCIP_RETCODE SCIPparamsetWrite(SCIP_PARAMSET *paramset, SCIP_MESSAGEHDLR *messagehdlr, const char *filename, SCIP_Bool comments, SCIP_Bool onlychanged)
Definition: paramset.c:2710
void SCIPparamSetDefaultReal(SCIP_PARAM *param, SCIP_Real defaultvalue)
Definition: paramset.c:4952
SCIP_RETCODE SCIPparamsetFix(SCIP_PARAMSET *paramset, const char *name, SCIP_Bool fixed)
Definition: paramset.c:1916
void SCIPparamSetDefaultLongint(SCIP_PARAM *param, SCIP_Longint defaultvalue)
Definition: paramset.c:4938
SCIP_Bool SCIPparamIsValidLongint(SCIP_PARAM *param, SCIP_Longint value)
Definition: paramset.c:4464
SCIP_RETCODE SCIPparamSetString(SCIP_PARAM *param, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *value, SCIP_Bool initialize, SCIP_Bool quiet)
Definition: paramset.c:4841
struct SCIP_ParamData SCIP_PARAMDATA
Definition: type_paramset.h:87
SCIP_RETCODE SCIPparamsetSetToDefault(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *paramname)
Definition: paramset.c:2811
SCIP_RETCODE SCIPparamsetAddChar(SCIP_PARAMSET *paramset, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, char *valueptr, SCIP_Bool isadvanced, char defaultvalue, const char *allowedvalues, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: paramset.c:1616
SCIP_RETCODE SCIPparamsetSetToDefaults(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr)
Definition: paramset.c:2793
void SCIPparamSetDefaultBool(SCIP_PARAM *param, SCIP_Bool defaultvalue)
Definition: paramset.c:4912
enum SCIP_Retcode SCIP_RETCODE
Definition: type_retcode.h:63
SCIP_RETCODE SCIPparamsetGetInt(SCIP_PARAMSET *paramset, const char *name, int *value)
Definition: paramset.c:1756
type definitions for global SCIP settings
SCIP_RETCODE SCIPparamsetSetReal(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *name, SCIP_Real value)
Definition: paramset.c:2042
SCIP_RETCODE SCIPparamsetSetToSubscipsOff(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_Bool quiet)
Definition: paramset.c:4106
SCIP_RETCODE SCIPparamsetGetBool(SCIP_PARAMSET *paramset, const char *name, SCIP_Bool *value)
Definition: paramset.c:1724
type definitions for return codes for SCIP methods
SCIP_RETCODE SCIPparamsetSetSeparating(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: paramset.c:4283
SCIP_PARAM * SCIPparamsetGetParam(SCIP_PARAMSET *paramset, const char *name)
Definition: paramset.c:1712
SCIP_RETCODE SCIPparamsetCreate(SCIP_PARAMSET **paramset, BMS_BLKMEM *blkmem)
Definition: paramset.c:1426
enum SCIP_ParamSetting SCIP_PARAMSETTING
Definition: type_paramset.h:65
public methods for handling parameter settings
SCIP_RETCODE SCIPparamSetChar(SCIP_PARAM *param, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, char value, SCIP_Bool initialize, SCIP_Bool quiet)
Definition: paramset.c:4780
SCIP_RETCODE SCIPparamSetLongint(SCIP_PARAM *param, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_Longint value, SCIP_Bool initialize, SCIP_Bool quiet)
Definition: paramset.c:4654
int SCIPparamsetGetNParams(SCIP_PARAMSET *paramset)
Definition: paramset.c:4324
#define SCIP_DECL_PARAMCHGD(x)
SCIP_RETCODE SCIPparamsetSetHeuristics(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: paramset.c:4211
SCIP_RETCODE SCIPparamsetGetLongint(SCIP_PARAMSET *paramset, const char *name, SCIP_Longint *value)
Definition: paramset.c:1788
SCIP_RETCODE SCIPparamSetBool(SCIP_PARAM *param, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_Bool value, SCIP_Bool initialize, SCIP_Bool quiet)
Definition: paramset.c:4530
SCIP_RETCODE SCIPparamsetAddString(SCIP_PARAMSET *paramset, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, char **valueptr, SCIP_Bool isadvanced, const char *defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: paramset.c:1645
SCIP_RETCODE SCIPparamSetInt(SCIP_PARAM *param, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, int value, SCIP_Bool initialize, SCIP_Bool quiet)
Definition: paramset.c:4592
SCIP_RETCODE SCIPparamsetSetInt(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *name, int value)
Definition: paramset.c:1974
SCIP_Bool SCIPparamIsValidReal(SCIP_PARAM *param, SCIP_Real value)
Definition: paramset.c:4475
SCIP_RETCODE SCIPparamsetSetDefaultLongint(SCIP_PARAMSET *paramset, const char *name, SCIP_Longint defaultvalue)
Definition: paramset.c:2265
public data structures and miscellaneous methods
#define SCIP_Bool
Definition: def.h:91
SCIP_RETCODE SCIPparamsetSetDefaultBool(SCIP_PARAMSET *paramset, const char *name, SCIP_Bool defaultvalue)
Definition: paramset.c:2203
static const char * paramname[]
Definition: lpi_msk.c:5096
SCIP_RETCODE SCIPparamsetSetDefaultInt(SCIP_PARAMSET *paramset, const char *name, int defaultvalue)
Definition: paramset.c:2234
SCIP_RETCODE SCIPparamsetSetBool(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *name, SCIP_Bool value)
Definition: paramset.c:1940
SCIP_RETCODE SCIPparamsetAddInt(SCIP_PARAMSET *paramset, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int *valueptr, SCIP_Bool isadvanced, int defaultvalue, int minvalue, int maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: paramset.c:1526
SCIP_Bool SCIPparamIsValidBool(SCIP_PARAM *param, SCIP_Bool value)
Definition: paramset.c:4443
SCIP_RETCODE SCIPparamsetGetReal(SCIP_PARAMSET *paramset, const char *name, SCIP_Real *value)
Definition: paramset.c:1820
void SCIPparamsetFree(SCIP_PARAMSET **paramset, BMS_BLKMEM *blkmem)
Definition: paramset.c:1446
SCIP_RETCODE SCIPparamsetRead(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *filename)
Definition: paramset.c:2660
SCIP_RETCODE SCIPparamsetGetString(SCIP_PARAMSET *paramset, const char *name, char **value)
Definition: paramset.c:1884
SCIP_RETCODE SCIPparamsetSetEmphasis(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_PARAMEMPHASIS paramemphasis, SCIP_Bool quiet)
Definition: paramset.c:3838
SCIP_RETCODE SCIPparamsetAddLongint(SCIP_PARAMSET *paramset, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, SCIP_Longint *valueptr, SCIP_Bool isadvanced, SCIP_Longint defaultvalue, SCIP_Longint minvalue, SCIP_Longint maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: paramset.c:1556
void SCIPparamSetDefaultString(SCIP_PARAM *param, const char *defaultvalue)
Definition: paramset.c:4978
SCIP_RETCODE SCIPparamsetGetChar(SCIP_PARAMSET *paramset, const char *name, char *value)
Definition: paramset.c:1852
enum SCIP_ParamEmphasis SCIP_PARAMEMPHASIS
Definition: type_paramset.h:84
SCIP_RETCODE SCIPparamsetSetChar(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *name, char value)
Definition: paramset.c:2076
SCIP_RETCODE SCIPparamsetSetDefaultChar(SCIP_PARAMSET *paramset, const char *name, char defaultvalue)
Definition: paramset.c:2327
SCIP_RETCODE SCIPparamsetAddBool(SCIP_PARAMSET *paramset, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, SCIP_Bool *valueptr, SCIP_Bool isadvanced, SCIP_Bool defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: paramset.c:1499
SCIP_RETCODE SCIPparamsetSetPresolving(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
Definition: paramset.c:4247
SCIP_RETCODE SCIPparamsetAddReal(SCIP_PARAMSET *paramset, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, SCIP_Real *valueptr, SCIP_Bool isadvanced, SCIP_Real defaultvalue, SCIP_Real minvalue, SCIP_Real maxvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata)
Definition: paramset.c:1586
SCIP_RETCODE SCIPparamsetCopyParams(SCIP_PARAMSET *sourceparamset, SCIP_PARAMSET *targetparamset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr)
Definition: paramset.c:4338
SCIP_RETCODE SCIPparamsetSetString(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *name, const char *value)
Definition: paramset.c:2110
type definitions for handling parameter settings
SCIP_RETCODE SCIPparamsetSetLongint(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *name, SCIP_Longint value)
Definition: paramset.c:2008
#define SCIP_Real
Definition: def.h:173
SCIP_RETCODE SCIPparamWrite(SCIP_PARAM *param, SCIP_MESSAGEHDLR *messagehdlr, const char *filename, SCIP_Bool comments, SCIP_Bool onlychanged)
Definition: paramset.c:5042
SCIP_Bool SCIPparamIsValidString(SCIP_PARAM *param, const char *value)
Definition: paramset.c:4512
SCIP_RETCODE SCIPparamsetSetDefaultReal(SCIP_PARAMSET *paramset, const char *name, SCIP_Real defaultvalue)
Definition: paramset.c:2296
#define SCIP_Longint
Definition: def.h:158
SCIP_Bool SCIPparamIsValidChar(SCIP_PARAM *param, const char value)
Definition: paramset.c:4486
common defines and data types used in all packages of SCIP
void SCIPparamSetDefaultChar(SCIP_PARAM *param, char defaultvalue)
Definition: paramset.c:4966
struct BMS_BlkMem BMS_BLKMEM
Definition: memory.h:437
SCIP_PARAM ** SCIPparamsetGetParams(SCIP_PARAMSET *paramset)
Definition: paramset.c:4314
SCIP_RETCODE SCIPparamsetSet(SCIP_PARAMSET *paramset, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *name, const char *value, SCIP_Bool fix)
Definition: paramset.c:2144
SCIP_RETCODE SCIPparamSetToDefault(SCIP_PARAM *param, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr)
Definition: paramset.c:4991
SCIP_Bool SCIPparamsetIsFixed(SCIP_PARAMSET *paramset, const char *name)
Definition: paramset.c:1690
void SCIPparamSetDefaultInt(SCIP_PARAM *param, int defaultvalue)
Definition: paramset.c:4924
SCIP_RETCODE SCIPparamsetSetDefaultString(SCIP_PARAMSET *paramset, const char *name, const char *defaultvalue)
Definition: paramset.c:2358
SCIP_RETCODE SCIPparamSetReal(SCIP_PARAM *param, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, SCIP_Real value, SCIP_Bool initialize, SCIP_Bool quiet)
Definition: paramset.c:4716
memory allocation routines