|
All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
scip.h
Go to the documentation of this file.
27 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
207 * @note The SCIP default message handler is installed. Use the method SCIPsetMessagehdlr() to install your own
208 * message handler or SCIPsetMessagehdlrLogfile() and SCIPsetMessagehdlrQuiet() to write into a log
211 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
225 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
264 * @note If limits have been changed between the solution and the call to this function, the status is recomputed and
267 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
291 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
322 /** returns whether the presolving process would be finished given no more presolving reductions are found in this
325 * Checks whether the number of presolving rounds is not exceeded and the presolving reductions found in the current
328 * @note if subsequent presolvers find more reductions, presolving might continue even if the method returns FALSE
329 * @note does not check whether infeasibility or unboundedness was already detected in presolving (which would result
380 /** installs the given message handler, such that all messages are passed to this handler. A messages handler can be
383 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
390 * @note The currently installed messages handler gets freed if this SCIP instance is its last user (w.r.t. capture/release).
395 SCIP_MESSAGEHDLR* messagehdlr /**< message handler to install, or NULL to suppress all output */
429 /** prints a dialog message that requests user interaction or is a direct response to a user interactive command */
481 /** copies plugins from sourcescip to targetscip; in case that a constraint handler which does not need constraints
482 * cannot be copied, valid will return FALSE. All plugins can declare that, if their copy process failed, the
486 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
490 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
508 * @post After calling this method targetscip reaches one of the following stages depending on if and when the solution
542 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
544 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
562 * @post After calling this method targetscip reaches one of the following stages depending on if and when the solution
576 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
584 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
586 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
604 * @post After calling this method targetscip reaches one of the following stages depending on if and when the solution
618 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
623 /** returns copy of the source variable; if there already is a copy of the source variable in the variable hash map,
624 * it is just returned as target variable; elsewise a new variable will be created and added to the target SCIP; this
627 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
629 * @note if a new variable was created, this variable will be added to the target-SCIP, but it is not captured
631 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
665 SCIP_HASHMAP* varmap, /**< a hashmap to store the mapping of source variables to the corresponding
667 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
673 /** copies all active variables from source-SCIP and adds these variable to the target-SCIP; the mapping between these
674 * variables are stored in the variable hashmap, target-SCIP has to be in problem creation stage, fixed and aggregated
679 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
682 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
709 SCIP_HASHMAP* varmap, /**< a hashmap to store the mapping of source variables to the corresponding
711 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
716 /** copies all original variables from source-SCIP and adds these variable to the target-SCIP; the mapping between these
717 * variables are stored in the variable hashmap, target-SCIP has to be in problem creation stage, fixed and aggregated
722 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
725 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
752 SCIP_HASHMAP* varmap, /**< a hashmap to store the mapping of source variables to the corresponding
754 SCIP_HASHMAP* consmap /**< a hashmap to store the mapping of source constraints to the corresponding
758 /** returns copy of the source constraint; if there already is a copy of the source constraint in the constraint hash
759 * map, it is just returned as target constraint; elsewise a new constraint will be created; this created constraint is
760 * added to the constraint hash map and returned as target constraint; the variable map is used to map the variables of
763 * @warning If a constraint is marked to be checked for feasibility but not to be enforced, a LP or pseudo solution may
764 * be declared feasible even if it violates this particular constraint. This constellation should only be
765 * used, if no LP or pseudo solution can violate the constraint -- e.g. if a local constraint is redundant due
768 * @note The constraint is not added to the target SCIP. You can check whether a constraint is added by calling
769 * SCIPconsIsAdded(). (If you mix SCIPgetConsCopy() with SCIPcopyConss() you should pay attention to what you add
772 * @note The constraint is always captured, either during the creation of the copy or after finding the copy of the
775 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
778 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
815 SCIP_HASHMAP* varmap, /**< a SCIP_HASHMAP mapping variables of the source SCIP to the corresponding
817 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
819 const char* name, /**< name of constraint, or NULL if the name of the source constraint should be used */
828 SCIP_Bool removable, /**< should the relaxation be removed from the LP due to aging or cleanup? */
829 SCIP_Bool stickingatnode, /**< should the constraint always be kept at the node where it was added, even
836 * variables between the source and the target SCIP a hash map can be given; if the variable hash
837 * map is NULL or necessary variable mapping is missing, the required variables are created in the
838 * target-SCIP and added to the hash map, if not NULL; all variables which are created are added to
842 * @note the constraints are added to the target-SCIP but are not (user) captured in the target SCIP. (If you mix
843 * SCIPgetConsCopy() with SCIPcopyConss() you should pay attention to what you add explicitly and what is already
846 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
849 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
876 SCIP_HASHMAP* varmap, /**< a SCIP_HASHMAP mapping variables of the source SCIP to the corresponding
878 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
886 /** copies all original constraints from the source-SCIP and adds these to the target-SCIP; for mapping the
887 * variables between the source and the target SCIP a hash map can be given; if the variable hash
888 * map is NULL or necessary variable mapping is missing, the required variables are created in the
889 * target-SCIP and added to the hash map, if not NULL; all variables which are created are added to
893 * @note the constraints are added to the target-SCIP but are not (user) captured in the target SCIP. (If you mix
894 * SCIPgetConsCopy() with SCIPcopyConss() you should pay attention to what you add explicitly and what is already
897 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
900 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
927 SCIP_HASHMAP* varmap, /**< a SCIP_HASHMAP mapping variables of the source SCIP to the corresponding
929 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
940 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
961 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
969 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
972 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1007 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
1015 * This function should be called for a targetscip in transformed stage. It can save time in presolving of the
1018 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
1021 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1055 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
1065 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
1068 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1133 * @note all variables and constraints which are created in the target-SCIP are not (user) captured
1135 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
1139 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1169 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
1173 SCIP_Bool enablepricing, /**< should pricing be enabled in copied SCIP instance? If TRUE, pricer
1181 /** copies source SCIP original problem to target SCIP; the copying process is done in the following order:
1188 * @note all variables and constraints which are created in the target-SCIP are not (user) captured
1190 * @note In a multi thread case, you need to lock the copying procedure from outside with a mutex.
1194 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1224 SCIP_HASHMAP* consmap, /**< a hashmap to store the mapping of source constraints to the corresponding
1226 const char* suffix, /**< suffix which will be added to the names of the target SCIP, might be empty */
1227 SCIP_Bool enablepricing, /**< should pricing be enabled in copied SCIP instance? If TRUE, pricer
1244 /** creates a SCIP_Bool parameter, sets it to its default value, and adds it to the parameter set
1246 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1263 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1280 /** creates a SCIP_Longint parameter, sets it to its default value, and adds it to the parameter set
1282 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1299 /** creates a SCIP_Real parameter, sets it to its default value, and adds it to the parameter set
1301 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1320 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1331 const char* allowedvalues, /**< array with possible parameter values, or NULL if not restricted */
1336 /** creates a string(char*) parameter, sets it to its default value, and adds it to the parameter set
1338 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1346 char** valueptr, /**< pointer to store the current parameter value, or NULL; if not NULL then *valueptr should be NULL */
1375 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1387 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1399 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1411 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1423 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1435 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1447 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1450 * @note: Be careful with this method! Some general settings, e.g., the time or node limit, should not be fixed because
1461 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1472 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1484 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1496 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1508 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1520 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1532 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1544 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1556 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1568 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1580 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1592 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1604 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1616 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1628 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1639 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1647 SCIP_Bool onlychanged /**< should only the parameters been written, that are changed from default? */
1652 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1663 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1681 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1691 /** sets parameters to deactivate separators and heuristics that use auxiliary SCIP instances; should be called for
1694 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1710 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1727 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1744 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1784 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1791 * @note method has all reader callbacks as arguments and is thus changed every time a new callback is added
1801 SCIP_DECL_READERCOPY ((*readercopy)), /**< copy method of reader or NULL if you don't want to copy your plugin into sub-SCIPs */
1808 /** creates a reader and includes it in SCIP. All non-fundamental (or optional) callbacks will be set to NULL.
1812 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1819 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeReader() instead
1833 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1844 SCIP_DECL_READERCOPY ((*readercopy)) /**< copy method of reader or NULL if you don't want to copy your plugin into sub-SCIPs */
1849 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1865 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1881 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1915 * To use the variable pricer for solving a problem, it first has to be activated with a call to SCIPactivatePricer().
1918 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1925 * @note method has all pricer callbacks as arguments and is thus changed every time a new callback is added
1940 SCIP_DECL_PRICERCOPY ((*pricercopy)), /**< copy method of variable pricer or NULL if you don't want to copy your plugin into sub-SCIPs */
1944 SCIP_DECL_PRICERINITSOL((*pricerinitsol)),/**< solving process initialization method of variable pricer */
1945 SCIP_DECL_PRICEREXITSOL((*pricerexitsol)),/**< solving process deinitialization method of variable pricer */
1946 SCIP_DECL_PRICERREDCOST((*pricerredcost)),/**< reduced cost pricing method of variable pricer for feasible LPs */
1947 SCIP_DECL_PRICERFARKAS((*pricerfarkas)), /**< Farkas pricing method of variable pricer for infeasible LPs */
1951 /** creates a variable pricer and includes it in SCIP with all non-fundamental callbacks set to NULL;
1952 * if needed, these can be added afterwards via setter functions SCIPsetPricerCopy(), SCIPsetPricerFree(),
1956 * To use the variable pricer for solving a problem, it first has to be activated with a call to SCIPactivatePricer().
1959 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1966 * @note if you want to set all callbacks with a single method call, consider using SCIPincludePricer() instead
1980 SCIP_DECL_PRICERREDCOST((*pricerredcost)),/**< reduced cost pricing method of variable pricer for feasible LPs */
1981 SCIP_DECL_PRICERFARKAS((*pricerfarkas)), /**< Farkas pricing method of variable pricer for infeasible LPs */
1987 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
1998 SCIP_DECL_PRICERCOPY ((*pricercopy)) /**< copy method of pricer or NULL if you don't want to copy your plugin into sub-SCIPs */
2003 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2019 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2035 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2051 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2062 SCIP_DECL_PRICERINITSOL ((*pricerinitsol))/**< solving process initialization method of pricer */
2067 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2078 SCIP_DECL_PRICEREXITSOL((*pricerexitsol)) /**< solving process deinitialization method of pricer */
2088 /** returns the array of currently available variable pricers; active pricers are in the first slots of the array */
2100 /** returns the number of currently active variable pricers, that are used in the LP solving loop */
2115 * This method should be called during the problem creation stage for all pricers that are necessary to solve
2119 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2133 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2148 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2155 * @note method has all constraint handler callbacks as arguments and is thus changed every time a new
2167 int chckpriority, /**< priority of the constraint handler for checking feasibility (and propagation) */
2168 int sepafreq, /**< frequency for separating cuts; zero means to separate only in the root node */
2169 int propfreq, /**< frequency for propagating domains; zero means only preprocessing propagation */
2170 int eagerfreq, /**< frequency for using all instead of only the useful constraints in separation,
2172 int maxprerounds, /**< maximal number of presolving rounds the constraint handler participates in (-1: no limit) */
2173 SCIP_Bool delaysepa, /**< should separation method be delayed, if other separators found cuts? */
2174 SCIP_Bool delayprop, /**< should propagation method be delayed, if other propagators found reductions? */
2175 SCIP_Bool delaypresol, /**< should presolving method be delayed, if other presolvers found reductions? */
2176 SCIP_Bool needscons, /**< should the constraint handler be skipped, if no constraints are available? */
2177 SCIP_PROPTIMING timingmask, /**< positions in the node solving loop where propagators should be executed */
2178 SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), /**< copy method of constraint handler or NULL if you don't want to copy your plugin into sub-SCIPs */
2182 SCIP_DECL_CONSINITPRE ((*consinitpre)), /**< presolving initialization method of constraint handler */
2183 SCIP_DECL_CONSEXITPRE ((*consexitpre)), /**< presolving deinitialization method of constraint handler */
2184 SCIP_DECL_CONSINITSOL ((*consinitsol)), /**< solving process initialization method of constraint handler */
2185 SCIP_DECL_CONSEXITSOL ((*consexitsol)), /**< solving process deinitialization method of constraint handler */
2187 SCIP_DECL_CONSTRANS ((*constrans)), /**< transform constraint data into data belonging to the transformed problem */
2188 SCIP_DECL_CONSINITLP ((*consinitlp)), /**< initialize LP with relaxations of "initial" constraints */
2190 SCIP_DECL_CONSSEPASOL ((*conssepasol)), /**< separate cutting planes for arbitrary primal solution */
2211 /** creates a constraint handler and includes it in SCIP. All non-fundamental (or optional) callbacks will be set to NULL.
2212 * Optional callbacks can be set via specific setter functions, see SCIPsetConshdlrInit(), SCIPsetConshdlrExit(),
2213 * SCIPsetConshdlrCopy(), SCIPsetConshdlrFree(), SCIPsetConshdlrInitsol(), SCIPsetConshdlrExitsol(),
2214 * SCIPsetConshdlrInitpre(), SCIPsetConshdlrExitpre(), SCIPsetConshdlrPresol(), SCIPsetConshdlrDelete(),
2215 * SCIPsetConshdlrDelvars(), SCIPsetConshdlrInitlp(), SCIPsetConshdlrActive(), SCIPsetConshdlrDeactive(),
2216 * SCIPsetConshdlrEnable(), SCIPsetConshdlrDisable(), SCIPsetConshdlrResprop(), SCIPsetConshdlrTrans(),
2219 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2226 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeConshdlr() instead
2235 int chckpriority, /**< priority of the constraint handler for checking feasibility (and propagation) */
2236 int eagerfreq, /**< frequency for using all instead of only the useful constraints in separation,
2238 SCIP_Bool needscons, /**< should the constraint handler be skipped, if no constraints are available? */
2248 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2260 SCIP_DECL_CONSSEPASOL ((*conssepasol)), /**< separate cutting planes for arbitrary primal solution */
2261 int sepafreq, /**< frequency for separating cuts; zero means to separate only in the root node */
2263 SCIP_Bool delaysepa /**< should separation method be delayed, if other separators found cuts? */
2268 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2280 int propfreq, /**< frequency for propagating domains; zero means only preprocessing propagation */
2281 SCIP_Bool delayprop, /**< should propagation method be delayed, if other propagators found reductions? */
2282 SCIP_PROPTIMING timingmask /**< positions in the node solving loop where propagators should be executed */
2287 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2298 SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), /**< copy method of constraint handler or NULL if you don't want to copy your plugin into sub-SCIPs */
2304 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2320 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2336 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2352 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2363 SCIP_DECL_CONSINITSOL((*consinitsol)) /**< solving process initialization method of constraint handler */
2368 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2379 SCIP_DECL_CONSEXITSOL ((*consexitsol))/**< solving process deinitialization method of constraint handler */
2384 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2395 SCIP_DECL_CONSINITPRE((*consinitpre)) /**< preprocessing initialization method of constraint handler */
2400 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2411 SCIP_DECL_CONSEXITPRE((*consexitpre)) /**< preprocessing deinitialization method of constraint handler */
2416 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2428 int maxprerounds, /**< maximal number of presolving rounds the constraint handler participates in (-1: no limit) */
2429 SCIP_Bool delaypresol /**< should presolving method be delayed, if other presolvers found reductions? */
2434 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2448 /** sets method of constraint handler to transform constraint data into data belonging to the transformed problem
2450 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2461 SCIP_DECL_CONSTRANS ((*constrans)) /**< transform constraint data into data belonging to the transformed problem */
2464 /** sets method of constraint handler to initialize LP with relaxations of "initial" constraints
2466 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2477 SCIP_DECL_CONSINITLP ((*consinitlp)) /**< initialize LP with relaxations of "initial" constraints */
2482 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2498 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2514 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2530 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2546 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2562 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2578 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2594 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2610 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2626 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
2661 * @note method has all conflict handler callbacks as arguments and is thus changed every time a new
2672 SCIP_DECL_CONFLICTCOPY((*conflictcopy)), /**< copy method of conflict handler or NULL if you don't want to copy your plugin into sub-SCIPs */
2676 SCIP_DECL_CONFLICTINITSOL((*conflictinitsol)),/**< solving process initialization method of conflict handler */
2677 SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol)),/**< solving process deinitialization method of conflict handler */
2678 SCIP_DECL_CONFLICTEXEC((*conflictexec)), /**< conflict processing method of conflict handler */
2682 /** creates a conflict handler and includes it in SCIP with its most fundamental callbacks. All non-fundamental
2684 * Optional callbacks can be set via specific setter functions SCIPsetConflicthdlrCopy(), SCIPsetConflicthdlrFree(),
2688 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeConflicthdlr() instead
2697 SCIP_DECL_CONFLICTEXEC((*conflictexec)), /**< conflict processing method of conflict handler */
2738 SCIP_DECL_CONFLICTINITSOL((*conflictinitsol))/**< solving process initialization method of conflict handler */
2746 SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol))/**< solving process deinitialization method of conflict handler */
2789 int maxrounds, /**< maximal number of presolving rounds the presolver participates in (-1: no limit) */
2791 SCIP_DECL_PRESOLCOPY ((*presolcopy)), /**< copy method of presolver or NULL if you don't want to copy your plugin into sub-SCIPs */
2792 SCIP_DECL_PRESOLFREE ((*presolfree)), /**< destructor of presolver to free user data (called when SCIP is exiting) */
2793 SCIP_DECL_PRESOLINIT ((*presolinit)), /**< initialization method of presolver (called after problem was transformed) */
2794 SCIP_DECL_PRESOLEXIT ((*presolexit)), /**< deinitialization method of presolver (called before transformed problem is freed) */
2795 SCIP_DECL_PRESOLINITPRE((*presolinitpre)),/**< presolving initialization method of presolver (called when presolving is about to begin) */
2796 SCIP_DECL_PRESOLEXITPRE((*presolexitpre)),/**< presolving deinitialization method of presolver (called after presolving has been finished) */
2801 /** Creates a presolver and includes it in SCIP with its fundamental callback. All non-fundamental (or optional)
2802 * callbacks as, e.g., init and exit callbacks, will be set to NULL. Optional callbacks can be set via specific setter
2803 * functions. These are SCIPsetPresolCopy(), SCIPsetPresolFree(), SCIPsetPresolInit(), SCIPsetPresolExit(),
2806 * @note if you want to set all callbacks with a single method call, consider using SCIPincludePresol() instead
2815 int maxrounds, /**< maximal number of presolving rounds the presolver participates in (-1: no limit) */
2826 SCIP_DECL_PRESOLCOPY ((*presolcopy)) /**< copy method of presolver or NULL if you don't want to copy your plugin into sub-SCIPs */
2858 SCIP_DECL_PRESOLINITPRE ((*presolinitpre))/**< solving process initialization method of presolver */
2865 SCIP_DECL_PRESOLEXITPRE ((*presolexitpre))/**< solving process deinitialization method of presolver */
2897 * @note method has all relaxation handler callbacks as arguments and is thus changed every time a new
2907 int priority, /**< priority of the relaxation handler (negative: after LP, non-negative: before LP) */
2909 SCIP_DECL_RELAXCOPY ((*relaxcopy)), /**< copy method of relaxation handler or NULL if you don't want to copy your plugin into sub-SCIPs */
2913 SCIP_DECL_RELAXINITSOL((*relaxinitsol)), /**< solving process initialization method of relaxation handler */
2914 SCIP_DECL_RELAXEXITSOL((*relaxexitsol)), /**< solving process deinitialization method of relaxation handler */
2921 * Optional callbacks can be set via specific setter functions, see SCIPsetRelaxInit(), SCIPsetRelaxExit(),
2924 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeRelax() instead
2932 int priority, /**< priority of the relaxation handler (negative: after LP, non-negative: before LP) */
2943 SCIP_DECL_RELAXCOPY ((*relaxcopy)) /**< copy method of relaxation handler or NULL if you don't want to copy your plugin into sub-SCIPs */
2975 SCIP_DECL_RELAXINITSOL((*relaxinitsol)) /**< solving process initialization method of relaxation handler */
2983 SCIP_DECL_RELAXEXITSOL((*relaxexitsol)) /**< solving process deinitialization method of relaxation handler */
3027 SCIP_Real maxbounddist, /**< maximal relative distance from current node's dual bound to primal bound compared
3031 SCIP_DECL_SEPACOPY ((*sepacopy)), /**< copy method of separator or NULL if you don't want to copy your plugin into sub-SCIPs */
3035 SCIP_DECL_SEPAINITSOL ((*sepainitsol)), /**< solving process initialization method of separator */
3036 SCIP_DECL_SEPAEXITSOL ((*sepaexitsol)), /**< solving process deinitialization method of separator */
3038 SCIP_DECL_SEPAEXECSOL ((*sepaexecsol)), /**< arbitrary primal solution separation method of separator */
3042 /** creates a separator and includes it in SCIP with its most fundamental callbacks. All non-fundamental
3044 * Optional callbacks can be set via specific setter functions, see SCIPsetSepaInit(), SCIPsetSepaFree(),
3047 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeSepa() instead
3057 SCIP_Real maxbounddist, /**< maximal relative distance from current node's dual bound to primal bound compared
3062 SCIP_DECL_SEPAEXECSOL ((*sepaexecsol)), /**< arbitrary primal solution separation method of separator */
3071 SCIP_DECL_SEPACOPY ((*sepacopy)) /**< copy method of separator or NULL if you don't want to copy your plugin into sub-SCIPs */
3103 SCIP_DECL_SEPAINITSOL ((*sepainitsol)) /**< solving process initialization method of separator */
3111 SCIP_DECL_SEPAEXITSOL ((*sepaexitsol)) /**< solving process deinitialization method of separator */
3153 int priority, /**< priority of the propagator (>= 0: before, < 0: after constraint handlers) */
3156 SCIP_PROPTIMING timingmask, /**< positions in the node solving loop where propagators should be executed */
3157 int presolpriority, /**< priority of the propagator (>= 0: before, < 0: after constraint handlers) */
3158 int presolmaxrounds, /**< maximal number of presolving rounds the propagator participates in (-1: no limit) */
3159 SCIP_Bool presoldelay, /**< should presolving be delayed, if other presolvers found reductions? */
3160 SCIP_DECL_PROPCOPY ((*propcopy)), /**< copy method of propagator or NULL if you don't want to copy your plugin into sub-SCIPs */
3165 SCIP_DECL_PROPEXITPRE ((*propexitpre)), /**< presolving deinitialization method of propagator */
3166 SCIP_DECL_PROPINITSOL ((*propinitsol)), /**< solving process initialization method of propagator */
3167 SCIP_DECL_PROPEXITSOL ((*propexitsol)), /**< solving process deinitialization method of propagator */
3174 /** creates a propagator and includes it in SCIP. All non-fundamental (or optional) callbacks will be set to NULL.
3175 * Optional callbacks can be set via specific setter functions, see SCIPsetPropInit(), SCIPsetPropExit(),
3179 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeProp() instead
3187 int priority, /**< priority of the propagator (>= 0: before, < 0: after constraint handlers) */
3190 SCIP_PROPTIMING timingmask, /**< positions in the node solving loop where propagators should be executed */
3200 SCIP_DECL_PROPCOPY ((*propcopy)) /**< copy method of propagator or NULL if you don't want to copy your plugin into sub-SCIPs */
3232 SCIP_DECL_PROPINITSOL((*propinitsol)) /**< solving process initialization method of propagator */
3240 SCIP_DECL_PROPEXITSOL ((*propexitsol)) /**< solving process deinitialization method of propagator */
3248 SCIP_DECL_PROPINITPRE((*propinitpre)) /**< preprocessing initialization method of propagator */
3256 SCIP_DECL_PROPEXITPRE((*propexitpre)) /**< preprocessing deinitialization method of propagator */
3265 int presolpriority, /**< presolving priority of the propagator (>= 0: before, < 0: after constraint handlers) */
3266 int presolmaxrounds, /**< maximal number of presolving rounds the propagator participates in (-1: no limit) */
3267 SCIP_Bool presoldelay /**< should presolving be delayed, if other presolvers found reductions? */
3317 * callback is added in future releases; consider using SCIPincludeHeurBasic() and setter functions
3330 unsigned int timingmask, /**< positions in the node solving loop where heuristic should be executed;
3333 SCIP_DECL_HEURCOPY ((*heurcopy)), /**< copy method of primal heuristic or NULL if you don't want to copy your plugin into sub-SCIPs */
3337 SCIP_DECL_HEURINITSOL ((*heurinitsol)), /**< solving process initialization method of primal heuristic */
3338 SCIP_DECL_HEUREXITSOL ((*heurexitsol)), /**< solving process deinitialization method of primal heuristic */
3346 * Optional callbacks can be set via specific setter functions, see SCIPsetHeurCopy(), SCIPsetHeurFree(),
3349 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeHeur() instead
3362 unsigned int timingmask, /**< positions in the node solving loop where heuristic should be executed;
3374 SCIP_DECL_HEURCOPY ((*heurcopy)) /**< copy method of primal heuristic or NULL if you don't want to copy your plugin into sub-SCIPs */
3406 SCIP_DECL_HEURINITSOL ((*heurinitsol)) /**< solving process initialization method of primal heuristic */
3414 SCIP_DECL_HEUREXITSOL ((*heurexitsol)) /**< solving process deinitialization method of primal heuristic */
3446 * @note method has all event handler callbacks as arguments and is thus changed every time a new
3447 * callback is added in future releases; consider using SCIPincludeEventhdlrBasic() and setter functions
3455 SCIP_DECL_EVENTCOPY ((*eventcopy)), /**< copy method of event handler or NULL if you don't want to copy your plugin into sub-SCIPs */
3459 SCIP_DECL_EVENTINITSOL((*eventinitsol)), /**< solving process initialization method of event handler */
3460 SCIP_DECL_EVENTEXITSOL((*eventexitsol)), /**< solving process deinitialization method of event handler */
3466 /** creates an event handler and includes it in SCIP with all its non-fundamental callbacks set
3468 * SCIPsetEventhdlrCopy(), SCIPsetEventhdlrFree(), SCIPsetEventhdlrInit(), SCIPsetEventhdlrExit(),
3471 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeEventhdlr() instead
3520 SCIP_DECL_EVENTINITSOL((*eventinitsol)) /**< solving process initialization callback of event handler */
3528 SCIP_DECL_EVENTEXITSOL((*eventexitsol)) /**< solving process deinitialization callback of event handler */
3560 * @note method has all node selector callbacks as arguments and is thus changed every time a new
3561 * callback is added in future releases; consider using SCIPincludeNodeselBasic() and setter functions
3571 SCIP_DECL_NODESELCOPY ((*nodeselcopy)), /**< copy method of node selector or NULL if you don't want to copy your plugin into sub-SCIPs */
3575 SCIP_DECL_NODESELINITSOL((*nodeselinitsol)),/**< solving process initialization method of node selector */
3576 SCIP_DECL_NODESELEXITSOL((*nodeselexitsol)),/**< solving process deinitialization method of node selector */
3582 /** Creates a node selector and includes it in SCIP with its most fundamental callbacks. All non-fundamental
3584 * Optional callbacks can be set via specific setter functions, see SCIPsetNodeselCopy(), SCIPsetNodeselFree(),
3585 * SCIPsetNodeselInit(), SCIPsetNodeselExit(), SCIPsetNodeselInitsol(), and SCIPsetNodeselExitsol()
3587 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeNodesel() instead
3607 SCIP_DECL_NODESELCOPY ((*nodeselcopy)) /**< copy method of node selector or NULL if you don't want to copy your plugin into sub-SCIPs */
3639 SCIP_DECL_NODESELINITSOL ((*nodeselinitsol))/**< solving process initialization method of node selector */
3647 SCIP_DECL_NODESELEXITSOL ((*nodeselexitsol))/**< solving process deinitialization method of node selector */
3693 * @note method has all branching rule callbacks as arguments and is thus changed every time a new
3694 * callback is added in future releases; consider using SCIPincludeBranchruleBasic() and setter functions
3703 int maxdepth, /**< maximal depth level, up to which this branching rule should be used (or -1) */
3704 SCIP_Real maxbounddist, /**< maximal relative distance from current node's dual bound to primal bound
3707 SCIP_DECL_BRANCHCOPY ((*branchcopy)), /**< copy method of branching rule or NULL if you don't want to copy your plugin into sub-SCIPs */
3711 SCIP_DECL_BRANCHINITSOL((*branchinitsol)),/**< solving process initialization method of branching rule */
3712 SCIP_DECL_BRANCHEXITSOL((*branchexitsol)),/**< solving process deinitialization method of branching rule */
3713 SCIP_DECL_BRANCHEXECLP((*branchexeclp)), /**< branching execution method for fractional LP solutions */
3714 SCIP_DECL_BRANCHEXECEXT((*branchexecext)),/**< branching execution method for external candidates */
3715 SCIP_DECL_BRANCHEXECPS((*branchexecps)), /**< branching execution method for not completely fixed pseudo solutions */
3719 /** creates a branching rule and includes it in SCIP. All non-fundamental (or optional) callbacks will be set to NULL.
3720 * Optional callbacks can be set via specific setter functions, see SCIPsetBranchruleInit(), SCIPsetBranchruleExit(),
3721 * SCIPsetBranchruleCopy(), SCIPsetBranchruleFree(), SCIPsetBranchruleInitsol(), SCIPsetBranchruleExitsol(),
3724 * @note if you want to set all callbacks with a single method call, consider using SCIPincludeBranchrule() instead
3733 int maxdepth, /**< maximal depth level, up to which this branching rule should be used (or -1) */
3734 SCIP_Real maxbounddist, /**< maximal relative distance from current node's dual bound to primal bound
3745 SCIP_DECL_BRANCHCOPY ((*branchcopy)) /**< copy method of branching rule or NULL if you don't want to copy your plugin into sub-SCIPs */
3777 SCIP_DECL_BRANCHINITSOL((*branchinitsol)) /**< solving process initialization method of branching rule */
3785 SCIP_DECL_BRANCHEXITSOL((*branchexitsol)) /**< solving process deinitialization method of branching rule */
3793 SCIP_DECL_BRANCHEXECLP((*branchexeclp)) /**< branching execution method for fractional LP solutions */
3801 SCIP_DECL_BRANCHEXECEXT((*branchexecext)) /**< branching execution method for external candidates */
3809 SCIP_DECL_BRANCHEXECPS((*branchexecps)) /**< branching execution method for not completely fixed pseudo solutions */
3839 /** sets maximal depth level, up to which this branching rule should be used (-1 for no limit) */
3847 /** sets maximal relative distance from current node's dual bound to primal bound for applying branching rule */
3863 SCIP_DECL_DISPCOPY ((*dispcopy)), /**< copy method of display column or NULL if you don't want to copy your plugin into sub-SCIPs */
3867 SCIP_DECL_DISPINITSOL ((*dispinitsol)), /**< solving process initialization method of display column */
3868 SCIP_DECL_DISPEXITSOL ((*dispexitsol)), /**< solving process deinitialization method of display column */
3874 SCIP_Bool stripline /**< should the column be separated with a line from its right neighbor? */
3896 /** automatically selects display columns for being shown w.r.t. the display width parameter */
3989 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
3996 SCIP_DECL_DIALOGCOPY ((*dialogcopy)), /**< copy method of dialog or NULL if you don't want to copy your plugin into sub-SCIPs */
4018 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4029 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4038 /** makes given dialog the root dialog of SCIP's interactive user shell; captures dialog and releases former root dialog
4040 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4060 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4072 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4081 /** adds a single line of input to the command history which can be accessed with the cursor keys
4083 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4094 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4101 * @post After calling this method \SCIP reaches one of the following stages depending on if and when the
4104 * - \ref SCIP_STAGE_TRANSFORMED if the interactive shell was closed after the problem was transformed
4130 /** creates empty problem and initializes all solving data structures (the objective sense is set to MINIMIZE)
4131 * If the problem type requires the use of variable pricers, these pricers should be added to the problem with calls
4132 * to SCIPactivatePricer(). These pricers are automatically deactivated, when the problem is freed.
4134 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4155 SCIP_DECL_PROBTRANS ((*probtrans)), /**< creates user data of transformed problem by transforming original user data */
4157 SCIP_DECL_PROBINITSOL ((*probinitsol)), /**< solving process initialization method of transformed data */
4158 SCIP_DECL_PROBEXITSOL ((*probexitsol)), /**< solving process deinitialization method of transformed data */
4159 SCIP_DECL_PROBCOPY ((*probcopy)), /**< copies user data if you want to copy it to a subscip, or NULL */
4163 /** creates empty problem and initializes all solving data structures (the objective sense is set to MINIMIZE)
4164 * all callback methods will be set to NULL and can be set afterwards, if needed, via SCIPsetProbDelorig(),
4167 * If the problem type requires the use of variable pricers, these pricers should be added to the problem with calls
4168 * to SCIPactivatePricer(). These pricers are automatically deactivated, when the problem is freed.
4170 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4194 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4205 /** sets callback to create user data of transformed problem by transforming original user data
4207 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4216 SCIP_DECL_PROBTRANS ((*probtrans)) /**< creates user data of transformed problem by transforming original user data */
4221 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4235 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4244 SCIP_DECL_PROBINITSOL ((*probinitsol)) /**< solving process initialization method of transformed data */
4249 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4258 SCIP_DECL_PROBEXITSOL ((*probexitsol)) /**< solving process deinitialization method of transformed data */
4263 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4272 SCIP_DECL_PROBCOPY ((*probcopy)) /**< copies user data if you want to copy it to a subscip, or NULL */
4277 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4305 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4333 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4347 * @note If you want the write all constraints (including the once which are redundant for example), you need to set
4361 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4384 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4395 SCIP_Bool permuteconss, /**< should the list of constraints in each constraint handler be permuted? */
4427 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4475 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4523 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4537 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4549 /** adds offset of objective function to original problem and to all existing solution in original space
4551 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4643 /** sets limit on objective function, such that only solutions better than this limit are accepted
4645 * @note SCIP will only look for solutions with a strictly better objective value, thus, e.g., prune
4647 * However, SCIP will also collect solutions with objective value worse than the objective limit and
4649 * @note If SCIP can prove that there exists no solution with a strictly better objective value, the solving status
4651 * The only exception is that by chance, SCIP found a solution with the same objective value and thus
4654 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4695 * @return \ref SCIP_OKAY is returned if everything worked. otherwise a suitable error code is passed. see \ref
4728 /** returns the Euclidean norm of the objective function vector (available only for transformed problem)
4750 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
4770 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
4784 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
4801 SCIP_Bool* deleted /**< pointer to store whether variable was successfully marked to be deleted */
4804 /** gets variables of the problem along with the numbers of different variable types; data may become invalid after
4807 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
4822 * @note Variables in the vars array are ordered: binaries first, then integers, implicit integers and continuous last.
4831 int* nimplvars, /**< pointer to store number of implicit integral vars or NULL if not needed */
4851 * @warning If your are using the methods which add or change bound of variables (e.g., SCIPchgVarType(), SCIPfixVar(),
4852 * SCIPaggregateVars(), and SCIPmultiaggregateVar()), it can happen that the internal variable array (which is
4853 * accessed via this method) gets resized and/or resorted. This can invalid the data pointer which is returned
4856 * @note Variables in the array are ordered: binaries first, then integers, implicit integers and continuous last.
4970 * @note In case of the original problem the number of variables is counted. In case of the transformed problem the
5033 /** gets variables of the original problem along with the numbers of different variable types; data may become invalid
5036 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5060 int* nimplvars, /**< pointer to store number of implicit integral vars or NULL if not needed */
5229 /** gets variables of the original or transformed problem along with the numbers of different variable types;
5231 * data may become invalid after calls to SCIPchgVarType(), SCIPfixVar(), SCIPaggregateVars(), and
5234 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5251 SCIP_SOL* sol, /**< primal solution that selects the problem space, NULL for current solution */
5256 int* nimplvars, /**< pointer to store number of implicit integral vars or NULL if not needed */
5284 /** returns TRUE iff all potential variables exist in the problem, and FALSE, if there may be additional variables,
5307 /** adds constraint to the problem; if constraint is only valid locally, it is added to the local subproblem of the
5309 * if a local constraint is added at the root node, it is automatically upgraded into a global constraint
5311 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5330 /** globally removes constraint from all subproblems; removes constraint from the constraint set change data of the
5333 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5449 * @warning If your are using the method SCIPaddCons(), it can happen that the internal constraint array (which is
5450 * accessed via this method) gets resized. This can invalid the pointer which is returned by this method.
5503 /** computes the number of check constraint in the current node (loop over all constraint handler and cumulates the
5534 /** adds constraint to the given node (and all of its subnodes), even if it is a global constraint;
5535 * It is sometimes desirable to add the constraint to a more local node (i.e., a node of larger depth) even if
5536 * the constraint is also valid higher in the tree, for example, if one wants to produce a constraint which is
5538 * In this case, one should pass the more global node where the constraint is valid as "validnode".
5539 * Note that the same constraint cannot be added twice to the branching tree with different "validnode" parameters.
5540 * If the constraint is valid at the same node as it is inserted (the usual case), one should pass NULL as "validnode".
5541 * If the "validnode" is the root node, it is automatically upgraded into a global constraint, but still only added to
5542 * the given node. If a local constraint is added to the root node, it is added to the global problem instead.
5544 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5561 /** adds constraint locally to the current node (and all of its subnodes), even if it is a global constraint;
5562 * It is sometimes desirable to add the constraint to a more local node (i.e., a node of larger depth) even if
5563 * the constraint is also valid higher in the tree, for example, if one wants to produce a constraint which is
5566 * If the constraint is valid at the same node as it is inserted (the usual case), one should pass NULL as "validnode".
5567 * If the "validnode" is the root node, it is automatically upgraded into a global constraint, but still only added to
5568 * the given node. If a local constraint is added to the root node, it is added to the global problem instead.
5570 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5579 * @note The same constraint cannot be added twice to the branching tree with different "validnode" parameters. This is
5580 * the case due internal data structures and performance issues. In such a case you should try to realize your
5581 * issue using the method SCIPdisableCons() and SCIPenableCons() and control these via the event system of SCIP.
5590 /** disables constraint's separation, enforcing, and propagation capabilities at the given node (and all subnodes);
5591 * if the method is called at the root node, the constraint is globally deleted from the problem;
5592 * the constraint deletion is being remembered at the given node, s.t. after leaving the node's subtree, the constraint
5593 * is automatically enabled again, and after entering the node's subtree, it is automatically disabled;
5594 * this may improve performance because redundant checks on this constraint are avoided, but it consumes memory;
5597 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5613 /** disables constraint's separation, enforcing, and propagation capabilities at the current node (and all subnodes);
5614 * if the method is called during problem modification or at the root node, the constraint is globally deleted from
5616 * the constraint deletion is being remembered at the current node, s.t. after leaving the current subtree, the
5617 * constraint is automatically enabled again, and after reentering the current node's subtree, it is automatically
5619 * this may improve performance because redundant checks on this constraint are avoided, but it consumes memory;
5622 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5640 * @return estimate of best primal solution w.r.t. original problem contained in current subtree
5650 /** gets estimate of best primal solution w.r.t. transformed problem contained in current subtree
5652 * @return estimate of best primal solution w.r.t. transformed problem contained in current subtree
5712 /** if given value is tighter (larger for minimization, smaller for maximization) than the current node's dual bound (in
5715 * @note the given new bound has to be a dual bound, i.e., it has to be valid for the original problem.
5717 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5732 /** if given value is larger than the current node's lower bound (in transformed problem), sets the current node's
5735 * @note the given new bound has to be a lower bound, i.e., it has to be valid for the transformed problem.
5737 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5751 /** if given value is tighter (larger for minimization, smaller for maximization) than the node's dual bound,
5754 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5767 /** if given value is larger than the node's lower bound (in transformed problem), sets the node's lower bound
5770 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5785 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5812 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5829 * @post When calling this method in the \ref SCIP_STAGE_PROBLEM stage, the \SCIP stage is changed to \ref
5841 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5852 * - \ref SCIP_STAGE_PRESOLVED if the presolving process was finished and did not solve the problem
5864 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5875 * @post After calling this method \SCIP reaches one of the following stages depending on if and when the solution
5889 /** frees branch and bound tree and all solution process data; statistics, presolving data and transformed problem is
5892 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5904 * @post If this method is called in \SCIP stage \ref SCIP_STAGE_INIT or \ref SCIP_STAGE_PROBLEM, the stage of
5915 /** frees all solution process data including presolving and transformed problem, only original problem is kept
5917 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5940 /** informs \SCIP that the solving process should be interrupted as soon as possible (e.g., after the current node has
5943 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
5966 /** informs SCIP that the solving process should be restarted as soon as possible (e.g., after the current node has
5969 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6017 /** creates and captures problem variable; if variable is of integral type, fractional bounds are automatically rounded;
6018 * an integer variable with bounds zero and one is automatically converted into a binary variable;
6020 * @warning When doing column generation and the original problem is a maximization problem, notice that SCIP will
6021 * transform the problem into a minimization problem by multiplying the objective function by -1. Thus, the
6022 * original objective function value of variables created during the solving process has to be multiplied by
6025 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6037 * @note the variable gets captured, hence at one point you have to release it using the method SCIPreleaseVar()
6051 SCIP_DECL_VARTRANS ((*vartrans)), /**< creates transformed user data by transforming original user data, or NULL */
6052 SCIP_DECL_VARDELTRANS ((*vardeltrans)), /**< frees user data of transformed variable, or NULL */
6057 /** creates and captures problem variable with optional callbacks and variable data set to NULL, which can be set
6059 * SCIPvarSetDeltransData(), SCIPvarSetCopy(), and SCIPvarSetData(); sets variable flags initial=TRUE
6060 * and removable = FALSE, which can be adjusted by using SCIPvarSetInitial() and SCIPvarSetRemovable(), resp.;
6062 * an integer variable with bounds zero and one is automatically converted into a binary variable;
6064 * @warning When doing column generation and the original problem is a maximization problem, notice that SCIP will
6065 * transform the problem into a minimization problem by multiplying the objective function by -1. Thus, the
6066 * original objective function value of variables created during the solving process has to be multiplied by
6069 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6081 * @note the variable gets captured, hence at one point you have to release it using the method SCIPreleaseVar()
6096 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6121 /** print the given list of variables to output stream separated by the given delimiter character;
6123 * i. e. the variables x1, x2, ..., xn with given delimiter ',' are written as: <x1>, <x2>, ..., <xn>;
6127 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6161 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6195 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6226 /** parses variable information (in cip format) out of a string; if the parsing process was successful a variable is
6227 * created and captured; if variable is of integral type, fractional bounds are automatically rounded; an integer
6230 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6251 SCIP_DECL_VARTRANS ((*vartrans)), /**< creates transformed user data by transforming original user data */
6258 /** parses the given string for a variable name and stores the variable in the corresponding pointer if such a variable
6261 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6281 /** parse the given string as variable list (here ',' is the delimiter)) (<x1>, <x2>, ..., <xn>) (see
6284 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6296 * @note the pointer success in only set to FALSE in the case that a variable with a parsed variable name does not exist
6298 * @note If the number of (parsed) variables is greater than the available slots in the variable array, nothing happens
6299 * except that the required size is stored in the corresponding integer; the reason for this approach is that we
6300 * cannot reallocate memory, since we do not know how the memory has been allocated (e.g., by a C++ 'new' or SCIP
6316 /** parse the given string as linear sum of variables and coefficients (c1 <x1> + c2 <x2> + ... + cn <xn>)
6319 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6331 * @note the pointer success in only set to FALSE in the case that a variable with a parsed variable name does not exist
6333 * @note If the number of (parsed) variables is greater than the available slots in the variable array, nothing happens
6334 * except that the required size is stored in the corresponding integer; the reason for this approach is that we
6335 * cannot reallocate memory, since we do not know how the memory has been allocated (e.g., by a C++ 'new' or SCIP
6356 * monomialcoefs, monomialnvars, *nmonomials) short after SCIPparseVarsPolynomial to free all the
6357 * allocated memory again. Do not keep the arrays created by SCIPparseVarsPolynomial around, since
6360 * Parsing is stopped at the end of string (indicated by the \\0-character) or when no more monomials
6363 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6390 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6414 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6436 /** decreases usage counter of variable, if the usage pointer reaches zero the variable gets freed
6438 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6465 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6479 /** gets and captures transformed variable of a given variable; if the variable is not yet transformed,
6482 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6503 * if a variable of the array is not yet transformed, a new transformed variable for this variable is created;
6506 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6530 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6555 * it is possible to call this method with vars == transvars, but remember that variables that are not
6558 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6582 /** gets negated variable x' = lb + ub - x of variable x; negated variable is created, if not yet existing
6584 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6608 /** gets negated variables x' = lb + ub - x of variables x; negated variables are created, if not yet existing
6610 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6635 /** gets a binary variable that is equal to the given binary variable, and that is either active, fixed, or
6638 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6658 SCIP_Bool* negated /**< pointer to store whether the negation of an active variable was returned */
6661 /** gets binary variables that are equal to the given binary variables, and which are either active, fixed, or
6664 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6685 SCIP_Bool* negated /**< array to store whether the negation of an active variable was returned */
6688 /** flattens aggregation graph of multi-aggregated variable in order to avoid exponential recursion later on
6690 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6708 /** Transforms a given linear sum of variables, that is a_1*x_1 + ... + a_n*x_n + c into a corresponding linear sum of
6711 * If the number of needed active variables is greater than the available slots in the variable array, nothing happens
6712 * except that the required size is stored in the corresponding variable (requiredsize). Otherwise, the active variable
6715 * The reason for this approach is that we cannot reallocate memory, since we do not know how the memory has been
6718 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6733 * @note The resulting linear sum is stored into the given variable array, scalar array, and constant. That means the
6736 * @note That method can be used to convert a single variables into variable space of active variables. Therefore call
6753 SCIP_Real* constant, /**< pointer to constant c in linear sum a_1*x_1 + ... + a_n*x_n + c which
6758 SCIP_Bool mergemultiples /**< should multiple occurrences of a var be replaced by a single coeff? */
6762 * multi-aggregated variable, scalar and constant; if the variable resolves to a fixed variable,
6763 * "scalar" will be 0.0 and the value of the sum will be stored in "constant"; a multi-aggregation
6765 * is treated like an aggregation; if the multi-aggregation constant is infinite, "scalar" will be 0.0
6767 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6790 /** return for given variables all their active counterparts; all active variables will be pairwise different
6791 * @note It does not hold that the first output variable is the active variable for the first input variable.
6793 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6878 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6895 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6908 * this solution can be filled by the relaxation handlers and can be used by heuristics and for separation;
6913 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6928 * this solution can be filled by the relaxation handlers and can be used by heuristics and for separation;
6931 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6947 * in the given primal solution; the relaxation solution can be filled by the relaxation hanlders
6950 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6978 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
6992 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7033 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7040 * @note if propagation is enabled, strong branching is not done directly on the LP, but probing nodes are created
7046 SCIP_Bool enablepropagation /**< should propagation be done before solving the strong branching LP? */
7051 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7065 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7079 SCIP_Bool* downvalid, /**< stores whether the returned down value is a valid dual bound, or NULL;
7083 SCIP_Bool* downinf, /**< pointer to store whether the downwards branch is infeasible, or NULL */
7085 SCIP_Bool* downconflict, /**< pointer to store whether a conflict constraint was created for an
7095 * Before calling this method, the strong branching mode must have been activated by calling SCIPstartStrongbranch();
7096 * after strong branching was done for all candidate variables, the strong branching mode must be ended by
7097 * SCIPendStrongbranch(). Since this method applies domain propagation before strongbranching, propagation has to be be
7100 * Before solving the strong branching LP, domain propagation can be performed. The number of propagation rounds
7103 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7110 * @warning When using this method, LP banching candidates and solution values must be copied beforehand, because
7124 SCIP_Bool* downvalid, /**< stores whether the returned down value is a valid dual bound, or NULL;
7128 SCIP_Bool* downinf, /**< pointer to store whether the downwards branch is infeasible, or NULL */
7130 SCIP_Bool* downconflict, /**< pointer to store whether a conflict constraint was created for an
7140 /** gets strong branching information on column variable x with integral LP solution value (val); that is, the down branch
7143 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7150 * @note If the integral LP solution value is the lower or upper bound of the variable, the corresponding branch will be
7160 SCIP_Bool* downvalid, /**< stores whether the returned down value is a valid dual bound, or NULL;
7164 SCIP_Bool* downinf, /**< pointer to store whether the downwards branch is infeasible, or NULL */
7166 SCIP_Bool* downconflict, /**< pointer to store whether a conflict constraint was created for an
7176 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7191 SCIP_Bool* downvalid, /**< stores whether the returned down values are valid dual bounds, or NULL;
7195 SCIP_Bool* downinf, /**< array to store whether the downward branches are infeasible, or NULL */
7207 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7222 SCIP_Bool* downvalid, /**< stores whether the returned down values are valid dual bounds, or NULL;
7226 SCIP_Bool* downinf, /**< array to store whether the downward branches are infeasible, or NULL */
7236 /** gets strong branching information on COLUMN variable of the last SCIPgetVarStrongbranch() call;
7237 * returns values of SCIP_INVALID, if strong branching was not yet called on the given variable;
7238 * keep in mind, that the returned old values may have nothing to do with the current LP solution
7240 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7253 SCIP_Bool* downvalid, /**< stores whether the returned down value is a valid dual bound, or NULL;
7257 SCIP_Real* solval, /**< stores LP solution value of variable at last strong branching call, or NULL */
7261 /** gets node number of the last node in current branch and bound run, where strong branching was used on the
7264 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7285 /** if strong branching was already applied on the variable at the current node, returns the number of LPs solved after
7289 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7312 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7335 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7359 /** locks rounding of variable with respect to the lock status of the constraint and its negation;
7360 * this method should be called whenever the lock status of a variable in a constraint changes, for example if
7361 * the coefficient of the variable changed its sign or if the left or right hand sides of the constraint were
7364 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7387 /** unlocks rounding of variable with respect to the lock status of the constraint and its negation;
7388 * this method should be called whenever the lock status of a variable in a constraint changes, for example if
7389 * the coefficient of the variable changed its sign or if the left or right hand sides of the constraint were
7392 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7417 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7434 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7449 /** returns the adjusted (i.e. rounded, if the given variable is of integral type) lower bound value;
7452 * @return adjusted lower bound for the given variable; the bound of the variable is not changed
7475 /** returns the adjusted (i.e. rounded, if the given variable is of integral type) upper bound value;
7478 * @return adjusted upper bound for the given variable; the bound of the variable is not changed
7501 /** depending on SCIP's stage, changes lower bound of variable in the problem, in preprocessing, or in current node;
7502 * if possible, adjusts bound to integral value; doesn't store any inference information in the bound change, such
7505 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7508 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7517 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7526 /** depending on SCIP's stage, changes upper bound of variable in the problem, in preprocessing, or in current node;
7527 * if possible, adjusts bound to integral value; doesn't store any inference information in the bound change, such
7530 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7533 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7542 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7551 /** changes lower bound of variable in the given node; if possible, adjust bound to integral value; doesn't store any
7552 * inference information in the bound change, such that in conflict analysis, this change is treated like a branching
7555 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7568 /** changes upper bound of variable in the given node; if possible, adjust bound to integral value; doesn't store any
7569 * inference information in the bound change, such that in conflict analysis, this change is treated like a branching
7572 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7585 /** changes global lower bound of variable; if possible, adjust bound to integral value; also tightens the local bound,
7588 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7591 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7600 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7609 /** changes global upper bound of variable; if possible, adjust bound to integral value; also tightens the local bound,
7612 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7615 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7624 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7633 /** changes lazy lower bound of the variable, this is only possible if the variable is not in the LP yet
7635 * lazy bounds are bounds, that are enforced by constraints and the objective function; hence, these bounds do not need
7638 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7648 * @note lazy bounds are useful for branch-and-price since the corresponding variable bounds are not part of the LP
7657 /** changes lazy upper bound of the variable, this is only possible if the variable is not in the LP yet
7659 * lazy bounds are bounds, that are enforced by constraints and the objective function; hence, these bounds do not need
7662 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7672 * @note lazy bounds are useful for branch-and-price since the corresponding variable bounds are not part of the LP
7681 /** changes lower bound of variable in preprocessing or in the current node, if the new bound is tighter
7682 * (w.r.t. bound strengthening epsilon) than the current bound; if possible, adjusts bound to integral value;
7683 * doesn't store any inference information in the bound change, such that in conflict analysis, this change
7686 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7689 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7697 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7709 /** changes upper bound of variable in preprocessing or in the current node, if the new bound is tighter
7710 * (w.r.t. bound strengthening epsilon) than the current bound; if possible, adjusts bound to integral value;
7711 * doesn't store any inference information in the bound change, such that in conflict analysis, this change
7714 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7717 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7725 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7737 /** changes lower bound of variable in preprocessing or in the current node, if the new bound is tighter
7738 * (w.r.t. bound strengthening epsilon) than the current bound; if possible, adjusts bound to integral value;
7739 * the given inference constraint is stored, such that the conflict analysis is able to find out the reason
7742 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7745 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7753 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7767 /** changes upper bound of variable in preprocessing or in the current node, if the new bound is tighter
7768 * (w.r.t. bound strengthening epsilon) than the current bound; if possible, adjusts bound to integral value;
7769 * the given inference constraint is stored, such that the conflict analysis is able to find out the reason
7772 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7775 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7783 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7797 /** depending on SCIP's stage, fixes binary variable in the problem, in preprocessing, or in current node;
7798 * the given inference constraint is stored, such that the conflict analysis is able to find out the reason for the
7801 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7817 SCIP_Bool* tightened /**< pointer to store whether the fixing tightened the local bounds, or NULL */
7820 /** changes lower bound of variable in preprocessing or in the current node, if the new bound is tighter
7821 * (w.r.t. bound strengthening epsilon) than the current bound; if possible, adjusts bound to integral value;
7822 * the given inference propagator is stored, such that the conflict analysis is able to find out the reason
7825 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7828 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7836 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7850 /** changes upper bound of variable in preprocessing or in the current node, if the new bound is tighter
7851 * (w.r.t. bound strengthening epsilon) than the current bound; if possible, adjusts bound to integral value;
7852 * the given inference propagator is stored, such that the conflict analysis is able to find out the reason
7855 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7858 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7866 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7880 /** depending on SCIP's stage, fixes binary variable in the problem, in preprocessing, or in current node;
7881 * the given inference propagator is stored, such that the conflict analysis is able to find out the reason for the
7884 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7901 SCIP_Bool* tightened /**< pointer to store whether the fixing tightened the local bounds, or NULL */
7904 /** changes global lower bound of variable in preprocessing or in the current node, if the new bound is tighter
7905 * (w.r.t. bound strengthening epsilon) than the current global bound; if possible, adjusts bound to integral value;
7908 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7911 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7920 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7932 /** changes global upper bound of variable in preprocessing or in the current node, if the new bound is tighter
7933 * (w.r.t. bound strengthening epsilon) than the current global bound; if possible, adjusts bound to integral value;
7936 * @warning If SCIP is in presolving stage, it can happen that the internal variable array (which can be accessed via
7939 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
7948 * @note During presolving, an integer variable whose bound changes to {0,1} is upgraded to a binary variable.
7960 /** for a multi-aggregated variable, returns the global lower bound computed by adding the global bounds from all aggregation variables
7961 * this global bound may be tighter than the one given by SCIPvarGetLbGlobal, since the latter is not updated if bounds of aggregation variables are changing
7962 * calling this function for a non-multi-aggregated variable results in a call to SCIPvarGetLbGlobal
7964 * @return the global lower bound computed by adding the global bounds from all aggregation variables
7972 /** for a multi-aggregated variable, returns the global upper bound computed by adding the global bounds from all aggregation variables
7973 * this global bound may be tighter than the one given by SCIPvarGetUbGlobal, since the latter is not updated if bounds of aggregation variables are changing
7974 * calling this function for a non-multi-aggregated variable results in a call to SCIPvarGetUbGlobal
7976 * @return the global upper bound computed by adding the global bounds from all aggregation variables
7984 /** for a multi-aggregated variable, returns the local lower bound computed by adding the local bounds from all aggregation variables
7985 * this local bound may be tighter than the one given by SCIPvarGetLbLocal, since the latter is not updated if bounds of aggregation variables are changing
7986 * calling this function for a non-multi-aggregated variable results in a call to SCIPvarGetLbLocal
7988 * @return the local lower bound computed by adding the global bounds from all aggregation variables
7996 /** for a multi-aggregated variable, returns the local upper bound computed by adding the local bounds from all aggregation variables
7997 * this local bound may be tighter than the one given by SCIPvarGetUbLocal, since the latter is not updated if bounds of aggregation variables are changing
7998 * calling this function for a non-multi-aggregated variable results in a call to SCIPvarGetUbLocal
8000 * @return the local upper bound computed by adding the global bounds from all aggregation variables
8010 /* In optimized mode, the function calls are overwritten by defines to reduce the number of function calls and
8014 #define SCIPcomputeVarLbGlobal(scip, var) (SCIPvarGetStatus(var) == SCIP_VARSTATUS_MULTAGGR ? SCIPvarGetMultaggrLbGlobal(var, (scip)->set) : SCIPvarGetLbGlobal(var))
8015 #define SCIPcomputeVarUbGlobal(scip, var) (SCIPvarGetStatus(var) == SCIP_VARSTATUS_MULTAGGR ? SCIPvarGetMultaggrUbGlobal(var, (scip)->set) : SCIPvarGetUbGlobal(var))
8016 #define SCIPcomputeVarLbLocal(scip, var) (SCIPvarGetStatus(var) == SCIP_VARSTATUS_MULTAGGR ? SCIPvarGetMultaggrLbLocal(var, (scip)->set) : SCIPvarGetLbLocal(var))
8017 #define SCIPcomputeVarUbLocal(scip, var) (SCIPvarGetStatus(var) == SCIP_VARSTATUS_MULTAGGR ? SCIPvarGetMultaggrUbLocal(var, (scip)->set) : SCIPvarGetUbLocal(var))
8021 /** returns solution value and index of variable lower bound that is closest to the variable's value in the given primal
8022 * solution or current LP solution if no primal solution is given; returns an index of -1 if no variable lower bound is
8025 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8039 /** returns solution value and index of variable upper bound that is closest to the variable's value in the given primal solution;
8040 * or current LP solution if no primal solution is given; returns an index of -1 if no variable upper bound is available
8042 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8056 /** informs variable x about a globally valid variable lower bound x >= b*z + d with integer variable z;
8062 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8082 /** informs variable x about a globally valid variable upper bound x <= b*z + d with integer variable z;
8088 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8107 /** informs binary variable x about a globally valid implication: x == 0 or x == 1 ==> y <= b or y >= b;
8110 * if the variable is already fixed to the given value, the implication is performed immediately;
8113 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8126 SCIP_Bool varfixing, /**< FALSE if y should be added in implications for x == 0, TRUE for x == 1 */
8135 /** adds a clique information to SCIP, stating that at most one of the given binary variables can be set to 1;
8138 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8151 SCIP_Bool* values, /**< values of the variables in the clique; NULL to use TRUE for all vars */
8158 * afterwards the output array contains one value for each variable, such that two variables got the same value iff they
8160 * the first variable is always assigned to clique 0, and a variable can only be assigned to clique i if at least one of
8164 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8177 SCIP_VAR**const vars, /**< binary variables in the clique from which at most one can be set to 1 */
8180 int*const ncliques /**< pointer to store the number of cliques actually contained in the partition */
8184 * afterwards the output array contains one value for each variable, such that two variables got the same value iff they
8186 * the first variable is always assigned to clique 0 and a variable can only be assigned to clique i if at least one of
8188 * for each clique with n_c variables at least n_c-1 variables can be set to TRUE in a feasible solution;
8190 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8203 SCIP_VAR**const vars, /**< binary variables in the clique from which at most one can be set to 1 */
8206 int*const ncliques /**< pointer to store the number of cliques actually contained in the partition */
8252 * if regardimplics is TRUE, both the cliques and the implications of the implication graph are regarded
8254 * @return TRUE, if there is a clique that contains both variable/clique pairs; FALSE, otherwise
8282 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8298 * If @p writenodeweights is true, only nodes corresponding to variables that have a fractional value and only edges
8309 /** sets the branch factor of the variable; this value can be used in the branching methods to scale the score
8310 * values of the variables; higher factor leads to a higher probability that this variable is chosen for branching
8312 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8334 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8356 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8376 /** sets the branch priority of the variable; variables with higher branch priority are always preferred to variables
8379 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8401 /** changes the branch priority of the variable to the given value, if it is larger than the current priority
8403 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8420 int branchpriority /**< new branch priority of the variable, if it is larger than current priority */
8425 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8445 /** sets the branch direction of the variable (-1: prefer downwards branch, 0: automatic selection, +1: prefer upwards
8448 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8465 SCIP_BRANCHDIR branchdirection /**< preferred branch direction of the variable (downwards, upwards, auto) */
8470 * @warning This type change might change the variable array returned from SCIPgetVars() and SCIPgetVarsData();
8472 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8480 * @note If SCIP is already beyond the SCIP_STAGE_PROBLEM and a original variable is passed, the variable type of the
8481 * corresponding transformed variable is changed; the type of the original variable does not change
8483 * @note If the type changes from a continuous variable to a non-continuous variable the bounds of the variable get
8495 /** in problem creation and solving stage, both bounds of the variable are set to the given value;
8496 * in presolving stage, the variable is converted into a fixed variable, and bounds are changed respectively;
8497 * conversion into a fixed variable changes the vars array returned from SCIPgetVars() and SCIPgetVarsData(),
8500 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8514 SCIP_Bool* fixed /**< pointer to store whether the fixing was performed (variable was unfixed) */
8517 /** From a given equality a*x + b*y == c, aggregates one of the variables and removes it from the set of
8518 * active problem variables. This changes the vars array returned from SCIPgetVars() and SCIPgetVarsData(),
8519 * and also renders the arrays returned from the SCIPvarGetImpl...() methods for the two variables invalid.
8520 * In the first step, the equality is transformed into an equality with active problem variables
8521 * a'*x' + b'*y' == c'. If x' == y', this leads to the detection of redundancy if a' == -b' and c' == 0,
8522 * of infeasibility, if a' == -b' and c' != 0, or to a variable fixing x' == c'/(a'+b') (and possible
8524 * In the second step, the variable to be aggregated is chosen among x' and y', prefering a less strict variable
8525 * type as aggregation variable (i.e. continuous variables are preferred over implicit integers, implicit integers
8526 * over integers, and integers over binaries). If none of the variables is continuous, it is tried to find an integer
8527 * aggregation (i.e. integral coefficients a'' and b'', such that a''*x' + b''*y' == c''). This can lead to
8528 * the detection of infeasibility (e.g. if c'' is fractional), or to a rejection of the aggregation (denoted by
8529 * aggregated == FALSE), if the resulting integer coefficients are too large and thus numerically instable.
8534 * - aggregated: the aggregation was successfully performed (the variables were not aggregated before)
8536 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8554 /** converts variable into multi-aggregated variable; this changes the variable array returned from
8557 * @warning The integrality condition is not checked anymore on the multi-aggregated variable. You must not
8558 * multi-aggregate an integer variable without being sure, that integrality on the aggregation variables
8563 * - aggregated: the aggregation was successfully performed (the variables were not aggregated before)
8565 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8603 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8615 * @note There exists no "unmark" method since it has to be ensured that if a plugin requires that a variable is not
8654 /** updates the pseudo costs of the given variable and the global pseudo costs after a change of "solvaldelta" in the
8655 * variable's solution value and resulting change of "objdelta" in the in the LP's objective value;
8658 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
8758 /** gets the variable's (possible fractional) number of pseudo cost updates for the given direction
8760 * @return the variable's (possible fractional) number of pseudo cost updates for the given direction
8778 /** gets the variable's (possible fractional) number of pseudo cost updates for the given direction,
8781 * @return the variable's (possible fractional) number of pseudo cost updates for the given direction,
8998 /** returns the average number of inferences found after branching on the variable in given direction;
8999 * if branching on the variable in the given direction was yet evaluated, the average number of inferences
9002 * @return the average number of inferences found after branching on the variable in given direction
9020 /** returns the average number of inferences found after branching on the variable in given direction in the current run;
9021 * if branching on the variable in the given direction was yet evaluated, the average number of inferences
9024 * @return the average number of inferences found after branching on the variable in given direction in the current run
9061 /** returns the variable's average inference score value only using inferences of the current run
9063 * @return the variable's average inference score value only using inferences of the current run
9080 /** initializes the upwards and downwards pseudocosts, conflict scores, conflict lengths, inference scores, cutoff scores
9083 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9099 SCIP_Real downpscost, /**< value to which pseudocosts for downwards branching should be initialized */
9100 SCIP_Real uppscost, /**< value to which pseudocosts for upwards branching should be initialized */
9101 SCIP_Real downvsids, /**< value to which VSIDS score for downwards branching should be initialized */
9102 SCIP_Real upvsids, /**< value to which VSIDS score for upwards branching should be initialized */
9103 SCIP_Real downconflen, /**< value to which conflict length score for downwards branching should be initialized */
9104 SCIP_Real upconflen, /**< value to which conflict length score for upwards branching should be initialized */
9105 SCIP_Real downinfer, /**< value to which inference counter for downwards branching should be initialized */
9106 SCIP_Real upinfer, /**< value to which inference counter for upwards branching should be initialized */
9107 SCIP_Real downcutoff, /**< value to which cutoff counter for downwards branching should be initialized */
9108 SCIP_Real upcutoff /**< value to which cutoff counter for upwards branching should be initialized */
9111 /** returns the average number of cutoffs found after branching on the variable in given direction;
9112 * if branching on the variable in the given direction was yet evaluated, the average number of cutoffs
9115 * @return the average number of cutoffs found after branching on the variable in given direction
9133 /** returns the average number of cutoffs found after branching on the variable in given direction in the current run;
9134 * if branching on the variable in the given direction was yet evaluated, the average number of cutoffs
9137 * @return the average number of cutoffs found after branching on the variable in given direction in the current run
9193 /** returns the variable's average inference/cutoff score value, weighting the cutoffs of the variable with the given
9214 /** returns the variable's average inference/cutoff score value, weighting the cutoffs of the variable with the given
9217 * @return the variable's average inference/cutoff score value, only using inferences and cutoffs of the current run
9237 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9275 /** return TRUE if conflict analysis is applicable; In case the function return FALSE there is no need to initialize the
9278 * @return return TRUE if conflict analysis is applicable; In case the function return FALSE there is no need to initialize the
9294 /** initializes the conflict analysis by clearing the conflict candidate queue; this method must be called before you
9295 * enter the conflict variables by calling SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPaddConflictBd(),
9296 * SCIPaddConflictRelaxedLb(), SCIPaddConflictRelaxedUb(), SCIPaddConflictRelaxedBd(), or SCIPaddConflictBinvar();
9298 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9312 /** adds lower bound of variable at the time of the given bound change index to the conflict analysis' candidate storage;
9314 * 1. Before calling the SCIPanalyzeConflict() method, SCIPaddConflictLb() should be called for each lower bound
9316 * 2. In the propagation conflict resolving method of a constraint handler, SCIPaddConflictLb() should be called
9317 * for each lower bound, whose current assignment led to the deduction of the given conflict bound.
9319 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9332 SCIP_BDCHGIDX* bdchgidx /**< bound change index representing time on path to current node, when the
9336 /** adds lower bound of variable at the time of the given bound change index to the conflict analysis' candidate storage
9337 * with the additional information of a relaxed lower bound; this relaxed lower bound is the one which would be enough
9340 * 1. Before calling the SCIPanalyzeConflict() method, SCIPaddConflictRelaxedLb() should be called for each (relaxed) lower bound
9342 * 2. In the propagation conflict resolving method of a constraint handler, SCIPaddConflictRelexedLb() should be called
9343 * for each (relaxed) lower bound, whose current assignment led to the deduction of the given conflict bound.
9345 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9358 SCIP_BDCHGIDX* bdchgidx, /**< bound change index representing time on path to current node, when the
9363 /** adds upper bound of variable at the time of the given bound change index to the conflict analysis' candidate storage;
9365 * 1. Before calling the SCIPanalyzeConflict() method, SCIPaddConflictUb() should be called for each upper bound that
9367 * 2. In the propagation conflict resolving method of a constraint handler, SCIPaddConflictUb() should be called for
9370 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9383 SCIP_BDCHGIDX* bdchgidx /**< bound change index representing time on path to current node, when the
9387 /** adds upper bound of variable at the time of the given bound change index to the conflict analysis' candidate storage
9388 * with the additional information of a relaxed upper bound; this relaxed upper bound is the one which would be enough
9391 * 1. Before calling the SCIPanalyzeConflict() method, SCIPaddConflictRelaxedUb() should be called for each (relaxed) upper
9392 * bound that led to the conflict (e.g. the infeasibility of globally or locally valid constraint).
9393 * 2. In the propagation conflict resolving method of a constraint handler, SCIPaddConflictRelaxedUb() should be
9394 * called for each (relaxed) upper bound, whose current assignment led to the deduction of the given conflict
9397 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9410 SCIP_BDCHGIDX* bdchgidx, /**< bound change index representing time on path to current node, when the
9415 /** adds lower or upper bound of variable at the time of the given bound change index to the conflict analysis' candidate
9417 * 1. Before calling the SCIPanalyzeConflict() method, SCIPaddConflictBd() should be called for each bound
9419 * 2. In the propagation conflict resolving method of a constraint handler, SCIPaddConflictBd() should be called
9422 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9436 SCIP_BDCHGIDX* bdchgidx /**< bound change index representing time on path to current node, when the
9440 /** adds lower or upper bound of variable at the time of the given bound change index to the conflict analysis'
9441 * candidate storage; with the additional information of a relaxed upper bound; this relaxed upper bound is the one
9444 * 1. Before calling the SCIPanalyzeConflict() method, SCIPaddConflictRelaxedBd() should be called for each (relaxed)
9445 * bound that led to the conflict (e.g. the infeasibility of globally or locally valid constraint).
9446 * 2. In the propagation conflict resolving method of a constraint handler, SCIPaddConflictRelaxedBd() should be
9447 * called for each (relaxed) bound, whose current assignment led to the deduction of the given conflict bound.
9449 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9463 SCIP_BDCHGIDX* bdchgidx, /**< bound change index representing time on path to current node, when the
9470 * 1. Before calling the SCIPanalyzeConflict() method, SCIPaddConflictBinvar() should be called for each fixed binary
9471 * variable that led to the conflict (e.g. the infeasibility of globally or locally valid constraint).
9472 * 2. In the propagation conflict resolving method of a constraint handler, SCIPaddConflictBinvar() should be called
9473 * for each binary variable, whose current fixing led to the deduction of the given conflict bound.
9475 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9490 /** checks if the given variable is already part of the current conflict set or queued for resolving with the same or
9493 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9507 SCIP_BDCHGIDX* bdchgidx, /**< bound change index representing time on path to current node, when the
9512 /** returns the conflict lower bound if the variable is present in the current conflict set; otherwise the global lower
9515 * @return returns the conflict lower bound if the variable is present in the current conflict set; otherwise the global lower
9530 /** returns the conflict upper bound if the variable is present in the current conflict set; otherwise minus global
9533 * @return returns the conflict upper bound if the variable is present in the current conflict set; otherwise minus global
9548 /** analyzes conflict bounds that were added after a call to SCIPinitConflictAnalysis() with calls to
9550 * SCIPaddConflictRelaxedUb(), SCIPaddConflictRelaxedBd(), or SCIPaddConflictBinvar(); on success, calls the conflict
9551 * handlers to create a conflict constraint out of the resulting conflict set; the given valid depth must be a depth
9552 * level, at which the conflict set defined by calls to SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPaddConflictBd(),
9553 * SCIPaddConflictRelaxedLb(), SCIPaddConflictRelaxedUb(), SCIPaddConflictRelaxedBd(), and SCIPaddConflictBinvar() is
9554 * valid for the whole subtree; if the conflict was found by a violated constraint, use SCIPanalyzeConflictCons()
9557 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9573 /** analyzes conflict bounds that were added with calls to SCIPaddConflictLb(), SCIPaddConflictUb(),
9574 * SCIPaddConflictBd(), SCIPaddConflictRelaxedLb(), SCIPaddConflictRelaxedUb(), SCIPaddConflictRelaxedBd(), or
9575 * SCIPaddConflictBinvar(); on success, calls the conflict handlers to create a conflict constraint out of the
9576 * resulting conflict set; the given constraint must be the constraint that detected the conflict, i.e. the constraint
9577 * that is infeasible in the local bounds of the initial conflict set (defined by calls to SCIPaddConflictLb(),
9578 * SCIPaddConflictUb(), SCIPaddConflictBd(), SCIPaddConflictRelaxedLb(), SCIPaddConflictRelaxedUb(),
9581 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9611 * @warning If a constraint is marked to be checked for feasibility but not to be enforced, a LP or pseudo solution may
9612 * be declared feasible even if it violates this particular constraint. This constellation should only be
9613 * used, if no LP or pseudo solution can violate the constraint -- e.g. if a local constraint is redundant due
9616 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9630 * @note the constraint gets captured, hence at one point you have to release it using the method SCIPreleaseCons()
9657 SCIP_Bool removable, /**< should the relaxation be removed from the LP due to aging or cleanup?
9659 SCIP_Bool stickingatnode /**< should the constraint always be kept at the node where it was added, even
9664 /** parses constraint information (in cip format) out of a string; if the parsing process was successful a constraint is
9667 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9680 * @warning If a constraint is marked to be checked for feasibility but not to be enforced, a LP or pseudo solution may
9681 * be declared feasible even if it violates this particular constraint. This constellation should only be
9682 * used, if no LP or pseudo solution can violate the constraint -- e.g. if a local constraint is redundant due
9708 SCIP_Bool removable, /**< should the relaxation be removed from the LP due to aging or cleanup?
9710 SCIP_Bool stickingatnode, /**< should the constraint always be kept at the node where it was added, even
9718 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9739 /** decreases usage counter of constraint, if the usage pointer reaches zero the constraint gets freed
9741 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9768 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9785 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9804 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9823 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9842 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9861 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9880 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9901 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9921 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9940 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9959 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9978 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
9995 /** gets and captures transformed constraint of a given constraint; if the constraint is not yet transformed,
9998 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10019 * if a constraint in the array is not yet transformed, a new transformed constraint for this constraint is created;
10022 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10046 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10071 * it is possible to call this method with conss == transconss, but remember that constraints that are not
10074 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10104 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10127 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10149 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10167 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10184 /** disables constraint's separation, propagation, and enforcing capabilities, s.t. the constraint is not propagated,
10186 * in contrast to SCIPdelConsLocal() and SCIPdelConsNode(), the disabling is not associated to a node in the tree and
10187 * does not consume memory; therefore, the constraint is neither automatically enabled on leaving the node nor
10189 * note that the constraints enforcing capabilities are necessary for the solution's feasibility, if the constraint
10190 * is a model constraint; that means, you must be sure that the constraint cannot be violated in the current subtree,
10191 * and you have to enable it again manually by calling SCIPenableCons(), if this subtree is left (e.g. by using
10194 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10214 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10231 /** disables constraint's separation capabilities s.t. the constraint is not propagated anymore until the separation
10232 * is enabled again with a call to SCIPenableConsSeparation(); in contrast to SCIPdelConsLocal() and SCIPdelConsNode(),
10233 * the disabling is not associated to a node in the tree and does not consume memory; therefore, the constraint
10234 * is neither automatically enabled on leaving the node nor automatically disabled again on entering the node again
10236 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10255 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10274 /** disables constraint's propagation capabilities s.t. the constraint is not propagated anymore until the propagation
10275 * is enabled again with a call to SCIPenableConsPropagation(); in contrast to SCIPdelConsLocal() and SCIPdelConsNode(),
10276 * the disabling is not associated to a node in the tree and does not consume memory; therefore, the constraint
10277 * is neither automatically enabled on leaving the node nor automatically disabled again on entering the node again
10279 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10301 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10313 * @note if a constraint is marked to be propagated, the age of the constraint will be ignored for propagation
10323 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10341 /** adds given values to lock status of the constraint and updates the rounding locks of the involved variables
10343 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10367 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10393 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10399 * @note This is an advanced method and should be used with caution. It may only be called for constraints that were not
10406 SCIP_Bool solinfeasible, /**< was the solution already declared infeasible by a constraint handler? */
10407 SCIP_Bool objinfeasible, /**< is the solution infeasible anyway due to violating lower objective bound? */
10413 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10419 * @note This is an advanced method and should be used with caution. It may only be called for constraints that were not
10426 SCIP_Bool solinfeasible, /**< was the solution already declared infeasible by a constraint handler? */
10432 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10438 * @note This is an advanced method and should be used with caution. It may only be called for constraints that were not
10449 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10466 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10484 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10504 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10511 * @note This is an advanced method and should be used with caution. It may only be called for constraints that were not
10519 int inferinfo, /**< the user information passed to the corresponding SCIPinferVarLbCons() or SCIPinferVarUbCons() call */
10521 SCIP_BDCHGIDX* bdchgidx, /**< the index of the bound change, representing the point of time where the change took place */
10528 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10541 int nnewfixedvars, /**< number of variables fixed since the last call to the presolving method */
10542 int nnewaggrvars, /**< number of variables aggregated since the last call to the presolving method */
10543 int nnewchgvartypes, /**< number of variable type changes since the last call to the presolving method */
10544 int nnewchgbds, /**< number of variable bounds tightened since the last call to the presolving method */
10545 int nnewholes, /**< number of domain holes added since the last call to the presolving method */
10546 int nnewdelconss, /**< number of deleted constraints since the last call to the presolving method */
10547 int nnewaddconss, /**< number of added constraints since the last call to the presolving method */
10548 int nnewupgdconss, /**< number of upgraded constraints since the last call to the presolving method */
10549 int nnewchgcoefs, /**< number of changed coefficients since the last call to the presolving method */
10550 int nnewchgsides, /**< number of changed left or right hand sides since the last call to the presolving method */
10552 int* naggrvars, /**< pointer to count total number of variables aggregated of all presolvers */
10553 int* nchgvartypes, /**< pointer to count total number of variable type changes of all presolvers */
10554 int* nchgbds, /**< pointer to count total number of variable bounds tightened of all presolvers */
10556 int* ndelconss, /**< pointer to count total number of deleted constraints of all presolvers */
10558 int* nupgdconss, /**< pointer to count total number of upgraded constraints of all presolvers */
10559 int* nchgcoefs, /**< pointer to count total number of changed coefficients of all presolvers */
10560 int* nchgsides, /**< pointer to count total number of changed left/right hand sides of all presolvers */
10566 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10572 * @note This is an advanced method and should be used with caution. It may only be called for constraints that were not
10583 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10590 * @note This is an advanced method and should be used with caution. It may only be called for constraints that were not
10601 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10619 * @note The file stream will not be flushed directly, this can be achieved by calling SCIPinfoMessage() printing a
10631 * If the number of variables is greater than the available slots in the variable array, nothing happens except that
10632 * the success point is set to FALSE. With the method SCIPgetConsNVars() it is possible to get the number of variables
10635 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10654 * @note It might be that a constraint handler does not support this functionality, in that case the success pointer is
10662 int varssize, /**< available slots in vars array which is needed to check if the array is large enough */
10668 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10685 * @note The success pointer indicates if the contraint handler was able to return the number of variables
10687 * @note It might be that a constraint handler does not support this functionality, in that case the success pointer is
10695 SCIP_Bool* success /**< pointer to store whether the constraint successfully returned the number of variables */
10738 /** makes sure that the LP of the current node is loaded and may be accessed through the LP information methods
10740 * @warning Contructing the LP might change the amount of variables known in the transformed problem and therefore also
10741 * the variables array of SCIP (returned by SCIPgetVars() and SCIPgetVarsData()), so it might be necessary to
10744 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10760 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
10787 /** returns whether the current lp is a relaxation of the current problem and its optimal objective value is a local lower bound
10789 * @return whether the current lp is a relaxation of the current problem and its optimal objective value is a local lower bound.
10803 * @return the objective value of current LP (which is the sum of column and loose objective value).
10808 * @note This method returns the objective value of the current LP solution, which might be primal or dual infeasible
10809 * if a limit was hit during solving. It must not be used as a dual bound if the LP solution status returned by
10847 /** gets the global pseudo objective value; that is all variables set to their best (w.r.t. the objective
10850 * @return the global pseudo objective value; that is all variables set to their best (w.r.t. the objective
10868 /** gets the pseudo objective value for the current search node; that is all variables set to their best (w.r.t. the
10871 * @return the pseudo objective value for the current search node; that is all variables set to their best (w.r.t. the
10889 /** returns whether the root lp is a relaxation of the problem and its optimal objective value is a global lower bound
10891 * @return whether the root lp is a relaxation of the problem and its optimal objective value is a global lower bound.
10903 /** gets the objective value of the root node LP or SCIP_INVALID if the root node LP was not (yet) solved
10905 * @return the objective value of the root node LP or SCIP_INVALID if the root node LP was not (yet) solved.
10920 /** gets part of the objective value of the root node LP that results from COLUMN variables only;
10923 * @return the part of the objective value of the root node LP that results from COLUMN variables only;
10939 /** gets part of the objective value of the root node LP that results from LOOSE variables only;
10942 * @return the part of the objective value of the root node LP that results from LOOSE variables only;
10960 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11005 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11048 /** returns TRUE iff all columns, i.e. every variable with non-empty column w.r.t. all ever created rows, are present
11049 * in the LP, and FALSE, if there are additional already existing columns, that may be added to the LP in pricing
11051 * @return TRUE iff all columns, i.e. every variable with non-empty column w.r.t. all ever created rows, are present
11052 * in the LP, and FALSE, if there are additional already existing columns, that may be added to the LP in pricing.
11064 /** returns whether the current LP solution is basic, i.e. is defined by a valid simplex basis
11078 /** gets all indices of basic columns and rows: index i >= 0 corresponds to column i, index i < 0 to row -i-1
11080 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11096 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11113 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11132 /** gets a row from the product of inverse basis matrix B^-1 and coefficient matrix A (i.e. from B^-1 * A)
11134 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11150 /** gets a column from the product of inverse basis matrix B^-1 and coefficient matrix A (i.e. from B^-1 * A),
11153 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11168 /** calculates a weighted sum of all LP rows; for negative weights, the left and right hand side of the corresponding
11171 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11183 SCIP_REALARRAY* sumcoef, /**< array to store sum coefficients indexed by variables' probindex */
11188 /** calculates a MIR cut out of the weighted sum of LP rows; The weights of modifiable rows are set to 0.0, because these
11191 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11203 SCIP_Real boundswitch, /**< fraction of domain up to which lower bound is used in transformation */
11205 SCIP_Bool allowlocal, /**< should local information allowed to be used, resulting in a local cut? */
11206 SCIP_Bool fixintegralrhs, /**< should complementation tried to be adjusted such that rhs gets fractional? */
11207 int* boundsfortrans, /**< bounds that should be used for transformed variables: vlb_idx/vub_idx,
11210 SCIP_BOUNDTYPE* boundtypesfortrans, /**< type of bounds that should be used for transformed variables;
11213 SCIP_Real maxweightrange, /**< maximal valid range max(|weights|)/min(|weights|) of row weights */
11217 int* sidetypes, /**< specify row side type (-1 = lhs, 0 = unkown, 1 = rhs) or NULL for automatic choices */
11219 SCIP_Real* mksetcoefs, /**< array to store mixed knapsack set coefficients: size nvars; or NULL */
11220 SCIP_Bool* mksetcoefsvalid, /**< pointer to store whether mixed knapsack set coefficients are valid; or NULL */
11224 SCIP_Bool* success, /**< pointer to store whether the returned coefficients are a valid MIR cut */
11225 SCIP_Bool* cutislocal, /**< pointer to store whether the returned cut is only valid locally */
11229 /** calculates a strong CG cut out of the weighted sum of LP rows; The weights of modifiable rows are set to 0.0, because these
11232 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11243 SCIP_Real boundswitch, /**< fraction of domain up to which lower bound is used in transformation */
11245 SCIP_Bool allowlocal, /**< should local information allowed to be used, resulting in a local cut? */
11247 SCIP_Real maxweightrange, /**< maximal valid range max(|weights|)/min(|weights|) of row weights */
11252 SCIP_Real* mircoef, /**< array to store strong CG coefficients: must be of size SCIPgetNVars() */
11255 SCIP_Bool* success, /**< pointer to store whether the returned coefficients are a valid strong CG cut */
11256 SCIP_Bool* cutislocal, /**< pointer to store whether the returned cut is only valid locally */
11262 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11278 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11290 SCIP_Bool genericnames, /**< should generic names like x_i and row_j be used in order to avoid
11299 * @warning You have to make sure, that the full internal state of the LPI does not change or is recovered completely
11300 * after the end of the method that uses the LPI. In particular, if you manipulate the LP or its solution
11301 * (e.g. by calling one of the SCIPlpiAdd...() or one of the SCIPlpiSolve...() methods), you have to check in
11302 * advance with SCIPlpiWasSolved() whether the LP is currently solved. If this is the case, you have to make
11303 * sure, the internal solution status is recovered completely at the end of your method. This can be achieved
11304 * by getting the LPI state before applying any LPI manipulations with SCIPlpiGetState() and restoring it
11305 * afterwards with SCIPlpiSetState() and SCIPlpiFreeState(). Additionally you have to resolve the LP with the
11308 * @warning Make also sure, that all parameter values that you have changed are set back to their original values.
11310 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11332 /** Displays quality information about the current LP solution. An LP solution need to be available. Information printed
11335 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11363 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11449 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11468 SCIP_Bool modifiable, /**< is row modifiable during node processing (subject to column generation)? */
11474 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11493 SCIP_Bool modifiable, /**< is row modifiable during node processing (subject to column generation)? */
11499 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11517 SCIP_Bool modifiable, /**< is row modifiable during node processing (subject to column generation)? */
11523 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11530 * @deprecated Please use SCIPcreateRowCons() or SCIPcreateRowSepa() when calling from a constraint handler or separator in order
11531 * to facilitate correct statistics. If the call is from neither a constraint handler or separator, use SCIPcreateRowUnspec().
11544 SCIP_Bool modifiable, /**< is row modifiable during node processing (subject to column generation)? */
11550 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11566 SCIP_Bool modifiable, /**< is row modifiable during node processing (subject to column generation)? */
11572 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11588 SCIP_Bool modifiable, /**< is row modifiable during node processing (subject to column generation)? */
11594 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11609 SCIP_Bool modifiable, /**< is row modifiable during node processing (subject to column generation)? */
11615 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11622 * @deprecated Please use SCIPcreateEmptyRowCons() or SCIPcreateEmptyRowSepa() when calling from a constraint handler or separator in order
11623 * to facilitate correct statistics. If the call is from neither a constraint handler or separator, use SCIPcreateEmptyRowUnspec().
11633 SCIP_Bool modifiable, /**< is row modifiable during node processing (subject to column generation)? */
11639 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11654 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11670 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11686 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11700 /** informs row, that all subsequent additions of variables to the row should be cached and not directly applied;
11702 * while the caching of row extensions is activated, information methods of the row give invalid results;
11703 * caching should be used, if a row is build with SCIPaddVarToRow() calls variable by variable to increase
11706 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11719 /** flushes all cached row extensions after a call of SCIPcacheRowExtensions() and merges coefficients with
11722 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11737 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11744 * @note In case calling this method in the enforcement process of an lp solution, it might be that some variables,
11745 * that were not yet in the LP (e.g. dynamic columns) will change their lp solution value returned by SCIP.
11746 * For example, a variable, which has a negative objective value, that has no column in the lp yet, is in the lp solution
11747 * on its upper bound (variables with status SCIP_VARSTATUS_LOOSE are in an lp solution on it's best bound), but
11748 * creating the column, changes the solution value (variable than has status SCIP_VARSTATUS_COLUMN, and the
11749 * initialization sets the lp solution value) to 0.0. (This leads to the conclusion that, if a constraint was
11761 * this method caches the row extensions and flushes them afterwards to gain better performance
11763 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11780 * this method caches the row extensions and flushes them afterwards to gain better performance
11782 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11798 /** tries to find a value, such that all row coefficients, if scaled with this value become integral
11800 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11811 SCIP_Real mindelta, /**< minimal relative allowed difference of scaled coefficient s*c and integral i */
11812 SCIP_Real maxdelta, /**< maximal relative allowed difference of scaled coefficient s*c and integral i */
11815 SCIP_Bool usecontvars, /**< should the coefficients of the continuous variables also be made integral? */
11816 SCIP_Real* intscalar, /**< pointer to store scalar that would make the coefficients integral, or NULL */
11822 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11833 SCIP_Real mindelta, /**< minimal relative allowed difference of scaled coefficient s*c and integral i */
11834 SCIP_Real maxdelta, /**< maximal relative allowed difference of scaled coefficient s*c and integral i */
11837 SCIP_Bool usecontvars, /**< should the coefficients of the continuous variables also be made integral? */
11908 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11935 * @return the feasibility of a row in the last LP solution: negative value means infeasibility
11948 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
11973 /** returns the feasibility of a row for the current pseudo solution: negative value means infeasibility
11975 * @return the feasibility of a row for the current pseudo solution: negative value means infeasibility
11988 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12056 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12084 * If the NLP relaxation is enabled, then SCIP will construct the NLP relaxation when the solving process is about to begin.
12104 * This method should be called by a constraint handler if it has constraints that have a representation as nonlinear rows.
12106 * The function should be called before the branch-and-bound process is initialized, e.g., when presolve is exiting.
12178 /** computes for each variables the number of NLP rows in which the variable appears in a nonlinear var
12187 int* nlcount /**< an array of length at least SCIPnlpGetNVars() to store nonlinearity counts of variables */
12272 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12282 SCIP_Real* initialguess /**< values of initial guess (corresponding to variables from SCIPgetNLPVarsData), or NULL to use no start point */
12287 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12297 SCIP_SOL* sol /**< solution which values should be taken as initial guess, or NULL for LP solution */
12302 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12338 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12374 /** gets fractional variables of last NLP solution along with solution values and fractionalities
12376 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12387 SCIP_Real** fracvarssol, /**< pointer to store the array of NLP fractional variables solution values, or NULL */
12388 SCIP_Real** fracvarsfrac, /**< pointer to store the array of NLP fractional variables fractionalities, or NULL */
12390 int* npriofracvars /**< pointer to store the number of NLP fractional variables with maximal branching priority, or NULL */
12395 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12411 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12427 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12443 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12459 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12475 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12491 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12507 * @warning You have to make sure, that the full internal state of the NLPI does not change or is recovered completely
12508 * after the end of the method that uses the NLPI. In particular, if you manipulate the NLP or its solution
12509 * (e.g. by calling one of the SCIPnlpiAdd...() or the SCIPnlpiSolve() method), you have to check in advance
12510 * whether the NLP is currently solved. If this is the case, you have to make sure, the internal solution
12511 * status is recovered completely at the end of your method. Additionally you have to resolve the NLP with
12514 * @warning Make also sure, that all parameter values that you have changed are set back to their original values.
12516 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12541 * making methods SCIPchgVarObjDiveNLP(), SCIPchgVarBoundsDiveNLP(), SCIPchgVarsBoundsDiveNLP(), and SCIPsolveDiveNLP() available
12543 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12556 * resets changes made by SCIPchgVarObjDiveNLP(), SCIPchgVarBoundsDiveNLP(), and SCIPchgVarsBoundsDiveNLP()
12558 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12572 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12588 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12605 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12623 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12647 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12667 SCIP_QUADELEM* quadelems, /**< elements (i.e., monomials) in quadratic term, or NULL if nquadelems == 0 */
12675 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12694 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12711 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12727 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12744 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12761 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12778 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12795 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12813 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12834 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12853 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12871 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12888 * variable indices of the quadratic element need to be relative to quadratic variables array of row
12890 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12906 * variable indices of the quadratic elements need to be relative to quadratic variables array of row
12908 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12928 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12945 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12962 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12980 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
12997 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13013 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13027 /** gives the feasibility of a nonlinear row in the last NLP solution: negative value means infeasibility
13029 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13045 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13060 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13074 /** gives the feasibility of a nonlinear row for the current pseudo solution: negative value means infeasibility
13076 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13092 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13107 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13123 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13137 /** gives the activity of a nonlinear row for the given primal solution or NLP solution or pseudo solution
13139 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13156 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13173 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13191 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13213 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13239 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13268 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13297 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13334 /** returns efficacy of the cut with respect to the given primal solution or the current LP solution:
13337 * @return the efficacy of the cut with respect to the given primal solution or the current LP solution:
13350 /** returns whether the cut's efficacy with respect to the given primal solution or the current LP solution is greater
13353 * @return TRUE if the cut's efficacy with respect to the given primal solution or the current LP solution is greater
13368 * @return TRUE if the given cut's efficacy is larger than the minimal cut efficacy, otherwise FALSE
13376 /** calculates the efficacy norm of the given vector, which depends on the "separating/efficacynorm" parameter
13378 * @return the efficacy norm of the given vector, which depends on the "separating/efficacynorm" parameter
13397 * @return whether the cut is modifiable, not a bound change, or a bound change that changes bounds by at least epsilon
13407 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13419 SCIP_Bool* infeasible /**< pointer to store whether cut has been detected to be infeasible for local bounds */
13424 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13438 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13494 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13516 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13540 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13556 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13572 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13589 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13604 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13620 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13633 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13646 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13658 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13670 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13680 /** separates the given primal solution or the current LP solution by calling the separators and constraint handlers'
13682 * the generated cuts are stored in the separation storage and can be accessed with the methods SCIPgetCuts() and
13684 * after evaluating the cuts, you have to call SCIPclearCuts() in order to remove the cuts from the
13686 * it is possible to call SCIPseparateSol() multiple times with different solutions and evaluate the found cuts
13689 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13699 SCIP_Bool pretendroot, /**< should the cut separators be called as if we are at the root node? */
13700 SCIP_Bool onlydelayed, /**< should only separators be called that were delayed in the previous round? */
13735 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13746 /** removes cuts that are inefficacious w.r.t. the current LP solution from separation storage without adding the cuts to the LP
13748 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13759 /** returns current factor on cut infeasibility to limit feasibility tolerance for relaxation solver
13785 /** initiates LP diving, making methods SCIPchgVarObjDive(), SCIPchgVarLbDive(), and SCIPchgVarUbDive() available
13787 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13795 * @note diving is allowed even if the current LP is not flushed, not solved, or not solved to optimality; be aware
13796 * that solving the (first) diving LP may take longer than expect and that the latter two cases could stem from
13797 * numerical troubles during the last LP solve; because of this, most users will want to call this method only if
13805 /** quits LP diving and resets bounds and objective values of columns to the current node's values
13807 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13822 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13838 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13855 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13872 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13889 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13903 /** changes row lhs in current dive, change will be undone after diving ends, for permanent changes use SCIPchgRowLhs()
13905 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13920 /** changes row rhs in current dive, change will be undone after diving ends, for permanent changes use SCIPchgRowRhs()
13922 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13983 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
13991 * @note be aware that the LP solve may take longer than expected if SCIPgetLPSolstat(scip) != SCIP_LPSOLSTAT_OPTIMAL,
14003 /** returns the number of the node in the current branch and bound run, where the last LP was solved in diving
14006 * @return the number of the node in the current branch and bound run, where the last LP was solved in diving
14065 /** returns whether we are in probing mode; probing mode is activated via SCIPstartProbing() and stopped
14086 /** initiates probing, making methods SCIPnewProbingNode(), SCIPbacktrackProbing(), SCIPchgVarLbProbing(),
14087 * SCIPchgVarUbProbing(), SCIPfixVarProbing(), SCIPpropagateProbing(), and SCIPsolveProbingLP() available
14089 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14096 * @note The collection of variable statistics is turned off during probing. If these statistics should be collected
14104 /** creates a new probing sub node, whose changes can be undone by backtracking to a higher node in the probing path
14108 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14122 * @return the probing depth, i.e. the number of probing sub nodes existing in the probing path
14134 * the changes of the probing node of the given probing depth are the last ones that remain active;
14137 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14147 int probingdepth /**< probing depth of the node in the probing path that should be reactivated */
14152 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14164 /** injects a change of variable's lower bound into current probing node; the same can also be achieved with a call to
14165 * SCIPchgVarLb(), but in this case, the bound change would be treated like a deduction instead of a branching decision
14167 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14181 /** injects a change of variable's upper bound into current probing node; the same can also be achieved with a call to
14182 * SCIPchgVarUb(), but in this case, the bound change would be treated like a deduction instead of a branching decision
14184 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14198 /** injects a change of variable's bounds into current probing node to fix the variable to the specified value;
14199 * the same can also be achieved with a call to SCIPfixVar(), but in this case, the bound changes would be treated
14202 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14216 /** applies domain propagation on the probing sub problem, that was changed after SCIPstartProbing() was called;
14217 * the propagated domains of the variables can be accessed with the usual bound accessing calls SCIPvarGetLbLocal()
14218 * and SCIPvarGetUbLocal(); the propagation is only valid locally, i.e. the local bounds as well as the changed
14219 * bounds due to SCIPchgVarLbProbing(), SCIPchgVarUbProbing(), and SCIPfixVarProbing() are used for propagation
14221 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14231 int maxproprounds, /**< maximal number of propagation rounds (-1: no limit, 0: parameter settings) */
14233 SCIP_Longint* ndomredsfound /**< pointer to store the number of domain reductions found, or NULL */
14236 /** applies domain propagation on the probing sub problem, that was changed after SCIPstartProbing() was called;
14237 * only propagations of the binary variables fixed at the current probing node that are triggered by the implication
14239 * the propagated domains of the variables can be accessed with the usual bound accessing calls SCIPvarGetLbLocal()
14240 * and SCIPvarGetUbLocal(); the propagation is only valid locally, i.e. the local bounds as well as the changed
14241 * bounds due to SCIPchgVarLbProbing(), SCIPchgVarUbProbing(), and SCIPfixVarProbing() are used for propagation
14243 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14259 * The LP has to be constructed before (you can use SCIPisLPConstructed() or SCIPconstructLP()).
14261 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14272 SCIP_Bool* cutoff /**< pointer to store whether the probing LP was infeasible or the objective
14276 /** solves the LP at the current probing node (cannot be applied at preprocessing stage) and applies pricing
14279 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed . See \ref
14293 SCIP_Bool* cutoff /**< pointer to store whether the probing LP was infeasible or the objective
14310 /** gets branching candidates for LP solution branching (fractional variables) along with solution values,
14311 * fractionalities, and number of branching candidates; The number of branching candidates does NOT
14312 * account for fractional implicit integer variables which should not be used for branching decisions.
14314 * Fractional implicit integer variables are stored at the positions *nlpcands to *nlpcands + *nfracimplvars - 1
14316 * branching rules should always select the branching candidate among the first npriolpcands of the candidate
14319 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14331 SCIP_Real** lpcandssol, /**< pointer to store the array of LP candidate solution values, or NULL */
14332 SCIP_Real** lpcandsfrac, /**< pointer to store the array of LP candidate fractionalities, or NULL */
14334 int* npriolpcands, /**< pointer to store the number of candidates with maximal priority, or NULL */
14335 int* nfracimplvars /**< pointer to store the number of fractional implicit integer variables, or NULL */
14338 /** gets number of branching candidates for LP solution branching (number of fractional variables)
14340 * @return the number of branching candidates for LP solution branching (number of fractional variables).
14366 /** gets external branching candidates along with solution values, scores, and number of branching candidates;
14368 * branching rules should always select the branching candidate among the first nprioexterncands of the candidate
14371 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14379 * @note Candidate variables with maximal priority are ordered: binaries first, then integers, implicit integers and
14385 SCIP_VAR*** externcands, /**< pointer to store the array of extern branching candidates, or NULL */
14386 SCIP_Real** externcandssol, /**< pointer to store the array of extern candidate solution values, or NULL */
14387 SCIP_Real** externcandsscore, /**< pointer to store the array of extern candidate scores, or NULL */
14388 int* nexterncands, /**< pointer to store the number of extern branching candidates, or NULL */
14389 int* nprioexterncands, /**< pointer to store the number of candidates with maximal priority, or NULL */
14390 int* nprioexternbins, /**< pointer to store the number of binary candidates with maximal priority, or NULL */
14391 int* nprioexternints, /**< pointer to store the number of integer candidates with maximal priority, or NULL */
14392 int* nprioexternimpls /**< pointer to store the number of implicit integer candidates with maximal priority,
14452 /** gets number of implicit integer external branching candidates with maximal branch priority
14454 * @return the number of implicit integer external branching candidates with maximal branch priority.
14468 * @return the number of continuous external branching candidates with maximal branch priority.
14480 /** insert variable, its score and its solution value into the external branching candidate storage
14481 * the relative difference of the current lower and upper bounds of a continuous variable must be at least epsilon
14483 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14511 /** checks whether the given variable is contained in the candidate storage for external branching
14513 * @return whether the given variable is contained in the candidate storage for external branching.
14526 /** gets branching candidates for pseudo solution branching (non-fixed variables) along with the number of candidates
14528 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14540 SCIP_VAR*** pseudocands, /**< pointer to store the array of pseudo branching candidates, or NULL */
14541 int* npseudocands, /**< pointer to store the number of pseudo branching candidates, or NULL */
14542 int* npriopseudocands /**< pointer to store the number of candidates with maximal priority, or NULL */
14547 * @return the number branching candidates for pseudo solution branching (non-fixed variables).
14560 /** gets number of branching candidates with maximal branch priority for pseudo solution branching
14562 * @return the number of branching candidates with maximal branch priority for pseudo solution branching.
14575 /** gets number of binary branching candidates with maximal branch priority for pseudo solution branching
14577 * @return the number of binary branching candidates with maximal branch priority for pseudo solution branching.
14589 /** gets number of integer branching candidates with maximal branch priority for pseudo solution branching
14591 * @return the number of integer branching candidates with maximal branch priority for pseudo solution branching.
14603 /** gets number of implicit integer branching candidates with maximal branch priority for pseudo solution branching
14605 * @return the number of implicit integer branching candidates with maximal branch priority for pseudo solution branching.
14634 /** calculates the branching score out of the gain predictions for a branching with arbitrary many children
14636 * @return the branching score out of the gain predictions for a branching with arbitrary many children.
14668 /** calculates the node selection priority for moving the given variable's LP value to the given target value;
14671 * @return the node selection priority for moving the given variable's LP value to the given target value.
14682 SCIP_BRANCHDIR branchdir, /**< type of branching that was performed: upwards, downwards, or fixed;
14688 /** calculates an estimate for the objective of the best feasible solution contained in the subtree after applying the given
14691 * @return the estimate for the objective of the best feasible solution contained in the subtree after applying the given
14708 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14721 SCIP_Real estimate /**< estimate for (transformed) objective value of best feasible solution in subtree */
14733 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14745 SCIP_NODE** downchild, /**< pointer to return the left child with variable rounded down, or NULL */
14747 SCIP_NODE** upchild /**< pointer to return the right child with variable rounded up, or NULL */
14750 /** branches a variable x using a given domain hole; two child nodes (x <= left, x >= right) are created
14752 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14771 * for continuous variables with relative domain width larger epsilon, x' must not be one of the bounds;
14778 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14791 SCIP_NODE** downchild, /**< pointer to return the left child with variable rounded down, or NULL */
14793 SCIP_NODE** upchild /**< pointer to return the right child with variable rounded up, or NULL */
14797 * Branches on variable x such that up to n/2 children are created on each side of the usual branching value.
14799 * The parameters minwidth and widthfactor determine the domain width of the branching variable in the child nodes.
14800 * If n is odd, one child with domain width 'width' and having the branching value in the middle is created.
14801 * Otherwise, two children with domain width 'width' and being left and right of the branching value are created.
14802 * Next further nodes to the left and right are created, where width is multiplied by widthfactor with increasing distance from the first nodes.
14803 * The initial width is calculated such that n/2 nodes are created to the left and to the right of the branching value.
14804 * If this value is below minwidth, the initial width is set to minwidth, which may result in creating less than n nodes.
14806 * Giving a large value for widthfactor results in creating children with small domain when close to the branching value
14807 * and large domain when closer to the current variable bounds. That is, setting widthfactor to a very large value and n to 3
14808 * results in a ternary branching where the branching variable is mostly fixed in the middle child.
14809 * Setting widthfactor to 1.0 results in children where the branching variable always has the same domain width
14812 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14827 SCIP_Real widthfactor, /**< multiplier for children domain width with increasing distance from val, must be >= 1.0 */
14831 /** calls branching rules to branch on an LP solution; if no fractional variables exist, the result is SCIP_DIDNOTRUN;
14832 * if the branch priority of an unfixed variable is larger than the maximal branch priority of the fractional
14833 * variables, pseudo solution branching is applied on the unfixed variables with maximal branch priority
14835 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14849 /** calls branching rules to branch on a external candidates; if no such candidates exist, the result is SCIP_DIDNOTRUN
14851 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14865 /** calls branching rules to branch on a pseudo solution; if no unfixed variables exist, the result is SCIP_DIDNOTRUN
14867 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14895 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14918 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14933 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14948 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14963 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14976 /** creates a primal solution, initialized to the current LP or pseudo solution, depending on whether the LP was solved
14979 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
14994 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15015 * a solution in original space allows to set original variables to values that would be invalid in the
15018 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15039 /** creates a copy of a primal solution; note that a copy of a linked solution is also linked and needs to be unlinked
15042 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15063 /** creates a copy of a primal solution, thereby replacing infinite fixings of variables by finite values;
15065 * success indicates whether the objective value of the solution was changed by removing infinite values
15067 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15093 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15118 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15132 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15146 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15160 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15175 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15189 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15214 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15236 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15263 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15291 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15320 * @pre In case the solution pointer @p sol is @b NULL, that means it is asked for the LP or pseudo solution, this method
15321 * can only be called if @p scip is in the solving stage \ref SCIP_STAGE_SOLVING. In any other case, this method
15345 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15371 /** returns objective value of primal CIP solution w.r.t. original problem, or current LP/pseudo objective value
15373 * @return objective value of primal CIP solution w.r.t. original problem, or current LP/pseudo objective value
15395 /** returns transformed objective value of primal CIP solution, or transformed current LP/pseudo objective value
15397 * @return transformed objective value of primal CIP solution, or transformed current LP/pseudo objective value
15577 /** adjusts solution values of implicit integer variables in handed solution. Solution objective value is not
15580 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15590 SCIP_Bool uselprows /**< should LP row information be considered for none-objective variables */
15595 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15598 * @pre In case the solution pointer @p sol is NULL (askinking for the current LP/pseudo solution), this method can be
15608 * @pre In case the solution pointer @p sol is @b not NULL, this method can be called if @p scip is in one of the
15631 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15655 * @note This only works if no presolving has been performed, which can be checked by calling method \ref
15658 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15672 /** outputs non-zero variables of solution representing a ray in original problem space to file stream
15674 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15697 /** gets number of feasible primal solutions stored in the solution storage in case the problem is transformed;
15698 * in case the problem stage is SCIP_STAGE_PROBLEM, the number of solution in the original solution candidate
15701 * @return number of feasible primal solutions stored in the solution storage in case the problem is transformed; or
15702 * number of solution in the original solution candidate storage if the problem stage is SCIP_STAGE_PROBLEM
15721 /** gets array of feasible primal solutions stored in the solution storage in case the problem is transformed; in case
15722 * if the problem stage is in SCIP_STAGE_PROBLEM, it returns the number array of solution candidate stored
15743 /** gets best feasible primal solution found so far if the problem is transformed; in case the problem is in
15744 * SCIP_STAGE_PROBLEM it returns the best solution candidate, or NULL if no solution has been found or the candidate
15768 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15793 /** outputs best feasible primal solution found so far in transformed variables to file stream
15795 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15822 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15837 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15862 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15883 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15907 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15931 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15947 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15973 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
15999 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16018 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16043 /** checks solution for feasibility in original problem without adding it to the solution store;
16046 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16071 * @return return whether a primal ray is stored that proves unboundedness of the LP relaxation
16110 * If you want to catch an event for an original variable, you have to get the corresponding transformed variable
16117 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16138 SCIP_EVENTDATA* eventdata, /**< event data to pass to the event handler when processing this event */
16144 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16165 SCIP_EVENTDATA* eventdata, /**< event data to pass to the event handler when processing this event */
16171 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16193 SCIP_EVENTDATA* eventdata, /**< event data to pass to the event handler when processing this event */
16197 /** drops an objective value or domain change event (stops to track event) on the given transformed variable
16199 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16221 SCIP_EVENTDATA* eventdata, /**< event data to pass to the event handler when processing this event */
16227 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16249 SCIP_EVENTDATA* eventdata, /**< event data to pass to the event handler when processing this event */
16253 /** drops a row coefficient, constant, or side change event (stops to track event) on the given row
16255 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16277 SCIP_EVENTDATA* eventdata, /**< event data to pass to the event handler when processing this event */
16340 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16367 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16394 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16419 /** gets the best child of the focus node w.r.t. the node selection priority assigned by the branching rule
16421 * @return the best child of the focus node w.r.t. the node selection priority assigned by the branching rule
16431 /** gets the best sibling of the focus node w.r.t. the node selection priority assigned by the branching rule
16433 * @return the best sibling of the focus node w.r.t. the node selection priority assigned by the branching rule
16479 /** gets the best node from the tree (child, sibling, or leaf) w.r.t. the node selection strategy
16481 * @return the best node from the tree (child, sibling, or leaf) w.r.t. the node selection strategy
16521 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16533 /** marks the given node to be propagated again the next time a node of its subtree is processed
16535 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16573 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
16693 /** gets total number of iterations used so far in primal and dual simplex and barrier algorithm
16695 * @return the total number of iterations used so far in primal and dual simplex and barrier algorithm
16708 /** gets total number of iterations used so far in primal and dual simplex and barrier algorithm for the root node
16710 * @return the total number of iterations used so far in primal and dual simplex and barrier algorithm for the root node
16722 /** gets total number of iterations used in primal and dual simplex and barrier algorithm for the first LP at the root
16725 * @return the total number of iterations used in primal and dual simplex and barrier algorithm for the first root LP
16823 * @return the total number of LPs solved so far that were resolved from an advanced start basis
16835 /** gets total number of simplex iterations used so far in primal and dual simplex calls where an advanced start basis
16838 * @return the total number of simplex iterations used so far in primal and dual simplex calls where an advanced start
16851 /** gets total number of primal LPs solved so far that were resolved from an advanced start basis
16853 * @return the total number of primal LPs solved so far that were resolved from an advanced start basis
16865 /** gets total number of simplex iterations used so far in primal simplex calls where an advanced start basis
16868 * @return the total number of simplex iterations used so far in primal simplex calls where an advanced start
16881 /** gets total number of dual LPs solved so far that were resolved from an advanced start basis
16883 * @return the total number of dual LPs solved so far that were resolved from an advanced start basis
16895 /** gets total number of simplex iterations used so far in dual simplex calls where an advanced start basis
16898 * @return the total number of simplex iterations used so far in dual simplex calls where an advanced start
16955 * @return the total number of simplex iterations used so far for initial LP in node relaxations
16995 /** gets total number of times, strong branching was called (each call represents solving two LPs)
16997 * @return the total number of times, strong branching was called (each call represents solving two LPs)
17023 /** gets total number of times, strong branching was called at the root node (each call represents solving two LPs)
17025 * @return the total number of times, strong branching was called at the root node (each call represents solving two LPs)
17039 * @return the total number of simplex iterations used so far in strong branching at the root node
17159 /** get total number of constraints found in conflict analysis (conflict and reconvergence constraints)
17161 * @return the total number of constraints found in conflict analysis (conflict and reconvergence constraints)
17219 /** gets depth of current node, or -1 if no current node exists; in probing, the current node is the last probing node,
17222 * @return the depth of current node, or -1 if no current node exists; in probing, the current node is the last probing node,
17241 /** gets depth of the focus node, or -1 if no focus node exists; the focus node is the currently processed node in the
17244 * @return the depth of the focus node, or -1 if no focus node exists; the focus node is the currently processed node in the
17263 /** gets maximal depth of all processed nodes in current branch and bound run (excluding probing nodes)
17265 * @return the maximal depth of all processed nodes in current branch and bound run (excluding probing nodes)
17303 /** gets total number of backtracks, i.e. number of times, the new node was selected from the leaves queue
17305 * @return the total number of backtracks, i.e. number of times, the new node was selected from the leaves queue
17467 /** gets lower (dual) bound in transformed problem obtained by the first LP solve at the root node
17469 * @return the lower (dual) bound in transformed problem obtained by first LP solve at the root node
17485 /** gets global primal bound (objective value of best solution or user objective limit) for the original problem
17487 * @return the global primal bound (objective value of best solution or user objective limit) for the original problem
17505 /** gets global upper (primal) bound in transformed problem (objective value of best solution or user objective limit)
17507 * @return the global upper (primal) bound in transformed problem (objective value of best solution or user objective limit)
17525 /** gets global cutoff bound in transformed problem: a sub problem with lower bound larger than the cutoff
17526 * cannot contain a better feasible solution; usually, this bound is equal to the upper bound, but if the
17527 * objective value is always integral, the cutoff bound is (nearly) one less than the upper bound;
17528 * additionally, due to objective function domain propagation, the cutoff bound can be further reduced
17550 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
17568 /** returns whether the current primal bound is justified with a feasible primal solution; if not, the primal bound
17571 * @return TRUE if the current primal bound is justified with a feasible primal solution, otherwise FALSE
17589 /** gets current gap |(primalbound - dualbound)/min(|primalbound|,|dualbound|)| if both bounds have same sign,
17592 * @return the current gap |(primalbound - dualbound)/min(|primalbound|,|dualbound|)| if both bounds have same sign,
17605 /** gets current gap |(upperbound - lowerbound)/min(|upperbound|,|lowerbound|)| in transformed problem if both bounds
17608 * @return current gap |(upperbound - lowerbound)/min(|upperbound|,|lowerbound|)| in transformed problem if both bounds
17661 /** gets number of feasible primal solutions found so far, that improved the primal bound at the time they were found
17663 * @return the number of feasible primal solutions found so far, that improved the primal bound at the time they were found
17713 * @return the average number of pseudo cost updates for the given direction over all variables
17725 /** gets the average number of pseudo cost updates for the given direction over all variables,
17728 * @return the average number of pseudo cost updates for the given direction over all variables,
17741 /** gets the average pseudo cost score value over all variables, assuming a fractionality of 0.5
17743 * @return the average pseudo cost score value over all variables, assuming a fractionality of 0.5
17754 /** gets the average pseudo cost score value over all variables, assuming a fractionality of 0.5,
17757 * @return the average pseudo cost score value over all variables, assuming a fractionality of 0.5,
17775 /** gets the average conflict score value over all variables, only using the pseudo cost information of the current run
17777 * @return the average conflict score value over all variables, only using the pseudo cost information of the current run
17801 /** gets the average conflictlength score value over all variables, only using the pseudo cost information of the
17804 * @return the average conflictlength score value over all variables, only using the pseudo cost information of the
17816 /** returns the average number of inferences found after branching in given direction over all variables
17818 * @return the average number of inferences found after branching in given direction over all variables
17830 /** returns the average number of inferences found after branching in given direction over all variables,
17833 * @return the average number of inferences found after branching in given direction over all variables,
17859 /** gets the average inference score value over all variables, only using the inference information information of the
17862 * @return the average inference score value over all variables, only using the inference information information of the
17874 /** returns the average number of cutoffs found after branching in given direction over all variables
17876 * @return the average number of cutoffs found after branching in given direction over all variables
17888 /** returns the average number of cutoffs found after branching in given direction over all variables,
17891 * @return the average number of cutoffs found after branching in given direction over all variables,
17917 /** gets the average cutoff score value over all variables, only using the pseudo cost information of the current run
17919 * @return the average cutoff score value over all variables, only using the pseudo cost information of the current run
17932 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
17959 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
17984 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
17987 * @note If limits have been changed between the solution and the call to this function, the status is recomputed and
18009 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18031 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18041 SCIP_VERBLEVEL verblevel, /**< minimal verbosity level to actually display the information line */
18045 /** gets total number of implications between variables that are stored in the implication graph
18047 * @return the total number of implications between variables that are stored in the implication graph
18063 /** stores conflict graph of binary variables' implications into a file, which can be used as input for the DOT tool
18065 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18108 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18119 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18130 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18141 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18152 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18163 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18174 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18186 * Method reads the value of the parameter timing/statistictiming. In order to disable statistic timing,
18192 * @see: For completely disabling all timing of SCIP, consider setting the parameter timing/enabled to FALSE
18217 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18243 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18279 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18464 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18475 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18487 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18498 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
18519 /** returns the minimum value that is regarded as huge and should be handled separately (e.g., in activity
18574 /** checks, if value is huge and should be handled separately (e.g., in activity computation) */
18729 /** checks, if relative difference of val1 and val2 is not greater than feasibility tolerance */
18832 /** checks, if relative difference of val1 and val2 is not greater than dual feasibility tolerance */
18840 /** checks, if relative difference of val1 and val2 is greater than dual feasibility tolerance */
18848 /** checks, if relative difference of val1 and val2 is not lower than -dual feasibility tolerance */
18919 /** checks, if the given new lower bound is tighter (w.r.t. bound strengthening epsilon) than the old one */
18928 /** checks, if the given new upper bound is tighter (w.r.t. bound strengthening epsilon) than the old one */
19016 /** converts the given real number representing an integer to an int; in optimized mode the function gets inlined for
19025 /** converts the given real number representing an integer to a long integer; in optimized mode the function gets inlined for
19035 * This is useful, if the value, e.g., the activity of a linear constraint or the pseudo objective value, gets a high
19036 * absolute value during the optimization process which is later reduced significantly. In this case, the last digits
19038 * We do not consider the cancellations which can occur during increasing the absolute value because they just cannot
19040 * In order to get more reliable values, the idea is to always store the last reliable value, where increasing the
19041 * absolute of the value is viewed as preserving reliability. Then, after each update, the new absolute value can be
19042 * compared against the last reliable one with this method, checking whether it was decreased by a factor of at least
19054 /* In optimized mode, the function calls are overwritten by defines to reduce the number of function calls and
19071 #define SCIPisScalingIntegral(scip, val, scalar) SCIPsetIsScalingIntegral((scip)->set, val, scalar)
19117 #define SCIPisLbBetter(scip, newlb, oldlb, oldub) SCIPsetIsLbBetter(scip->set, newlb, oldlb, oldub)
19118 #define SCIPisUbBetter(scip, newub, oldlb, oldub) SCIPsetIsUbBetter(scip->set, newub, oldlb, oldub)
19131 #define SCIPconvertRealToInt(scip, real) ((int)((real) < 0 ? ((real) - 0.5) : ((real) + 0.5)))
19132 #define SCIPconvertRealToLongint(scip, real) ((SCIP_Longint)((real) < 0 ? ((real) - 0.5) : ((real) + 0.5)))
19134 #define SCIPisUpdateUnreliable(scip, newval, oldval) SCIPsetIsUpdateUnreliable((scip)->set, newval, oldval)
19163 #define SCIPallocClearMemoryArray(scip,ptr,num) ( (BMSallocClearMemoryArray((ptr), (num)) == NULL) \
19167 #define SCIPreallocMemoryArray(scip,ptr,newnum) ( (BMSreallocMemoryArray((ptr), (newnum)) == NULL) \
19169 #define SCIPreallocMemorySize(scip,ptr,newsize) ( (BMSreallocMemorySize((ptr), (newsize)) == NULL) \
19171 #define SCIPduplicateMemory(scip, ptr, source) ( (BMSduplicateMemory((ptr), (source)) == NULL) \
19183 #define SCIPallocBlockMemory(scip,ptr) ( (BMSallocBlockMemory(SCIPblkmem(scip), (ptr)) == NULL) \
19185 #define SCIPallocBlockMemoryArray(scip,ptr,num) ( (BMSallocBlockMemoryArray(SCIPblkmem(scip), (ptr), (num)) == NULL) \
19187 #define SCIPallocBlockMemorySize(scip,ptr,size) ( (BMSallocBlockMemorySize(SCIPblkmem(scip), (ptr), (size)) == NULL) \
19206 #define SCIPfreeBlockMemoryArray(scip,ptr,num) BMSfreeBlockMemoryArray(SCIPblkmem(scip), (ptr), (num))
19209 #define SCIPfreeBlockMemorySize(scip,ptr,size) BMSfreeBlockMemorySize(SCIPblkmem(scip), (ptr), (size))
19213 #define SCIPallocBuffer(scip,ptr) SCIPallocBufferSize(scip, (void**)(ptr), (int)sizeof(**(ptr)))
19214 #define SCIPallocBufferArray(scip,ptr,num) SCIPallocBufferSize(scip, (void**)(ptr), (num)*(int)sizeof(**(ptr)))
19215 #define SCIPreallocBufferArray(scip,ptr,num) SCIPreallocBufferSize(scip, (void**)(ptr), (num)*(int)sizeof(**(ptr)))
19216 #define SCIPduplicateBuffer(scip,ptr,source) SCIPduplicateBufferSize(scip, (void**)(ptr), source, (int)sizeof(**(ptr)))
19222 #define SCIPfreeBufferArrayNull(scip,ptr) { if( *(ptr) != NULL ) SCIPfreeBufferArray(scip, ptr); }
19262 /** extends a dynamically allocated block memory array to be able to store at least the given number of elements;
19265 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19279 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19289 /** allocates a memory buffer with at least the given size and copies the given memory into the buffer
19291 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19304 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19319 int dummysize /**< used to get a safer define for SCIPfreeBuffer() and SCIPfreeBufferArray() */
19342 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19353 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19364 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19395 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19408 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19441 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19452 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19463 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19476 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19498 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19511 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19544 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19555 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19566 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19579 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19601 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19634 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19645 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19656 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19669 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19688 * @return \ref SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See \ref
19721 /* In optimized mode, the function calls are overwritten by defines to reduce the number of function calls and
19727 #define SCIPextendRealarray(scip, realarray, minidx, maxidx) SCIPrealarrayExtend(realarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, minidx, maxidx)
19730 #define SCIPsetRealarrayVal(scip, realarray, idx, val) SCIPrealarraySetVal(realarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, idx, val)
19731 #define SCIPincRealarrayVal(scip, realarray, idx, incval) SCIPrealarrayIncVal(realarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, idx, incval)
19737 #define SCIPextendIntarray(scip, intarray, minidx, maxidx) SCIPintarrayExtend(intarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, minidx, maxidx)
19740 #define SCIPsetIntarrayVal(scip, intarray, idx, val) SCIPintarraySetVal(intarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, idx, val)
19741 #define SCIPincIntarrayVal(scip, intarray, idx, incval) SCIPintarrayIncVal(intarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, idx, incval)
19747 #define SCIPextendBoolarray(scip, boolarray, minidx, maxidx) SCIPboolarrayExtend(boolarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, minidx, maxidx)
19750 #define SCIPsetBoolarrayVal(scip, boolarray, idx, val) SCIPboolarraySetVal(boolarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, idx, val)
19756 #define SCIPextendPtrarray(scip, ptrarray, minidx, maxidx) SCIPptrarrayExtend(ptrarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, minidx, maxidx)
19759 #define SCIPsetPtrarrayVal(scip, ptrarray, idx, val) SCIPptrarraySetVal(ptrarray, (scip)->set->mem_arraygrowinit, (scip)->set->mem_arraygrowfac, idx, val)
SCIP_RETCODE SCIPsetNLPRealPar(SCIP *scip, SCIP_NLPPARAM type, SCIP_Real dval) Definition: scip.c:26701 SCIP_RETCODE SCIPsetPresolInitpre(SCIP *scip, SCIP_PRESOL *presol, SCIP_DECL_PRESOLINITPRE((*presolinitpre))) Definition: scip.c:6012 SCIP_CONSHDLR * SCIPfindConshdlr(SCIP *scip, const char *name) Definition: scip.c:5600 SCIP_RETCODE SCIPunmarkConsPropagate(SCIP *scip, SCIP_CONS *cons) Definition: scip.c:23510 SCIP_RETCODE SCIPgetOpenNodesData(SCIP *scip, SCIP_NODE ***leaves, SCIP_NODE ***children, SCIP_NODE ***siblings, int *nleaves, int *nchildren, int *nsiblings) Definition: scip.c:33819 SCIP_RETCODE SCIPupdateVarBranchPriority(SCIP *scip, SCIP_VAR *var, int branchpriority) Definition: scip.c:20548 SCIP_RETCODE SCIPsetNlRowExprtreeParam(SCIP *scip, SCIP_NLROW *nlrow, int paramidx, SCIP_Real paramval) Definition: scip.c:27483 SCIP_Real SCIPgetConflictVarLb(SCIP *scip, SCIP_VAR *var) Definition: scip.c:22343 SCIP_Real SCIPgetVarImplRedcost(SCIP *scip, SCIP_VAR *var, SCIP_Bool varfixing) Definition: scip.c:15780 SCIP_RETCODE SCIPgetVarStrongbranchInt(SCIP *scip, SCIP_VAR *var, int itlim, SCIP_Real *down, SCIP_Real *up, SCIP_Bool *downvalid, SCIP_Bool *upvalid, SCIP_Bool *downinf, SCIP_Bool *upinf, SCIP_Bool *downconflict, SCIP_Bool *upconflict, SCIP_Bool *lperror) Definition: scip.c:17140 SCIP_RETCODE SCIPsetConshdlrActive(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSACTIVE((*consactive))) Definition: scip.c:5401 SCIP_RETCODE SCIPgetLPBInvACol(SCIP *scip, int c, SCIP_Real *coef) Definition: scip.c:24687 char ** SCIPgetExternalCodeDescriptions(SCIP *scip) Definition: scip.c:8173 SCIP_RETCODE SCIPcopyImplicationsCliques(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, SCIP_Bool *infeasible, int *nbdchgs, int *ncopied) Definition: scip.c:2823 SCIP_RETCODE SCIPsetSepaInit(SCIP *scip, SCIP_SEPA *sepa, SCIP_DECL_SEPAINIT((*sepainit))) Definition: scip.c:6456 SCIP_Real SCIPgetCutEfficacy(SCIP *scip, SCIP_SOL *sol, SCIP_ROW *cut) Definition: scip.c:28125 SCIP_RETCODE SCIPsetBranchruleInit(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHINIT((*branchinit))) Definition: scip.c:7753 SCIP_RETCODE SCIPcreateNlRowFromRow(SCIP *scip, SCIP_NLROW **nlrow, SCIP_ROW *row) Definition: scip.c:27098 SCIP_RETCODE SCIPsetLongintParam(SCIP *scip, const char *name, SCIP_Longint value) Definition: scip.c:3869 SCIP_RETCODE SCIPsetPricerPriority(SCIP *scip, SCIP_PRICER *pricer, int priority) Definition: scip.c:4772 SCIP_RETCODE SCIPdelRowCutpool(SCIP *scip, SCIP_CUTPOOL *cutpool, SCIP_ROW *row) Definition: scip.c:28549 SCIP_Bool SCIPisFeasGE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38724 Definition: struct_presol.h:36 Definition: struct_nodesel.h:51 SCIP_Longint SCIPgetNDivingLPIterations(SCIP *scip) Definition: scip.c:34514 SCIP_RETCODE SCIPgetConsVars(SCIP *scip, SCIP_CONS *cons, SCIP_VAR **vars, int varssize, SCIP_Bool *success) Definition: scip.c:23975 SCIP_RETCODE SCIPsetBranchruleExit(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXIT((*branchexit))) Definition: scip.c:7769 SCIP_RETCODE SCIPsetNLPStringPar(SCIP *scip, SCIP_NLPPARAM type, const char *sval) Definition: scip.c:26757 SCIP_Bool SCIPisFeasLT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38667 SCIP_RETCODE SCIPsetNodeselInitsol(SCIP *scip, SCIP_NODESEL *nodesel, SCIP_DECL_NODESELINITSOL((*nodeselinitsol))) Definition: scip.c:7523 SCIP_RETCODE SCIPisConflictVarUsed(SCIP *scip, SCIP_VAR *var, SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Bool *used) Definition: scip.c:22317 SCIP_RETCODE SCIPsetConflicthdlrFree(SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTFREE((*conflictfree))) Definition: scip.c:5732 Definition: struct_var.h:97 SCIP_Bool SCIPisEfficacious(SCIP *scip, SCIP_Real efficacy) Definition: scip.c:28166 SCIP_RETCODE SCIPsetNLPIntPar(SCIP *scip, SCIP_NLPPARAM type, int ival) Definition: scip.c:26645 SCIP_RETCODE SCIPupdateVarPseudocost(SCIP *scip, SCIP_VAR *var, SCIP_Real solvaldelta, SCIP_Real objdelta, SCIP_Real weight) Definition: scip.c:21163 SCIP_RETCODE SCIPgetIntParam(SCIP *scip, const char *name, int *value) Definition: scip.c:3600 SCIP_RETCODE SCIPgetProbvarLinearSum(SCIP *scip, SCIP_VAR **vars, SCIP_Real *scalars, int *nvars, int varssize, SCIP_Real *constant, int *requiredsize, SCIP_Bool mergemultiples) Definition: scip.c:15614 SCIP_Real SCIPadjustedVarLb(SCIP *scip, SCIP_VAR *var, SCIP_Real lb) Definition: scip.c:17866 SCIP_RETCODE SCIPsetConshdlrParse(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPARSE((*consparse))) Definition: scip.c:5539 SCIP_RETCODE SCIPduplicateBufferSize(SCIP *scip, void **ptr, const void *source, int size) Definition: scip.c:38066 SCIP_RETCODE SCIPgetNlRowPseudoActivity(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real *pseudoactivity) Definition: scip.c:27634 SCIP_Real SCIPgetRowMinActivity(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25756 SCIP_RETCODE SCIPsetNlpiPriority(SCIP *scip, SCIP_NLPI *nlpi, int priority) Definition: scip.c:8127 SCIP_Bool SCIPisUbBetter(SCIP *scip, SCIP_Real newub, SCIP_Real oldlb, SCIP_Real oldub) Definition: scip.c:39067 SCIP_RETCODE SCIPaddVarLocks(SCIP *scip, SCIP_VAR *var, int nlocksdown, int nlocksup) Definition: scip.c:17590 Definition: intervalarith.h:36 SCIP_Bool SCIPisRelEQ(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39080 Definition: struct_reader.h:35 public methods for branching and inference history structure Definition: struct_misc.h:142 SCIP_RETCODE SCIPrecalcNlRowPseudoActivity(SCIP *scip, SCIP_NLROW *nlrow) Definition: scip.c:27613 SCIP_RETCODE SCIPgetVarsStrongbranchesFrac(SCIP *scip, SCIP_VAR **vars, int nvars, int itlim, SCIP_Real *down, SCIP_Real *up, SCIP_Bool *downvalid, SCIP_Bool *upvalid, SCIP_Bool *downinf, SCIP_Bool *upinf, SCIP_Bool *downconflict, SCIP_Bool *upconflict, SCIP_Bool *lperror) Definition: scip.c:17226 SCIP_RETCODE SCIPchgVarObj(SCIP *scip, SCIP_VAR *var, SCIP_Real newobj) Definition: scip.c:17775 SCIP_RETCODE SCIPprintSol(SCIP *scip, SCIP_SOL *sol, FILE *file, SCIP_Bool printzeros) Definition: scip.c:32161 SCIP_Bool SCIPisDualfeasLE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38889 public methods for branch and bound tree SCIP_RETCODE SCIPgetNLPI(SCIP *scip, SCIP_NLPI **nlpi, SCIP_NLPIPROBLEM **nlpiproblem) Definition: scip.c:26822 SCIP_RETCODE SCIPstartStrongbranch(SCIP *scip, SCIP_Bool enablepropagation) Definition: scip.c:16196 internal methods for branch and bound tree type definitions for miscellaneous datastructures timing definitions for SCIP SCIP_RETCODE SCIPcreateRowCons(SCIP *scip, SCIP_ROW **row, SCIP_CONSHDLR *conshdlr, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable) Definition: scip.c:25148 SCIP_RETCODE SCIPwriteVarsPolynomial(SCIP *scip, FILE *file, SCIP_VAR ***monomialvars, SCIP_Real **monomialexps, SCIP_Real *monomialcoefs, int *monomialnvars, int nmonomials, SCIP_Bool type) Definition: scip.c:14276 Definition: struct_scip.h:52 SCIP_RETCODE SCIPincludeExternalCodeInformation(SCIP *scip, const char *name, const char *description) Definition: scip.c:8142 SCIP_Real SCIPgetRowSolActivity(SCIP *scip, SCIP_ROW *row, SCIP_SOL *sol) Definition: scip.c:25961 SCIP_RETCODE SCIPaddConflictBinvar(SCIP *scip, SCIP_VAR *var) Definition: scip.c:22285 SCIP_Bool SCIPisSumGT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38574 int SCIPgetIntarrayMinIdx(SCIP *scip, SCIP_INTARRAY *intarray) Definition: scip.c:39603 SCIP_RETCODE SCIPgetNlRowNLPActivity(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real *activity) Definition: scip.c:27557 SCIP_RETCODE SCIPcreateVar(SCIP *scip, SCIP_VAR **var, const char *name, SCIP_Real lb, SCIP_Real ub, SCIP_Real obj, SCIP_VARTYPE vartype, SCIP_Bool initial, SCIP_Bool removable, SCIP_DECL_VARDELORIG((*vardelorig)), SCIP_DECL_VARTRANS((*vartrans)), SCIP_DECL_VARDELTRANS((*vardeltrans)), SCIP_DECL_VARCOPY((*varcopy)), SCIP_VARDATA *vardata) Definition: scip.c:13986 type definitions for NLP management SCIP_RETCODE SCIPincludePresolBasic(SCIP *scip, SCIP_PRESOL **presolptr, const char *name, const char *desc, int priority, int maxrounds, SCIP_Bool delay, SCIP_DECL_PRESOLEXEC((*presolexec)), SCIP_PRESOLDATA *presoldata) Definition: scip.c:5913 SCIP_RETCODE SCIPaddLongintParam(SCIP *scip, 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: scip.c:3442 SCIP_RETCODE SCIPsetPropExitpre(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPEXITPRE((*propexitpre))) Definition: scip.c:6779 SCIP_Real SCIPgetFirstLPDualboundRoot(SCIP *scip) Definition: scip.c:35130 SCIP_RETCODE SCIPsetCharParam(SCIP *scip, const char *name, char value) Definition: scip.c:3959 SCIP_RETCODE SCIPsetPropInit(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPINIT((*propinit))) Definition: scip.c:6699 SCIP_RETCODE SCIPtransformVar(SCIP *scip, SCIP_VAR *var, SCIP_VAR **transvar) Definition: scip.c:15229 SCIP_Bool SCIPisSumRelLE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39213 SCIP_RETCODE SCIPsetNodeselExitsol(SCIP *scip, SCIP_NODESEL *nodesel, SCIP_DECL_NODESELEXITSOL((*nodeselexitsol))) Definition: scip.c:7539 SCIP_RETCODE SCIPrecalcRowLPActivity(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25791 SCIP_RETCODE SCIPchgVarName(SCIP *scip, SCIP_VAR *var, const char *name) Definition: scip.c:15180 SCIP_RETCODE SCIPsetPropCopy(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPCOPY((*propcopy))) Definition: scip.c:6667 SCIP_RETCODE SCIPparseCons(SCIP *scip, SCIP_CONS **cons, const char *str, SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode, SCIP_Bool *success) Definition: scip.c:22560 SCIP_RETCODE SCIPsetConflicthdlrCopy(SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTCOPY((*conflictcopy))) Definition: scip.c:5716 SCIP_RETCODE SCIPsetNodeselCopy(SCIP *scip, SCIP_NODESEL *nodesel, SCIP_DECL_NODESELCOPY((*nodeselcopy))) Definition: scip.c:7459 SCIP_RETCODE SCIPtrySolFree(SCIP *scip, SCIP_SOL **sol, SCIP_Bool printreason, SCIP_Bool checkbounds, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool *stored) Definition: scip.c:33058 public methods for implications, variable bounds, and cliques SCIP_RETCODE SCIPsetConshdlrTrans(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSTRANS((*constrans))) Definition: scip.c:5332 SCIP_RETCODE SCIPclearRealarray(SCIP *scip, SCIP_REALARRAY *realarray) Definition: scip.c:39383 SCIP_RETCODE SCIPgetVarSols(SCIP *scip, int nvars, SCIP_VAR **vars, SCIP_Real *vals) Definition: scip.c:15882 SCIP_RETCODE SCIPrecalcRowActivity(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25899 SCIP_RETCODE SCIPaddConflictRelaxedBd(SCIP *scip, SCIP_VAR *var, SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedbd) Definition: scip.c:22253 SCIP_CUTPOOL * SCIPgetDelayedGlobalCutpool(SCIP *scip) Definition: scip.c:28700 SCIP_RETCODE SCIPcreateNlRow(SCIP *scip, SCIP_NLROW **nlrow, const char *name, SCIP_Real constant, int nlinvars, SCIP_VAR **linvars, SCIP_Real *lincoefs, int nquadvars, SCIP_VAR **quadvars, int nquadelems, SCIP_QUADELEM *quadelems, SCIP_EXPRTREE *expression, SCIP_Real lhs, SCIP_Real rhs) Definition: scip.c:27037 SCIP_RETCODE SCIPaddCut(SCIP *scip, SCIP_SOL *sol, SCIP_ROW *cut, SCIP_Bool forcecut, SCIP_Bool *infeasible) Definition: scip.c:28256 SCIP_RETCODE SCIPfreeRealarray(SCIP *scip, SCIP_REALARRAY **realarray) Definition: scip.c:39347 SCIP_RETCODE SCIPcreateNLPSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur) Definition: scip.c:30926 void SCIPdialogMessage(SCIP *scip, FILE *file, const char *formatstr,...) Definition: scip.c:1222 SCIP_RETCODE SCIPsetSepaExit(SCIP *scip, SCIP_SEPA *sepa, SCIP_DECL_SEPAEXIT((*sepaexit))) Definition: scip.c:6472 SCIP_RETCODE SCIPsetPropPresol(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPPRESOL((*proppresol)), int presolpriority, int presolmaxrounds, SCIP_Bool presoldelay) Definition: scip.c:6795 SCIP_RETCODE SCIPchgNlRowQuadElement(SCIP *scip, SCIP_NLROW *nlrow, SCIP_QUADELEM quadelement) Definition: scip.c:27437 SCIP_RETCODE SCIPaddConflictBd(SCIP *scip, SCIP_VAR *var, SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX *bdchgidx) Definition: scip.c:22220 SCIP_RETCODE SCIPcopyProb(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, const char *name) Definition: scip.c:1579 SCIP_RETCODE SCIPupdateCutoffbound(SCIP *scip, SCIP_Real cutoffbound) Definition: scip.c:35253 SCIP_RETCODE SCIPchgVarBranchDirection(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR branchdirection) Definition: scip.c:20608 SCIP_Real SCIPgetVarAvgConflictlength(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21582 SCIP_Real SCIPgetVarAvgInferenceCutoffScore(SCIP *scip, SCIP_VAR *var, SCIP_Real cutoffweight) Definition: scip.c:21922 SCIP_RETCODE SCIPsetNodeselInit(SCIP *scip, SCIP_NODESEL *nodesel, SCIP_DECL_NODESELINIT((*nodeselinit))) Definition: scip.c:7491 SCIP_RETCODE SCIPchgVarLb(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:17929 int SCIPgetPtrarrayMaxIdx(SCIP *scip, SCIP_PTRARRAY *ptrarray) Definition: scip.c:39878 SCIP_RETCODE SCIPcreateUnknownSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur) Definition: scip.c:31040 SCIP_Longint SCIPgetNBarrierLPIterations(SCIP *scip) Definition: scip.c:34292 int SCIPgetRealarrayMaxIdx(SCIP *scip, SCIP_REALARRAY *realarray) Definition: scip.c:39466 SCIP_RETCODE SCIPtransformConss(SCIP *scip, int nconss, SCIP_CONS **conss, SCIP_CONS **transconss) Definition: scip.c:23100 SCIP_RETCODE SCIPaggregateVars(SCIP *scip, SCIP_VAR *varx, SCIP_VAR *vary, SCIP_Real scalarx, SCIP_Real scalary, SCIP_Real rhs, SCIP_Bool *infeasible, SCIP_Bool *redundant, SCIP_Bool *aggregated) Definition: scip.c:20892 SCIP_RETCODE SCIPsetParam(SCIP *scip, const char *name, void *value) Definition: scip.c:3734 SCIP_RETCODE SCIPsetConshdlrFree(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSFREE((*consfree))) Definition: scip.c:5103 SCIP_RETCODE SCIPchgChildPrio(SCIP *scip, SCIP_NODE *child, SCIP_Real priority) Definition: scip.c:11766 SCIP_RETCODE SCIPbranchVar(SCIP *scip, SCIP_VAR *var, SCIP_NODE **downchild, SCIP_NODE **eqchild, SCIP_NODE **upchild) Definition: scip.c:30598 SCIP_RETCODE SCIPgetLPColsData(SCIP *scip, SCIP_COL ***cols, int *ncols) Definition: scip.c:24369 SCIP_RETCODE SCIPprintLPSolutionQuality(SCIP *scip, FILE *file) Definition: scip.c:24951 SCIP_RETCODE SCIPwriteVarsList(SCIP *scip, FILE *file, SCIP_VAR **vars, int nvars, SCIP_Bool type, char delimiter) Definition: scip.c:14164 SCIP_Real SCIPgetRowSolFeasibility(SCIP *scip, SCIP_ROW *row, SCIP_SOL *sol) Definition: scip.c:25984 SCIP_RETCODE SCIPprintBestSol(SCIP *scip, FILE *file, SCIP_Bool printzeros) Definition: scip.c:32597 SCIP_Bool SCIPisSumGE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38593 SCIP_RETCODE SCIPevalExprtreeLocalBounds(SCIP *scip, SCIP_EXPRTREE *tree, SCIP_Real infinity, SCIP_INTERVAL *val) Definition: scip.c:28060 Definition: struct_var.h:196 SCIP_RETCODE SCIPgetBinvarRepresentatives(SCIP *scip, int nvars, SCIP_VAR **vars, SCIP_VAR **repvars, SCIP_Bool *negated) Definition: scip.c:15521 SCIP_RETCODE SCIPaddPricedVar(SCIP *scip, SCIP_VAR *var, SCIP_Real score) Definition: scip.c:9816 SCIP_RETCODE SCIPprintTransProblem(SCIP *scip, FILE *file, const char *extension, SCIP_Bool genericnames) Definition: scip.c:35973 SCIP_RETCODE SCIPconvertCutsToConss(SCIP *scip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, int *ncutsadded) Definition: scip.c:2666 SCIP_RETCODE SCIPgetLPBInvARow(SCIP *scip, int r, SCIP_Real *binvrow, SCIP_Real *coef) Definition: scip.c:24656 SCIP_RETCODE SCIPcatchEvent(SCIP *scip, SCIP_EVENTTYPE eventtype, SCIP_EVENTHDLR *eventhdlr, SCIP_EVENTDATA *eventdata, int *filterpos) Definition: scip.c:33310 SCIP_EVENTHDLR * SCIPfindEventhdlr(SCIP *scip, const char *name) Definition: scip.c:7339 interface methods for specific LP solvers SCIP_RETCODE SCIPensureBlockMemoryArray_call(SCIP *scip, void **arrayptr, size_t elemsize, int *arraysize, int minsize) Definition: scip.c:38017 SCIP_RETCODE SCIPbacktrackProbing(SCIP *scip, int probingdepth) Definition: scip.c:29573 SCIP_RETCODE SCIPchgVarLbDive(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:29063 SCIP_RETCODE SCIPgetVarClosestVlb(SCIP *scip, SCIP_VAR *var, SCIP_SOL *sol, SCIP_Real *closestvlb, int *closestvlbidx) Definition: scip.c:19495 SCIP_RETCODE SCIPaddRowCutpool(SCIP *scip, SCIP_CUTPOOL *cutpool, SCIP_ROW *row) Definition: scip.c:28504 SCIP_Real SCIPcomputeVarUbGlobal(SCIP *scip, SCIP_VAR *var) Definition: scip.c:19432 Definition: struct_dialog.h:35 SCIP_RETCODE SCIPcreateEmptyRowUnspec(SCIP *scip, SCIP_ROW **row, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable) Definition: scip.c:25334 SCIP_Bool SCIPisSumRelLT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39194 SCIP_RETCODE SCIPgetLPBInvRow(SCIP *scip, int r, SCIP_Real *coef) Definition: scip.c:24591 SCIP_RETCODE SCIPenableConsPropagation(SCIP *scip, SCIP_CONS *cons) Definition: scip.c:23425 SCIP_RETCODE SCIPchgLongintParam(SCIP *scip, SCIP_PARAM *param, SCIP_Longint value) Definition: scip.c:3843 SCIP_RETCODE SCIPsetConsLocal(SCIP *scip, SCIP_CONS *cons, SCIP_Bool local) Definition: scip.c:22874 SCIP_RETCODE SCIPsetSolVal(SCIP *scip, SCIP_SOL *sol, SCIP_VAR *var, SCIP_Real val) Definition: scip.c:31639 SCIP_RETCODE SCIPupdateLocalLowerbound(SCIP *scip, SCIP_Real newbound) Definition: scip.c:11674 SCIP_Longint SCIPgetNDualResolveLPIterations(SCIP *scip) Definition: scip.c:34406 SCIP_RETCODE SCIPsetPricerInitsol(SCIP *scip, SCIP_PRICER *pricer, SCIP_DECL_PRICERINITSOL((*pricerinitsol))) Definition: scip.c:4684 SCIP_RETCODE SCIPrespropCons(SCIP *scip, SCIP_CONS *cons, SCIP_VAR *infervar, int inferinfo, SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT *result) Definition: scip.c:23771 SCIP_RETCODE SCIPenableOrDisableStatisticTiming(SCIP *scip) Definition: scip.c:37447 SCIP_RETCODE SCIPsetRelaxPriority(SCIP *scip, SCIP_RELAX *relax, int priority) Definition: scip.c:6313 SCIP_RETCODE SCIPgetNlRowNLPFeasibility(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real *feasibility) Definition: scip.c:27585 SCIP_RETCODE SCIPchgIntParam(SCIP *scip, SCIP_PARAM *param, int value) Definition: scip.c:3798 SCIP_RETCODE SCIPaddExternBranchCand(SCIP *scip, SCIP_VAR *var, SCIP_Real score, SCIP_Real solval) Definition: scip.c:30273 SCIP_RETCODE SCIPsolveProbingLP(SCIP *scip, int itlim, SCIP_Bool *lperror, SCIP_Bool *cutoff) Definition: scip.c:29936 SCIP_RETCODE SCIPcomputeLPRelIntPoint(SCIP *scip, SCIP_Bool relaxrows, SCIP_Bool inclobjcutoff, SCIP_Real timelimit, int iterlimit, SCIP_SOL **point) Definition: scip.c:25024 SCIP_RETCODE SCIPsetPricerExit(SCIP *scip, SCIP_PRICER *pricer, SCIP_DECL_PRICEREXIT((*pricerexit))) Definition: scip.c:4660 SCIP_RETCODE SCIPrecalcNlRowActivity(SCIP *scip, SCIP_NLROW *nlrow) Definition: scip.c:27678 SCIP_RETCODE SCIPgetProbvarSum(SCIP *scip, SCIP_VAR **var, SCIP_Real *scalar, SCIP_Real *constant) Definition: scip.c:15670 SCIP_RETCODE SCIPpermuteProb(SCIP *scip, unsigned int randseed, SCIP_Bool permuteconss, SCIP_Bool permutebinvars, SCIP_Bool permuteintvars, SCIP_Bool permuteimplvars, SCIP_Bool permutecontvars) Definition: scip.c:9071 SCIP_RETCODE SCIPaddOrigObjoffset(SCIP *scip, SCIP_Real addval) Definition: scip.c:9435 SCIP_RETCODE SCIPchgVarsBoundsDiveNLP(SCIP *scip, int nvars, SCIP_VAR **vars, SCIP_Real *lbs, SCIP_Real *ubs) Definition: scip.c:26973 SCIP_Real SCIPgetVarConflictlengthScoreCurrentRun(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21553 SCIP_RETCODE SCIPincludeDisp(SCIP *scip, const char *name, const char *desc, const char *header, SCIP_DISPSTATUS dispstatus, SCIP_DECL_DISPCOPY((*dispcopy)), SCIP_DECL_DISPFREE((*dispfree)), SCIP_DECL_DISPINIT((*dispinit)), SCIP_DECL_DISPEXIT((*dispexit)), SCIP_DECL_DISPINITSOL((*dispinitsol)), SCIP_DECL_DISPEXITSOL((*dispexitsol)), SCIP_DECL_DISPOUTPUT((*dispoutput)), SCIP_DISPDATA *dispdata, int width, int priority, int position, SCIP_Bool stripline) Definition: scip.c:7949 SCIP_RETCODE SCIPchgVarUbDive(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:29095 SCIP_RETCODE SCIPupdateNodeLowerbound(SCIP *scip, SCIP_NODE *node, SCIP_Real newbound) Definition: scip.c:11735 int SCIPgetNConflictConssFoundNode(SCIP *scip) Definition: scip.c:34783 SCIP_RETCODE SCIPgetNLPNlRowsData(SCIP *scip, SCIP_NLROW ***nlrows, int *nnlrows) Definition: scip.c:26262 SCIP_RETCODE SCIPincludeRelax(SCIP *scip, const char *name, const char *desc, int priority, int freq, SCIP_DECL_RELAXCOPY((*relaxcopy)), SCIP_DECL_RELAXFREE((*relaxfree)), SCIP_DECL_RELAXINIT((*relaxinit)), SCIP_DECL_RELAXEXIT((*relaxexit)), SCIP_DECL_RELAXINITSOL((*relaxinitsol)), SCIP_DECL_RELAXEXITSOL((*relaxexitsol)), SCIP_DECL_RELAXEXEC((*relaxexec)), SCIP_RELAXDATA *relaxdata) Definition: scip.c:6102 SCIP_Longint SCIPgetNNodeInitLPIterations(SCIP *scip) Definition: scip.c:34478 SCIP_RETCODE SCIPsetConshdlrProp(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPROP((*consprop)), int propfreq, SCIP_Bool delayprop, SCIP_PROPTIMING timingmask) Definition: scip.c:5036 SCIP_RETCODE SCIPsetConshdlrPresol(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPRESOL((*conspresol)), int maxprerounds, SCIP_Bool delaypresol) Definition: scip.c:5271 Definition: struct_message.h:35 SCIP_RETCODE SCIPdelConsNode(SCIP *scip, SCIP_NODE *node, SCIP_CONS *cons) Definition: scip.c:11403 SCIP_RETCODE SCIPgetConsCopy(SCIP *sourcescip, SCIP *targetscip, SCIP_CONS *sourcecons, SCIP_CONS **targetcons, SCIP_CONSHDLR *sourceconshdlr, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *name, SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode, SCIP_Bool global, SCIP_Bool *success) Definition: scip.c:2212 SCIP_RETCODE SCIPaddVarBranchFactor(SCIP *scip, SCIP_VAR *var, SCIP_Real addfactor) Definition: scip.c:20478 SCIP_Real SCIPgetVarPseudocostVal(SCIP *scip, SCIP_VAR *var, SCIP_Real solvaldelta) Definition: scip.c:21194 SCIP_Real SCIPgetColFarkasCoef(SCIP *scip, SCIP_COL *col) Definition: scip.c:25103 SCIP_RETCODE SCIPincludeBranchruleBasic(SCIP *scip, SCIP_BRANCHRULE **branchruleptr, const char *name, const char *desc, int priority, int maxdepth, SCIP_Real maxbounddist, SCIP_BRANCHRULEDATA *branchruledata) Definition: scip.c:7684 SCIP_RETCODE SCIPaddBoolParam(SCIP *scip, const char *name, const char *desc, SCIP_Bool *valueptr, SCIP_Bool isadvanced, SCIP_Bool defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata) Definition: scip.c:3388 SCIP_RETCODE SCIPcreateIntarray(SCIP *scip, SCIP_INTARRAY **intarray) Definition: scip.c:39481 SCIP_Real SCIPgetVarConflictScoreCurrentRun(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21495 SCIP_RETCODE SCIPincIntarrayVal(SCIP *scip, SCIP_INTARRAY *intarray, int idx, int incval) Definition: scip.c:39585 SCIP_Bool SCIPisDualfeasPositive(SCIP *scip, SCIP_Real val) Definition: scip.c:38958 SCIP_RETCODE SCIPsetClockTime(SCIP *scip, SCIP_CLOCK *clck, SCIP_Real sec) Definition: scip.c:37552 Definition: struct_paramset.h:98 SCIP_RETCODE SCIPaddVarsToRow(SCIP *scip, SCIP_ROW *row, int nvars, SCIP_VAR **vars, SCIP_Real *vals) Definition: scip.c:25564 void SCIPwarningMessage(SCIP *scip, const char *formatstr,...) Definition: scip.c:1206 SCIP_RETCODE SCIPcreateCPUClock(SCIP *scip, SCIP_CLOCK **clck) Definition: scip.c:37322 SCIP_RETCODE SCIPsetRootDialog(SCIP *scip, SCIP_DIALOG *dialog) Definition: scip.c:8311 SCIP_RETCODE SCIPsetBranchruleExecLp(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXECLP((*branchexeclp))) Definition: scip.c:7819 SCIP_Real SCIPgetRowFeasibility(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25941 SCIP_RETCODE SCIPgetTransformedCons(SCIP *scip, SCIP_CONS *cons, SCIP_CONS **transcons) Definition: scip.c:23149 SCIP_RETCODE SCIPsetConshdlrSepa(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), int sepafreq, int sepapriority, SCIP_Bool delaysepa) Definition: scip.c:4990 SCIP_RETCODE SCIPsetSepaInitsol(SCIP *scip, SCIP_SEPA *sepa, SCIP_DECL_SEPAINITSOL((*sepainitsol))) Definition: scip.c:6488 public methods for displaying runtime statistics public methods for problem variables SCIP_RETCODE SCIPfreePtrarray(SCIP *scip, SCIP_PTRARRAY **ptrarray) Definition: scip.c:39781 SCIP_RETCODE SCIPsetConflicthdlrInitsol(SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTINITSOL((*conflictinitsol))) Definition: scip.c:5780 SCIP_RETCODE SCIPsetMessagehdlr(SCIP *scip, SCIP_MESSAGEHDLR *messagehdlr) Definition: scip.c:1139 SCIP_RETCODE SCIPsetPricerFree(SCIP *scip, SCIP_PRICER *pricer, SCIP_DECL_PRICERFREE((*pricerfree))) Definition: scip.c:4612 SCIP_RETCODE SCIPinferVarUbCons(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_CONS *infercons, int inferinfo, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:18686 SCIP_Real SCIPgetAvgCutoffScoreCurrentRun(SCIP *scip) Definition: scip.c:35846 SCIP_RETCODE SCIPsetPresolExitpre(SCIP *scip, SCIP_PRESOL *presol, SCIP_DECL_PRESOLEXITPRE((*presolexitpre))) Definition: scip.c:6028 SCIP_Real SCIPcomputeVarLbGlobal(SCIP *scip, SCIP_VAR *var) Definition: scip.c:19412 Definition: type_expr.h:97 type definitions for return codes for SCIP methods SCIP_RETCODE SCIPchgBoolParam(SCIP *scip, SCIP_PARAM *param, SCIP_Bool value) Definition: scip.c:3753 SCIP_RETCODE SCIPpropagateProbing(SCIP *scip, int maxproprounds, SCIP_Bool *cutoff, SCIP_Longint *ndomredsfound) Definition: scip.c:29766 public methods for branching rules SCIP_Real SCIPgetAvgPseudocostCurrentRun(SCIP *scip, SCIP_Real solvaldelta) Definition: scip.c:35495 SCIP_RETCODE SCIPsetBranchruleExecPs(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXECPS((*branchexecps))) Definition: scip.c:7851 SCIP_RETCODE SCIPincludeConshdlr(SCIP *scip, const char *name, const char *desc, int sepapriority, int enfopriority, int chckpriority, int sepafreq, int propfreq, int eagerfreq, int maxprerounds, SCIP_Bool delaysepa, SCIP_Bool delayprop, SCIP_Bool delaypresol, SCIP_Bool needscons, SCIP_PROPTIMING timingmask, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), SCIP_DECL_CONSFREE((*consfree)), SCIP_DECL_CONSINIT((*consinit)), SCIP_DECL_CONSEXIT((*consexit)), SCIP_DECL_CONSINITPRE((*consinitpre)), SCIP_DECL_CONSEXITPRE((*consexitpre)), SCIP_DECL_CONSINITSOL((*consinitsol)), SCIP_DECL_CONSEXITSOL((*consexitsol)), SCIP_DECL_CONSDELETE((*consdelete)), SCIP_DECL_CONSTRANS((*constrans)), SCIP_DECL_CONSINITLP((*consinitlp)), SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), SCIP_DECL_CONSENFOLP((*consenfolp)), SCIP_DECL_CONSENFOPS((*consenfops)), SCIP_DECL_CONSCHECK((*conscheck)), SCIP_DECL_CONSPROP((*consprop)), SCIP_DECL_CONSPRESOL((*conspresol)), SCIP_DECL_CONSRESPROP((*consresprop)), SCIP_DECL_CONSLOCK((*conslock)), SCIP_DECL_CONSACTIVE((*consactive)), SCIP_DECL_CONSDEACTIVE((*consdeactive)), SCIP_DECL_CONSENABLE((*consenable)), SCIP_DECL_CONSDISABLE((*consdisable)), SCIP_DECL_CONSDELVARS((*consdelvars)), SCIP_DECL_CONSPRINT((*consprint)), SCIP_DECL_CONSCOPY((*conscopy)), SCIP_DECL_CONSPARSE((*consparse)), SCIP_DECL_CONSGETVARS((*consgetvars)), SCIP_DECL_CONSGETNVARS((*consgetnvars)), SCIP_CONSHDLRDATA *conshdlrdata) Definition: scip.c:4844 SCIP_Bool SCIPisDualfeasGE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38927 SCIP_RETCODE SCIPfreeBoolarray(SCIP *scip, SCIP_BOOLARRAY **boolarray) Definition: scip.c:39649 SCIP_RETCODE SCIPincludeEventhdlr(SCIP *scip, const char *name, const char *desc, SCIP_DECL_EVENTCOPY((*eventcopy)), SCIP_DECL_EVENTFREE((*eventfree)), SCIP_DECL_EVENTINIT((*eventinit)), SCIP_DECL_EVENTEXIT((*eventexit)), SCIP_DECL_EVENTINITSOL((*eventinitsol)), SCIP_DECL_EVENTEXITSOL((*eventexitsol)), SCIP_DECL_EVENTDELETE((*eventdelete)), SCIP_DECL_EVENTEXEC((*eventexec)), SCIP_EVENTHDLRDATA *eventhdlrdata) Definition: scip.c:7167 SCIP_RETCODE SCIPseparateCutpool(SCIP *scip, SCIP_CUTPOOL *cutpool, SCIP_RESULT *result) Definition: scip.c:28570 SCIP_RETCODE SCIPprintBranchingStatistics(SCIP *scip, FILE *file) Definition: scip.c:37028 SCIP_RETCODE SCIPsetConsDynamic(SCIP *scip, SCIP_CONS *cons, SCIP_Bool dynamic) Definition: scip.c:22925 SCIP_RETCODE SCIPsetReaderFree(SCIP *scip, SCIP_READER *reader, SCIP_DECL_READERFREE((*readerfree))) Definition: scip.c:4367 SCIP_RETCODE SCIPsetConshdlrCopy(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), SCIP_DECL_CONSCOPY((*conscopy))) Definition: scip.c:5078 SCIP_RETCODE SCIPaddQuadElementToNlRow(SCIP *scip, SCIP_NLROW *nlrow, SCIP_QUADELEM quadelem) Definition: scip.c:27379 SCIP_Bool SCIPdoNotMultaggrVar(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21071 type definitions for presolvers SCIP_RETCODE SCIPsetRelaxCopy(SCIP *scip, SCIP_RELAX *relax, SCIP_DECL_RELAXCOPY((*relaxcopy))) Definition: scip.c:6179 SCIP_RETCODE SCIPcopy(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *suffix, SCIP_Bool global, SCIP_Bool enablepricing, SCIP_Bool passmessagehdlr, SCIP_Bool *valid) Definition: scip.c:3095 SCIP_Bool SCIPisCutEfficacious(SCIP *scip, SCIP_SOL *sol, SCIP_ROW *cut) Definition: scip.c:28148 SCIP_Real SCIPgetRowLPFeasibility(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25827 Definition: struct_sepa.h:36 SCIP_RETCODE SCIPaddClique(SCIP *scip, SCIP_VAR **vars, SCIP_Bool *values, int nvars, SCIP_Bool *infeasible, int *nbdchgs) Definition: scip.c:19756 SCIP_Bool SCIPisSumLE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38556 SCIP_RETCODE SCIPgetNegatedVars(SCIP *scip, int nvars, SCIP_VAR **vars, SCIP_VAR **negvars) Definition: scip.c:15438 SCIP_RETCODE SCIPgetNLPFracVars(SCIP *scip, SCIP_VAR ***fracvars, SCIP_Real **fracvarssol, SCIP_Real **fracvarsfrac, int *nfracvars, int *npriofracvars) Definition: scip.c:26586 SCIP_RETCODE SCIPsetBranchruleFree(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHFREE((*branchfree))) Definition: scip.c:7737 SCIP_Real SCIPgetAvgInferencesCurrentRun(SCIP *scip, SCIP_BRANCHDIR dir) Definition: scip.c:35719 SCIP_RETCODE SCIPsetEventhdlrInit(SCIP *scip, SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTINIT((*eventinit))) Definition: scip.c:7269 SCIP_RETCODE SCIPbranchExtern(SCIP *scip, SCIP_RESULT *result) Definition: scip.c:30796 SCIP_RETCODE SCIPsetProbDelorig(SCIP *scip, SCIP_DECL_PROBDELORIG((*probdelorig))) Definition: scip.c:8530 Definition: struct_pricer.h:36 SCIP_RETCODE SCIPwriteTransProblem(SCIP *scip, const char *filename, const char *extension, SCIP_Bool genericnames) Definition: scip.c:8973 SCIP_RETCODE SCIPtryCurrentSol(SCIP *scip, SCIP_HEUR *heur, SCIP_Bool printreason, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool *stored) Definition: scip.c:33138 SCIP_RETCODE SCIPupdateNodeDualbound(SCIP *scip, SCIP_NODE *node, SCIP_Real newbound) Definition: scip.c:11713 SCIP_RETCODE SCIPsetPresolPriority(SCIP *scip, SCIP_PRESOL *presol, int priority) Definition: scip.c:6081 SCIP_Bool SCIPisScalingIntegral(SCIP *scip, SCIP_Real val, SCIP_Real scalar) Definition: scip.c:38445 SCIP_RETCODE SCIPsetNodeselExit(SCIP *scip, SCIP_NODESEL *nodesel, SCIP_DECL_NODESELEXIT((*nodeselexit))) Definition: scip.c:7507 SCIP_RETCODE SCIPcalcMIR(SCIP *scip, SCIP_SOL *sol, SCIP_Real boundswitch, SCIP_Bool usevbds, SCIP_Bool allowlocal, SCIP_Bool fixintegralrhs, int *boundsfortrans, SCIP_BOUNDTYPE *boundtypesfortrans, int maxmksetcoefs, SCIP_Real maxweightrange, SCIP_Real minfrac, SCIP_Real maxfrac, SCIP_Real *weights, int *sidetypes, SCIP_Real scale, SCIP_Real *mksetcoefs, SCIP_Bool *mksetcoefsvalid, SCIP_Real *mircoef, SCIP_Real *mirrhs, SCIP_Real *cutactivity, SCIP_Bool *success, SCIP_Bool *cutislocal, int *cutrank) Definition: scip.c:24743 SCIP_RETCODE SCIPsetConshdlrEnable(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSENABLE((*consenable))) Definition: scip.c:5447 SCIP_RETCODE SCIPincludeRelaxBasic(SCIP *scip, SCIP_RELAX **relaxptr, const char *name, const char *desc, int priority, int freq, SCIP_DECL_RELAXEXEC((*relaxexec)), SCIP_RELAXDATA *relaxdata) Definition: scip.c:6145 SCIP_RETCODE SCIPaddDialogEntry(SCIP *scip, SCIP_DIALOG *dialog, SCIP_DIALOG *subdialog) Definition: scip.c:8341 type definitions for branching rules SCIP_RETCODE SCIPaddVarBranchPriority(SCIP *scip, SCIP_VAR *var, int addpriority) Definition: scip.c:20579 SCIP_RETCODE SCIPprintCons(SCIP *scip, SCIP_CONS *cons, FILE *file) Definition: scip.c:23934 Definition: struct_tree.h:119 SCIP_RETCODE SCIPsetSepaFree(SCIP *scip, SCIP_SEPA *sepa, SCIP_DECL_SEPAFREE((*sepafree))) Definition: scip.c:6440 SCIP_RETCODE SCIPsetBranchruleInitsol(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHINITSOL((*branchinitsol))) Definition: scip.c:7785 SCIP_RETCODE SCIPaddQuadElementsToNlRow(SCIP *scip, SCIP_NLROW *nlrow, int nquadelems, SCIP_QUADELEM *quadelems) Definition: scip.c:27403 SCIP_RETCODE SCIPparseVarsLinearsum(SCIP *scip, const char *str, SCIP_VAR **vars, SCIP_Real *vals, int *nvars, int varssize, int *requiredsize, char **endptr, SCIP_Bool *success) Definition: scip.c:14579 SCIP_RETCODE SCIPparseVarName(SCIP *scip, const char *str, SCIP_VAR **var, char **endptr) Definition: scip.c:14405 SCIP_RETCODE SCIPcreateBoolarray(SCIP *scip, SCIP_BOOLARRAY **boolarray) Definition: scip.c:39632 SCIP_RETCODE SCIPincludeHeur(SCIP *scip, const char *name, const char *desc, char dispchar, int priority, int freq, int freqofs, int maxdepth, unsigned int timingmask, SCIP_Bool usessubscip, SCIP_DECL_HEURCOPY((*heurcopy)), SCIP_DECL_HEURFREE((*heurfree)), SCIP_DECL_HEURINIT((*heurinit)), SCIP_DECL_HEUREXIT((*heurexit)), SCIP_DECL_HEURINITSOL((*heurinitsol)), SCIP_DECL_HEUREXITSOL((*heurexitsol)), SCIP_DECL_HEUREXEC((*heurexec)), SCIP_HEURDATA *heurdata) Definition: scip.c:6919 SCIP_RETCODE SCIPprintNodeRootPath(SCIP *scip, SCIP_NODE *node, FILE *file) Definition: scip.c:33927 SCIP_Real SCIPgetVectorEfficacyNorm(SCIP *scip, SCIP_Real *vals, int nvals) Definition: scip.c:28180 Definition: struct_conflict.h:39 SCIP_RETCODE SCIPcreateCutpool(SCIP *scip, SCIP_CUTPOOL **cutpool, int agelimit) Definition: scip.c:28452 SCIP_RETCODE SCIPsetConflicthdlrInit(SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTINIT((*conflictinit))) Definition: scip.c:5748 SCIP_Bool SCIPisUpdateUnreliable(SCIP *scip, SCIP_Real newvalue, SCIP_Real oldvalue) Definition: scip.c:39312 SCIP_RETCODE SCIPincludeEventhdlrBasic(SCIP *scip, SCIP_EVENTHDLR **eventhdlrptr, const char *name, const char *desc, SCIP_DECL_EVENTEXEC((*eventexec)), SCIP_EVENTHDLRDATA *eventhdlrdata) Definition: scip.c:7209 SCIP_RETCODE SCIPaddCurrentSol(SCIP *scip, SCIP_HEUR *heur, SCIP_Bool *stored) Definition: scip.c:32939 SCIP_RETCODE SCIPgetLPBInvCol(SCIP *scip, int c, SCIP_Real *coef) Definition: scip.c:24623 SCIP_Real SCIPgetSolVal(SCIP *scip, SCIP_SOL *sol, SCIP_VAR *var) Definition: scip.c:31775 public methods for expressions, expression trees, expression graphs, and related stuff ... SCIP_Bool SCIPisSumRelGT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39232 Definition: struct_lp.h:123 SCIP_RETCODE SCIPinferVarLbProp(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_PROP *inferprop, int inferinfo, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:18890 SCIP_RETCODE SCIPsetBoolarrayVal(SCIP *scip, SCIP_BOOLARRAY *boolarray, int idx, SCIP_Bool val) Definition: scip.c:39717 SCIP_RETCODE SCIPcopyConss(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, SCIP_Bool enablepricing, SCIP_Bool *valid) Definition: scip.c:2341 type definitions for LP management SCIP_RETCODE SCIPincludeHeurBasic(SCIP *scip, SCIP_HEUR **heur, const char *name, const char *desc, char dispchar, int priority, int freq, int freqofs, int maxdepth, unsigned int timingmask, SCIP_Bool usessubscip, SCIP_DECL_HEUREXEC((*heurexec)), SCIP_HEURDATA *heurdata) Definition: scip.c:6969 SCIP_Longint SCIPgetVarStrongbranchNode(SCIP *scip, SCIP_VAR *var) Definition: scip.c:17497 Definition: struct_sol.h:50 SCIP_RETCODE SCIPcatchVarEvent(SCIP *scip, SCIP_VAR *var, SCIP_EVENTTYPE eventtype, SCIP_EVENTHDLR *eventhdlr, SCIP_EVENTDATA *eventdata, int *filterpos) Definition: scip.c:33378 SCIP_RETCODE SCIPincludeConshdlrBasic(SCIP *scip, SCIP_CONSHDLR **conshdlrptr, const char *name, const char *desc, int enfopriority, int chckpriority, int eagerfreq, SCIP_Bool needscons, SCIP_DECL_CONSENFOLP((*consenfolp)), SCIP_DECL_CONSENFOPS((*consenfops)), SCIP_DECL_CONSCHECK((*conscheck)), SCIP_DECL_CONSLOCK((*conslock)), SCIP_CONSHDLRDATA *conshdlrdata) Definition: scip.c:4936 SCIP_Bool SCIPisLbBetter(SCIP *scip, SCIP_Real newlb, SCIP_Real oldlb, SCIP_Real oldub) Definition: scip.c:39054 SCIP_RETCODE SCIPsetRelaxInit(SCIP *scip, SCIP_RELAX *relax, SCIP_DECL_RELAXINIT((*relaxinit))) Definition: scip.c:6211 SCIP_RETCODE SCIPenableConsSeparation(SCIP *scip, SCIP_CONS *cons) Definition: scip.c:23370 SCIP_Real SCIPgetAvgPseudocostScoreCurrentRun(SCIP *scip) Definition: scip.c:35578 SCIP_RETCODE SCIPgetVarStrongbranchWithPropagation(SCIP *scip, SCIP_VAR *var, SCIP_Real solval, SCIP_Real lpobjval, int itlim, int maxproprounds, SCIP_Real *down, SCIP_Real *up, SCIP_Bool *downvalid, SCIP_Bool *upvalid, SCIP_Bool *downinf, SCIP_Bool *upinf, SCIP_Bool *downconflict, SCIP_Bool *upconflict, SCIP_Bool *lperror, SCIP_Real *newlbs, SCIP_Real *newubs) Definition: scip.c:16847 SCIP_RETCODE SCIPprintVar(SCIP *scip, SCIP_VAR *var, FILE *file) Definition: scip.c:22013 SCIP_RETCODE SCIPupdateLocalDualbound(SCIP *scip, SCIP_Real newbound) Definition: scip.c:11624 SCIP_RETCODE SCIPsetPropPresolPriority(SCIP *scip, SCIP_PROP *prop, int presolpriority) Definition: scip.c:6899 SCIP_RETCODE SCIPsetPresolInit(SCIP *scip, SCIP_PRESOL *presol, SCIP_DECL_PRESOLINIT((*presolinit))) Definition: scip.c:5980 SCIP_RETCODE SCIPcreatePseudoSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur) Definition: scip.c:30988 SCIP_RETCODE SCIPcreateEmptyNlRow(SCIP *scip, SCIP_NLROW **nlrow, const char *name, SCIP_Real lhs, SCIP_Real rhs) Definition: scip.c:27072 SCIP_RETCODE SCIPcheckSolOrig(SCIP *scip, SCIP_SOL *sol, SCIP_Bool *feasible, SCIP_Bool printreason, SCIP_Bool completely) Definition: scip.c:33227 SCIP_RETCODE SCIPdelDelayedPoolCut(SCIP *scip, SCIP_ROW *row) Definition: scip.c:28649 SCIP_RETCODE SCIPpropCons(SCIP *scip, SCIP_CONS *cons, SCIP_PROPTIMING proptiming, SCIP_RESULT *result) Definition: scip.c:23740 SCIP_RETCODE SCIPanalyzeConflictCons(SCIP *scip, SCIP_CONS *cons, SCIP_Bool *success) Definition: scip.c:22424 SCIP_Longint SCIPgetNStrongbranchLPIterations(SCIP *scip) Definition: scip.c:34550 SCIP_RETCODE SCIPgetSolVarsData(SCIP *scip, SCIP_SOL *sol, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars) Definition: scip.c:10700 void SCIPmarkColNotRemovableLocal(SCIP *scip, SCIP_COL *col) Definition: scip.c:25125 SCIP_RETCODE SCIPcreateVarBasic(SCIP *scip, SCIP_VAR **var, const char *name, SCIP_Real lb, SCIP_Real ub, SCIP_Real obj, SCIP_VARTYPE vartype) Definition: scip.c:14066 SCIP_RETCODE SCIPwriteMIP(SCIP *scip, const char *filename, SCIP_Bool genericnames, SCIP_Bool origobj, SCIP_Bool lazyconss) Definition: scip.c:24865 SCIP_Real SCIPgetVarVSIDSCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21442 SCIP_RETCODE SCIPsetPtrarrayVal(SCIP *scip, SCIP_PTRARRAY *ptrarray, int idx, void *val) Definition: scip.c:39846 SCIP_RETCODE SCIPgetLeaves(SCIP *scip, SCIP_NODE ***leaves, int *nleaves) Definition: scip.c:33670 SCIP_RETCODE SCIPincludeNodeselBasic(SCIP *scip, SCIP_NODESEL **nodesel, const char *name, const char *desc, int stdpriority, int memsavepriority, SCIP_DECL_NODESELSELECT((*nodeselselect)), SCIP_DECL_NODESELCOMP((*nodeselcomp)), SCIP_NODESELDATA *nodeseldata) Definition: scip.c:7423 SCIP_RETCODE SCIPremoveInefficaciousCuts(SCIP *scip) Definition: scip.c:28810 void SCIPfreeBufferSize(SCIP *scip, void **ptr, int dummysize) Definition: scip.c:38101 SCIP_RETCODE SCIPaddConsNode(SCIP *scip, SCIP_NODE *node, SCIP_CONS *cons, SCIP_NODE *validnode) Definition: scip.c:11302 SCIP_RETCODE SCIPchgDualfeastol(SCIP *scip, SCIP_Real dualfeastol) Definition: scip.c:37848 SCIP_RETCODE SCIPcreateProbBasic(SCIP *scip, const char *name) Definition: scip.c:8510 SCIP_RETCODE SCIPextendIntarray(SCIP *scip, SCIP_INTARRAY *intarray, int minidx, int maxidx) Definition: scip.c:39515 Definition: struct_misc.h:101 SCIP_RETCODE SCIPgetLPRowsData(SCIP *scip, SCIP_ROW ***rows, int *nrows) Definition: scip.c:24447 SCIP_RETCODE SCIPsepalpCons(SCIP *scip, SCIP_CONS *cons, SCIP_RESULT *result) Definition: scip.c:23683 public methods for handling parameter settings SCIP_RETCODE SCIPgetSolVals(SCIP *scip, SCIP_SOL *sol, int nvars, SCIP_VAR **vars, SCIP_Real *vals) Definition: scip.c:31809 public methods for managing constraints SCIP_Bool SCIPisDualfeasLT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38870 SCIP_Real SCIPadjustedVarUb(SCIP *scip, SCIP_VAR *var, SCIP_Real ub) Definition: scip.c:17898 SCIP_RETCODE SCIPaddDialogHistoryLine(SCIP *scip, const char *inputline) Definition: scip.c:8379 SCIP_Real SCIPgetAvgPseudocostCountCurrentRun(SCIP *scip, SCIP_BRANCHDIR dir) Definition: scip.c:35534 SCIP_RETCODE SCIPanalyzeConflict(SCIP *scip, int validdepth, SCIP_Bool *success) Definition: scip.c:22393 SCIP_RETCODE SCIPsetPricerInit(SCIP *scip, SCIP_PRICER *pricer, SCIP_DECL_PRICERINIT((*pricerinit))) Definition: scip.c:4636 SCIP_RETCODE SCIPgetVarStrongbranchFrac(SCIP *scip, SCIP_VAR *var, int itlim, SCIP_Real *down, SCIP_Real *up, SCIP_Bool *downvalid, SCIP_Bool *upvalid, SCIP_Bool *downinf, SCIP_Bool *upinf, SCIP_Bool *downconflict, SCIP_Bool *upconflict, SCIP_Bool *lperror) Definition: scip.c:16424 SCIP_RETCODE SCIPparseVar(SCIP *scip, SCIP_VAR **var, const char *str, SCIP_Bool initial, SCIP_Bool removable, SCIP_DECL_VARCOPY((*varcopy)), SCIP_DECL_VARDELORIG((*vardelorig)), SCIP_DECL_VARTRANS((*vartrans)), SCIP_DECL_VARDELTRANS((*vardeltrans)), SCIP_VARDATA *vardata, char **endptr, SCIP_Bool *success) Definition: scip.c:14346 int SCIPgetIntarrayVal(SCIP *scip, SCIP_INTARRAY *intarray, int idx) Definition: scip.c:39550 SCIP_RETCODE SCIPsetConsStickingAtNode(SCIP *scip, SCIP_CONS *cons, SCIP_Bool stickingatnode) Definition: scip.c:22975 SCIP_RETCODE SCIPsetRealarrayVal(SCIP *scip, SCIP_REALARRAY *realarray, int idx, SCIP_Real val) Definition: scip.c:39415 SCIP_Real SCIPgetVarConflictlengthScore(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21524 Definition: struct_misc.h:109 SCIP_RETCODE SCIPsetEventhdlrExit(SCIP *scip, SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTEXIT((*eventexit))) Definition: scip.c:7283 SCIP_Real SCIPgetAvgConflictlengthScore(SCIP *scip) Definition: scip.c:35651 SCIP_RETCODE SCIPsetPricerExitsol(SCIP *scip, SCIP_PRICER *pricer, SCIP_DECL_PRICEREXITSOL((*pricerexitsol))) Definition: scip.c:4708 SCIP_RETCODE SCIPmakeRowIntegral(SCIP *scip, SCIP_ROW *row, SCIP_Real mindelta, SCIP_Real maxdelta, SCIP_Longint maxdnom, SCIP_Real maxscale, SCIP_Bool usecontvars, SCIP_Bool *success) Definition: scip.c:25679 SCIP_Bool SCIPisDualfeasIntegral(SCIP *scip, SCIP_Real val) Definition: scip.c:38982 SCIP_RETCODE SCIPsetConshdlrExitpre(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSEXITPRE((*consexitpre))) Definition: scip.c:5247 SCIP_RETCODE SCIPchgVarUb(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:18008 SCIP_RETCODE SCIPinferVarUbProp(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_PROP *inferprop, int inferinfo, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:18993 SCIP_RETCODE SCIPsetConsEnforced(SCIP *scip, SCIP_CONS *cons, SCIP_Bool enforce) Definition: scip.c:22797 SCIP_RETCODE SCIPcopyCuts(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, int *ncutsadded) Definition: scip.c:2726 SCIP_RETCODE SCIPsetRealParam(SCIP *scip, const char *name, SCIP_Real value) Definition: scip.c:3914 type definitions for variable pricers SCIP_RETCODE SCIPsetConsPropagated(SCIP *scip, SCIP_CONS *cons, SCIP_Bool propagate) Definition: scip.c:22847 SCIP_RETCODE SCIPdeactivatePricer(SCIP *scip, SCIP_PRICER *pricer) Definition: scip.c:4818 SCIP_RETCODE SCIPsetConflicthdlrPriority(SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, int priority) Definition: scip.c:5849 SCIP_RETCODE SCIPsetConsRemovable(SCIP *scip, SCIP_CONS *cons, SCIP_Bool removable) Definition: scip.c:22950 Definition: struct_cons.h:36 SCIP_RETCODE SCIPsetReaderRead(SCIP *scip, SCIP_READER *reader, SCIP_DECL_READERREAD((*readerread))) Definition: scip.c:4391 Definition: struct_nlpi.h:78 SCIP_Real SCIPgetRowMaxActivity(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25773 SCIP_RETCODE SCIPsetIntParam(SCIP *scip, const char *name, int value) Definition: scip.c:3824 SCIP_Bool SCIPisRelLT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39099 SCIP_RETCODE SCIPaddIntParam(SCIP *scip, 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: scip.c:3414 SCIP_RETCODE SCIPcreateFiniteSolCopy(SCIP *scip, SCIP_SOL **sol, SCIP_SOL *sourcesol, SCIP_Bool *success) Definition: scip.c:31165 SCIP_RETCODE SCIPincludePropBasic(SCIP *scip, SCIP_PROP **propptr, const char *name, const char *desc, int priority, int freq, SCIP_Bool delay, SCIP_PROPTIMING timingmask, SCIP_DECL_PROPEXEC((*propexec)), SCIP_PROPDATA *propdata) Definition: scip.c:6630 SCIP_RETCODE SCIPsetHeurPriority(SCIP *scip, SCIP_HEUR *heur, int priority) Definition: scip.c:7147 SCIP_RETCODE SCIPmarkConsPropagate(SCIP *scip, SCIP_CONS *cons) Definition: scip.c:23484 type definitions for primal heuristics Definition: struct_cons.h:116 SCIP_RETCODE SCIPcreateRowSepa(SCIP *scip, SCIP_ROW **row, SCIP_SEPA *sepa, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable) Definition: scip.c:25180 SCIP_RETCODE SCIPrecalcRowPseudoActivity(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25845 SCIP_RETCODE SCIPsetBranchruleCopy(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHCOPY((*branchcopy))) Definition: scip.c:7721 SCIP_RETCODE SCIPwriteImplicationConflictGraph(SCIP *scip, const char *filename) Definition: scip.c:37194 SCIP_Bool SCIPcontainsExternBranchCand(SCIP *scip, SCIP_VAR *var) Definition: scip.c:30316 SCIP_RETCODE SCIPaddDialogInputLine(SCIP *scip, const char *inputline) Definition: scip.c:8362 SCIP_RETCODE SCIPsetSepaCopy(SCIP *scip, SCIP_SEPA *sepa, SCIP_DECL_SEPACOPY((*sepacopy))) Definition: scip.c:6424 SCIP_RETCODE SCIPsetNLPInitialGuess(SCIP *scip, SCIP_Real *initialguess) Definition: scip.c:26384 SCIP_Real SCIPgetVarAvgInferenceScoreCurrentRun(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21711 SCIP_RETCODE SCIPchgVarObjDive(SCIP *scip, SCIP_VAR *var, SCIP_Real newobj) Definition: scip.c:29022 SCIP_RETCODE SCIPgetExprtreeTransformedVars(SCIP *scip, SCIP_EXPRTREE *tree) Definition: scip.c:27901 SCIP_RETCODE SCIPchgVarType(SCIP *scip, SCIP_VAR *var, SCIP_VARTYPE vartype, SCIP_Bool *infeasible) Definition: scip.c:20694 type definitions for SCIP's main datastructure SCIP_RETCODE SCIPgetNLPStatistics(SCIP *scip, SCIP_NLPSTATISTICS *statistics) Definition: scip.c:26513 SCIP_Real SCIPgetNodeLowerbound(SCIP *scip, SCIP_NODE *node) Definition: scip.c:11600 SCIP_Real SCIPgetVarAvgConflictlengthCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21606 SCIP_RETCODE SCIPsetProbDeltrans(SCIP *scip, SCIP_DECL_PROBDELTRANS((*probdeltrans))) Definition: scip.c:8572 SCIP_Real SCIPcalcNodeselPriority(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR branchdir, SCIP_Real targetvalue) Definition: scip.c:30519 SCIP_RETCODE SCIPsetNlRowExprtree(SCIP *scip, SCIP_NLROW *nlrow, SCIP_EXPRTREE *exprtree) Definition: scip.c:27460 SCIP_RETCODE SCIPgetBinvarRepresentative(SCIP *scip, SCIP_VAR *var, SCIP_VAR **repvar, SCIP_Bool *negated) Definition: scip.c:15475 SCIP_RETCODE SCIPsetNlRowExprtreeParams(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real *paramvals) Definition: scip.c:27507 SCIP_RETCODE SCIPincludeBranchrule(SCIP *scip, const char *name, const char *desc, int priority, int maxdepth, SCIP_Real maxbounddist, SCIP_DECL_BRANCHCOPY((*branchcopy)), SCIP_DECL_BRANCHFREE((*branchfree)), SCIP_DECL_BRANCHINIT((*branchinit)), SCIP_DECL_BRANCHEXIT((*branchexit)), SCIP_DECL_BRANCHINITSOL((*branchinitsol)), SCIP_DECL_BRANCHEXITSOL((*branchexitsol)), SCIP_DECL_BRANCHEXECLP((*branchexeclp)), SCIP_DECL_BRANCHEXECEXT((*branchexecext)), SCIP_DECL_BRANCHEXECPS((*branchexecps)), SCIP_BRANCHRULEDATA *branchruledata) Definition: scip.c:7636 SCIP_RETCODE SCIPgetNlRowActivity(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real *activity) Definition: scip.c:27706 SCIP_RETCODE SCIPsetPropInitpre(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPINITPRE((*propinitpre))) Definition: scip.c:6763 SCIP_RETCODE SCIPchgNlRowRhs(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real rhs) Definition: scip.c:27189 SCIP_RETCODE SCIPcopyParamSettings(SCIP *sourcescip, SCIP *targetscip) Definition: scip.c:3005 SCIP_RETCODE SCIPadjustImplicitSolVals(SCIP *scip, SCIP_SOL *sol, SCIP_Bool uselprows) Definition: scip.c:32118 SCIP_RETCODE SCIPsetConflicthdlrExit(SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTEXIT((*conflictexit))) Definition: scip.c:5764 SCIP_RETCODE SCIPchgRowRhs(SCIP *scip, SCIP_ROW *row, SCIP_Real rhs) Definition: scip.c:25459 SCIP_RETCODE SCIPrecalcNlRowNLPActivity(SCIP *scip, SCIP_NLROW *nlrow) Definition: scip.c:27530 SCIP_RETCODE SCIPsolveProbingLPWithPricing(SCIP *scip, SCIP_Bool pretendroot, SCIP_Bool displayinfo, int maxpricerounds, SCIP_Bool *lperror, SCIP_Bool *cutoff) Definition: scip.c:29960 SCIP_RETCODE SCIPchgNlRowConstant(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real constant) Definition: scip.c:27212 SCIP_RETCODE SCIPmultiaggregateVar(SCIP *scip, SCIP_VAR *var, int naggvars, SCIP_VAR **aggvars, SCIP_Real *scalars, SCIP_Real constant, SCIP_Bool *infeasible, SCIP_Bool *aggregated) Definition: scip.c:21023 SCIP_RETCODE SCIPchgVarBranchFactor(SCIP *scip, SCIP_VAR *var, SCIP_Real branchfactor) Definition: scip.c:20422 SCIP_Real SCIPgetVarAvgCutoffScoreCurrentRun(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21892 Definition: struct_misc.h:120 SCIP_RETCODE SCIPaddVarVlb(SCIP *scip, SCIP_VAR *var, SCIP_VAR *vlbvar, SCIP_Real vlbcoef, SCIP_Real vlbconstant, SCIP_Bool *infeasible, int *nbdchgs) Definition: scip.c:19547 SCIP_RETCODE SCIPsetReaderCopy(SCIP *scip, SCIP_READER *reader, SCIP_DECL_READERCOPY((*readercopy))) Definition: scip.c:4343 SCIP_RETCODE SCIPsetBranchruleMaxdepth(SCIP *scip, SCIP_BRANCHRULE *branchrule, int maxdepth) Definition: scip.c:7919 SCIP_RETCODE SCIPchgCutoffboundDive(SCIP *scip, SCIP_Real newcutoffbound) Definition: scip.c:28992 SCIP_RETCODE SCIPgetTransformedVar(SCIP *scip, SCIP_VAR *var, SCIP_VAR **transvar) Definition: scip.c:15319 internal miscellaneous methods SCIP_RETCODE SCIPsetConshdlrDeactive(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSDEACTIVE((*consdeactive))) Definition: scip.c:5424 SCIP_RETCODE SCIPcalcRowIntegralScalar(SCIP *scip, SCIP_ROW *row, SCIP_Real mindelta, SCIP_Real maxdelta, SCIP_Longint maxdnom, SCIP_Real maxscale, SCIP_Bool usecontvars, SCIP_Real *intscalar, SCIP_Bool *success) Definition: scip.c:25650 SCIP_Real SCIPgetVarPseudocostCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21271 SCIP_RETCODE SCIPincludePricer(SCIP *scip, const char *name, const char *desc, int priority, SCIP_Bool delay, SCIP_DECL_PRICERCOPY((*pricercopy)), SCIP_DECL_PRICERFREE((*pricerfree)), SCIP_DECL_PRICERINIT((*pricerinit)), SCIP_DECL_PRICEREXIT((*pricerexit)), SCIP_DECL_PRICERINITSOL((*pricerinitsol)), SCIP_DECL_PRICEREXITSOL((*pricerexitsol)), SCIP_DECL_PRICERREDCOST((*pricerredcost)), SCIP_DECL_PRICERFARKAS((*pricerfarkas)), SCIP_PRICERDATA *pricerdata) Definition: scip.c:4480 SCIP_Bool SCIPisDualfeasFracIntegral(SCIP *scip, SCIP_Real val) Definition: scip.c:38994 SCIP_RETCODE SCIPtightenVarLb(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:18371 SCIP_RETCODE SCIPgetNlRowSolFeasibility(SCIP *scip, SCIP_NLROW *nlrow, SCIP_SOL *sol, SCIP_Real *feasibility) Definition: scip.c:27798 SCIP_RETCODE SCIPclearBoolarray(SCIP *scip, SCIP_BOOLARRAY *boolarray) Definition: scip.c:39685 SCIP_RETCODE SCIPunlockVarCons(SCIP *scip, SCIP_VAR *var, SCIP_CONS *cons, SCIP_Bool lockdown, SCIP_Bool lockup) Definition: scip.c:17713 SCIP_RETCODE SCIPcopyVars(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global) Definition: scip.c:2087 SCIP_RETCODE SCIPgetNLPVarsData(SCIP *scip, SCIP_VAR ***vars, int *nvars) Definition: scip.c:26120 SCIP_RETCODE SCIPsetProbInitsol(SCIP *scip, SCIP_DECL_PROBINITSOL((*probinitsol))) Definition: scip.c:8593 SCIP_RETCODE SCIPenfolpCons(SCIP *scip, SCIP_CONS *cons, SCIP_Bool solinfeasible, SCIP_RESULT *result) Definition: scip.c:23627 SCIP_RETCODE SCIPgetStringParam(SCIP *scip, const char *name, char **value) Definition: scip.c:3676 SCIP_RETCODE SCIPincludePricerBasic(SCIP *scip, SCIP_PRICER **pricerptr, const char *name, const char *desc, int priority, SCIP_Bool delay, SCIP_DECL_PRICERREDCOST((*pricerredcost)), SCIP_DECL_PRICERFARKAS((*pricerfarkas)), SCIP_PRICERDATA *pricerdata) Definition: scip.c:4539 SCIP_RETCODE SCIPcatchRowEvent(SCIP *scip, SCIP_ROW *row, SCIP_EVENTTYPE eventtype, SCIP_EVENTHDLR *eventhdlr, SCIP_EVENTDATA *eventdata, int *filterpos) Definition: scip.c:33464 SCIP_RETCODE SCIPprintBestTransSol(SCIP *scip, FILE *file, SCIP_Bool printzeros) Definition: scip.c:32637 SCIP_RETCODE SCIPsetPropResprop(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPRESPROP((*propresprop))) Definition: scip.c:6830 public methods for primal CIP solutions SCIP_RETCODE SCIPgetPseudoBranchCands(SCIP *scip, SCIP_VAR ***pseudocands, int *npseudocands, int *npriopseudocands) Definition: scip.c:30339 SCIP_RETCODE SCIPcopyOrigVars(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap) Definition: scip.c:2141 SCIP_Bool SCIPisSumLT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38537 SCIP_RETCODE SCIPchgRowRhsDive(SCIP *scip, SCIP_ROW *row, SCIP_Real newrhs) Definition: scip.c:29199 SCIP_RETCODE SCIPcreateEmptyRowSepa(SCIP *scip, SCIP_ROW **row, SCIP_SEPA *sepa, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable) Definition: scip.c:25305 struct SCIP_ConflicthdlrData SCIP_CONFLICTHDLRDATA Definition: type_conflict.h:40 internal methods for global SCIP settings SCIP_Bool SCIPisRelGT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39137 SCIP_RETCODE SCIPaddConsLocks(SCIP *scip, SCIP_CONS *cons, int nlockspos, int nlocksneg) Definition: scip.c:23538 SCIP_RETCODE SCIPpropagateProbingImplications(SCIP *scip, SCIP_Bool *cutoff) Definition: scip.c:29808 SCIP_RETCODE SCIPcheckCons(SCIP *scip, SCIP_CONS *cons, SCIP_SOL *sol, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool printreason, SCIP_RESULT *result) Definition: scip.c:23568 SCIP main data structure. SCIP_RETCODE SCIPprintTransSol(SCIP *scip, SCIP_SOL *sol, FILE *file, SCIP_Bool printzeros) Definition: scip.c:32222 SCIP_RETCODE SCIPparseVarsList(SCIP *scip, const char *str, SCIP_VAR **vars, int *nvars, int varssize, int *requiredsize, char **endptr, char delimiter, SCIP_Bool *success) Definition: scip.c:14482 SCIP_RETCODE SCIPsetRelaxFree(SCIP *scip, SCIP_RELAX *relax, SCIP_DECL_RELAXFREE((*relaxfree))) Definition: scip.c:6195 SCIP_RETCODE SCIPsetConshdlrInit(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSINIT((*consinit))) Definition: scip.c:5127 SCIP_RETCODE SCIPsetBranchrulePriority(SCIP *scip, SCIP_BRANCHRULE *branchrule, int priority) Definition: scip.c:7904 SCIP_Real SCIPgetVarPseudocostCountCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21323 type definitions for problem variables SCIP_RETCODE SCIPcheckSol(SCIP *scip, SCIP_SOL *sol, SCIP_Bool printreason, SCIP_Bool checkbounds, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool *feasible) Definition: scip.c:33181 SCIP_Real SCIPgetVarAvgInferences(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21632 SCIP_RETCODE SCIPaddNewRowCutpool(SCIP *scip, SCIP_CUTPOOL *cutpool, SCIP_ROW *row) Definition: scip.c:28526 SCIP_RETCODE SCIPincludeConflicthdlr(SCIP *scip, const char *name, const char *desc, int priority, SCIP_DECL_CONFLICTCOPY((*conflictcopy)), SCIP_DECL_CONFLICTFREE((*conflictfree)), SCIP_DECL_CONFLICTINIT((*conflictinit)), SCIP_DECL_CONFLICTEXIT((*conflictexit)), SCIP_DECL_CONFLICTINITSOL((*conflictinitsol)), SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol)), SCIP_DECL_CONFLICTEXEC((*conflictexec)), SCIP_CONFLICTHDLRDATA *conflicthdlrdata) Definition: scip.c:5641 SCIP_RETCODE SCIPgetNegatedVar(SCIP *scip, SCIP_VAR *var, SCIP_VAR **negvar) Definition: scip.c:15406 SCIP_Bool SCIPgetBoolarrayVal(SCIP *scip, SCIP_BOOLARRAY *boolarray, int idx) Definition: scip.c:39701 SCIP_RETCODE SCIPsetProbCopy(SCIP *scip, SCIP_DECL_PROBCOPY((*probcopy))) Definition: scip.c:8636 SCIP_RETCODE SCIPsetConshdlrDisable(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSDISABLE((*consdisable))) Definition: scip.c:5470 type definitions for relaxators SCIP_Longint SCIPgetVarStrongbranchLPAge(SCIP *scip, SCIP_VAR *var) Definition: scip.c:17529 SCIP_Real SCIPgetAvgConflictlengthScoreCurrentRun(SCIP *scip) Definition: scip.c:35676 SCIP_RETCODE SCIPgetActiveVars(SCIP *scip, SCIP_VAR **vars, int *nvars, int varssize, int *requiredsize) Definition: scip.c:15706 SCIP_RETCODE SCIPtightenVarLbGlobal(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:19198 SCIP_Real SCIPgetRowPseudoFeasibility(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25881 SCIP_RETCODE SCIPwriteParams(SCIP *scip, const char *filename, SCIP_Bool comments, SCIP_Bool onlychanged) Definition: scip.c:4041 void SCIPmarkRowNotRemovableLocal(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25703 SCIP_RETCODE SCIPchgVarUbGlobal(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:18227 Definition: struct_heur.h:36 type definitions for conflict analysis SCIP_RETCODE SCIPchgNlRowLinearCoef(SCIP *scip, SCIP_NLROW *nlrow, SCIP_VAR *var, SCIP_Real coef) Definition: scip.c:27295 Definition: struct_branch.h:68 SCIP_Bool SCIPisRelGE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39156 SCIP_RETCODE SCIPgetOrigVarsData(SCIP *scip, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars) Definition: scip.c:10436 SCIP_RETCODE SCIPcopyOrig(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *suffix, SCIP_Bool enablepricing, SCIP_Bool passmessagehdlr, SCIP_Bool *valid) Definition: scip.c:3260 SCIP_RETCODE SCIPaddLinearCoefsToNlRow(SCIP *scip, SCIP_NLROW *nlrow, int nvars, SCIP_VAR **vars, SCIP_Real *vals) Definition: scip.c:27259 type definitions for managing events SCIP_Bool SCIPisDualfeasEQ(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38851 Definition: struct_prop.h:36 SCIP_RETCODE SCIPsetHeuristics(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet) Definition: scip.c:4147 SCIP_RETCODE SCIPsetConshdlrInitpre(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSINITPRE((*consinitpre))) Definition: scip.c:5223 SCIP_RETCODE SCIPprintDualSol(SCIP *scip, FILE *file, SCIP_Bool printzeros) Definition: scip.c:32322 SCIP_RETCODE SCIPextendPtrarray(SCIP *scip, SCIP_PTRARRAY *ptrarray, int minidx, int maxidx) Definition: scip.c:39798 public methods for NLP management public methods for node selectors wrapper functions to map file i/o to standard or zlib file i/o internal methods for presolving SCIP_Bool SCIPisFeasGT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38705 SCIP_RETCODE SCIPreadProb(SCIP *scip, const char *filename, const char *extension) Definition: scip.c:8669 SCIP_RETCODE SCIPincludeConflicthdlrBasic(SCIP *scip, SCIP_CONFLICTHDLR **conflicthdlrptr, const char *name, const char *desc, int priority, SCIP_DECL_CONFLICTEXEC((*conflictexec)), SCIP_CONFLICTHDLRDATA *conflicthdlrdata) Definition: scip.c:5684 SCIP_RETCODE SCIPgetVarCopy(SCIP *sourcescip, SCIP *targetscip, SCIP_VAR *sourcevar, SCIP_VAR **targetvar, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, SCIP_Bool *success) Definition: scip.c:1690 SCIP_RETCODE SCIPgetNlRowActivityBounds(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real *minactivity, SCIP_Real *maxactivity) Definition: scip.c:27833 SCIP_RETCODE SCIPsetPropFree(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPFREE((*propfree))) Definition: scip.c:6683 internal methods for problem variables SCIP_RETCODE SCIPsetRelaxSolVals(SCIP *scip, int nvars, SCIP_VAR **vars, SCIP_Real *vals) Definition: scip.c:15991 SCIP_RETCODE SCIPbranchVarHole(SCIP *scip, SCIP_VAR *var, SCIP_Real left, SCIP_Real right, SCIP_NODE **downchild, SCIP_NODE **upchild) Definition: scip.c:30637 SCIP_Real SCIPgetVarAvgCutoffs(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21813 public data structures and miscellaneous methods SCIP_RETCODE SCIPsetReaderWrite(SCIP *scip, SCIP_READER *reader, SCIP_DECL_READERWRITE((*readerwrite))) Definition: scip.c:4415 SCIP_RETCODE SCIPincludeSepa(SCIP *scip, const char *name, const char *desc, int priority, int freq, SCIP_Real maxbounddist, SCIP_Bool usessubscip, SCIP_Bool delay, SCIP_DECL_SEPACOPY((*sepacopy)), SCIP_DECL_SEPAFREE((*sepafree)), SCIP_DECL_SEPAINIT((*sepainit)), SCIP_DECL_SEPAEXIT((*sepaexit)), SCIP_DECL_SEPAINITSOL((*sepainitsol)), SCIP_DECL_SEPAEXITSOL((*sepaexitsol)), SCIP_DECL_SEPAEXECLP((*sepaexeclp)), SCIP_DECL_SEPAEXECSOL((*sepaexecsol)), SCIP_SEPADATA *sepadata) Definition: scip.c:6334 SCIP_RETCODE SCIPcalcCliquePartition(SCIP *const scip, SCIP_VAR **const vars, int const nvars, int *const cliquepartition, int *const ncliques) Definition: scip.c:19876 SCIP_RETCODE SCIPreleaseNlRow(SCIP *scip, SCIP_NLROW **nlrow) Definition: scip.c:27144 SCIP_RETCODE SCIPcreateRowUnspec(SCIP *scip, SCIP_ROW **row, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable) Definition: scip.c:25212 SCIP_RETCODE SCIPallocBufferSize(SCIP *scip, void **ptr, int size) Definition: scip.c:38047 SCIP_RETCODE SCIPsetPresolExit(SCIP *scip, SCIP_PRESOL *presol, SCIP_DECL_PRESOLEXIT((*presolexit))) Definition: scip.c:5996 SCIP_RETCODE SCIPtransformCons(SCIP *scip, SCIP_CONS *cons, SCIP_CONS **transcons) Definition: scip.c:23060 SCIP_RETCODE SCIPgetNlRowPseudoFeasibility(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real *pseudofeasibility) Definition: scip.c:27656 SCIP_Real SCIPgetAvgCutoffsCurrentRun(SCIP *scip, SCIP_BRANCHDIR dir) Definition: scip.c:35805 SCIP_Longint SCIPgetNRootStrongbranchLPIterations(SCIP *scip) Definition: scip.c:34586 SCIP_RETCODE SCIPgetTransformedVars(SCIP *scip, int nvars, SCIP_VAR **vars, SCIP_VAR **transvars) Definition: scip.c:15360 SCIP_RETCODE SCIPsetEventhdlrExitsol(SCIP *scip, SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTEXITSOL((*eventexitsol))) Definition: scip.c:7311 SCIP_RETCODE SCIPdropVarEvent(SCIP *scip, SCIP_VAR *var, SCIP_EVENTTYPE eventtype, SCIP_EVENTHDLR *eventhdlr, SCIP_EVENTDATA *eventdata, int filterpos) Definition: scip.c:33424 SCIP_Real SCIPgetRowPseudoActivity(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25864 SCIP_Bool SCIPisFeasEQ(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38648 SCIP_Real SCIPgetVarAvgCutoffsCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21839 SCIP_RETCODE SCIPaddSol(SCIP *scip, SCIP_SOL *sol, SCIP_Bool *stored) Definition: scip.c:32796 public methods for storing cuts in a cut pool SCIP_RETCODE SCIPsetSubscipsOff(SCIP *scip, SCIP_Bool quiet) Definition: scip.c:4124 type definitions for input file readers SCIP_Real SCIPgetBranchScore(SCIP *scip, SCIP_VAR *var, SCIP_Real downgain, SCIP_Real upgain) Definition: scip.c:30455 SCIP_RETCODE SCIPinferBinvarCons(SCIP *scip, SCIP_VAR *var, SCIP_Bool fixedval, SCIP_CONS *infercons, int inferinfo, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:18783 SCIP_RETCODE SCIPsetRelaxInitsol(SCIP *scip, SCIP_RELAX *relax, SCIP_DECL_RELAXINITSOL((*relaxinitsol))) Definition: scip.c:6243 SCIP_RETCODE SCIPupdateConsFlags(SCIP *scip, SCIP_CONS *cons0, SCIP_CONS *cons1) Definition: scip.c:23000 SCIP_RETCODE SCIPsetPresolving(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet) Definition: scip.c:4173 SCIP_RETCODE SCIPcreateCurrentSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur) Definition: scip.c:31011 SCIP_RETCODE SCIPsetSeparating(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet) Definition: scip.c:4199 SCIP_Real SCIPgetAvgInferences(SCIP *scip, SCIP_BRANCHDIR dir) Definition: scip.c:35699 SCIP_RETCODE SCIPcreateCons(SCIP *scip, SCIP_CONS **cons, const char *name, SCIP_CONSHDLR *conshdlr, SCIP_CONSDATA *consdata, SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode) Definition: scip.c:22476 SCIP_RETCODE SCIPchgVarObjDiveNLP(SCIP *scip, SCIP_VAR *var, SCIP_Real coef) Definition: scip.c:26916 SCIP_Longint SCIPgetNResolveLPIterations(SCIP *scip) Definition: scip.c:34330 SCIP_RETCODE SCIPchgVarUbProbing(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:29674 SCIP_RETCODE SCIPevalExprtreeGlobalBounds(SCIP *scip, SCIP_EXPRTREE *tree, SCIP_Real infinity, SCIP_INTERVAL *val) Definition: scip.c:27995 SCIP_RETCODE SCIPsetPropInitsol(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPINITSOL((*propinitsol))) Definition: scip.c:6731 SCIP_RETCODE SCIPsumLPRows(SCIP *scip, SCIP_Real *weights, SCIP_REALARRAY *sumcoef, SCIP_Real *sumlhs, SCIP_Real *sumrhs) Definition: scip.c:24717 SCIP_RETCODE SCIPenfopsCons(SCIP *scip, SCIP_CONS *cons, SCIP_Bool solinfeasible, SCIP_Bool objinfeasible, SCIP_RESULT *result) Definition: scip.c:23596 SCIP_RETCODE SCIPchgConsName(SCIP *scip, SCIP_CONS *cons, const char *name) Definition: scip.c:22702 SCIP_RETCODE SCIPincludeNodesel(SCIP *scip, const char *name, const char *desc, int stdpriority, int memsavepriority, SCIP_DECL_NODESELCOPY((*nodeselcopy)), SCIP_DECL_NODESELFREE((*nodeselfree)), SCIP_DECL_NODESELINIT((*nodeselinit)), SCIP_DECL_NODESELEXIT((*nodeselexit)), SCIP_DECL_NODESELINITSOL((*nodeselinitsol)), SCIP_DECL_NODESELEXITSOL((*nodeselexitsol)), SCIP_DECL_NODESELSELECT((*nodeselselect)), SCIP_DECL_NODESELCOMP((*nodeselcomp)), SCIP_NODESELDATA *nodeseldata) Definition: scip.c:7379 SCIP_RETCODE SCIPsetPricerCopy(SCIP *scip, SCIP_PRICER *pricer, SCIP_DECL_PRICERCOPY((*pricercopy))) Definition: scip.c:4588 SCIP_RETCODE SCIPfreeIntarray(SCIP *scip, SCIP_INTARRAY **intarray) Definition: scip.c:39498 SCIP_RETCODE SCIPdelVar(SCIP *scip, SCIP_VAR *var, SCIP_Bool *deleted) Definition: scip.c:9869 SCIP_RETCODE SCIPaddStringParam(SCIP *scip, const char *name, const char *desc, char **valueptr, SCIP_Bool isadvanced, const char *defaultvalue, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata) Definition: scip.c:3525 SCIP_RETCODE SCIPgetCharParam(SCIP *scip, const char *name, char *value) Definition: scip.c:3657 SCIP_RETCODE SCIPcreateProb(SCIP *scip, const char *name, SCIP_DECL_PROBDELORIG((*probdelorig)), SCIP_DECL_PROBTRANS((*probtrans)), SCIP_DECL_PROBDELTRANS((*probdeltrans)), SCIP_DECL_PROBINITSOL((*probinitsol)), SCIP_DECL_PROBEXITSOL((*probexitsol)), SCIP_DECL_PROBCOPY((*probcopy)), SCIP_PROBDATA *probdata) Definition: scip.c:8453 SCIP_RETCODE SCIPsetBranchruleExecExt(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXECEXT((*branchexecext))) Definition: scip.c:7835 SCIP_Bool SCIPisRelLE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39118 SCIP_RETCODE SCIPcreateSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur) Definition: scip.c:30856 SCIP_RETCODE SCIPsetHeurExit(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEUREXIT((*heurexit))) Definition: scip.c:7062 public methods for variable pricers Definition: struct_lp.h:188 SCIP_RETCODE SCIPcopyOrigConss(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool enablepricing, SCIP_Bool *valid) Definition: scip.c:2533 SCIP_Real SCIPgetVarConflictScore(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21466 SCIP_Real SCIPgetAvgCutoffs(SCIP *scip, SCIP_BRANCHDIR dir) Definition: scip.c:35785 public methods for LP management Definition: struct_cutpool.h:48 SCIP_RETCODE SCIPchgLpfeastol(SCIP *scip, SCIP_Real lpfeastol, SCIP_Bool printnewvalue) Definition: scip.c:37822 SCIP_RETCODE SCIPsetNodeselFree(SCIP *scip, SCIP_NODESEL *nodesel, SCIP_DECL_NODESELFREE((*nodeselfree))) Definition: scip.c:7475 SCIP_RETCODE SCIPchgVarBranchPriority(SCIP *scip, SCIP_VAR *var, int branchpriority) Definition: scip.c:20509 Definition: struct_misc.h:131 SCIP_RETCODE SCIPaddLinearCoefToNlRow(SCIP *scip, SCIP_NLROW *nlrow, SCIP_VAR *var, SCIP_Real val) Definition: scip.c:27235 SCIP_RETCODE SCIPcreateLPSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur) Definition: scip.c:30898 SCIP_RETCODE SCIPtransformVars(SCIP *scip, int nvars, SCIP_VAR **vars, SCIP_VAR **transvars) Definition: scip.c:15269 SCIP_RETCODE SCIPcacheRowExtensions(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25487 SCIP_RETCODE SCIPchgVarLbGlobal(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:18150 SCIP_RETCODE SCIPaddConflictLb(SCIP *scip, SCIP_VAR *var, SCIP_BDCHGIDX *bdchgidx) Definition: scip.c:22093 SCIP_RETCODE SCIPflattenVarAggregationGraph(SCIP *scip, SCIP_VAR *var) Definition: scip.c:15570 SCIP_RETCODE SCIPcreateSolCopy(SCIP *scip, SCIP_SOL **sol, SCIP_SOL *sourcesol) Definition: scip.c:31124 SCIP_Real SCIPgetVarPseudocostScoreCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_Real solval) Definition: scip.c:21384 SCIP_RETCODE SCIPsetSepaPriority(SCIP *scip, SCIP_SEPA *sepa, int priority) Definition: scip.c:6557 type definitions for branch and bound tree SCIP_RETCODE SCIPsetBranchruleExitsol(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_DECL_BRANCHEXITSOL((*branchexitsol))) Definition: scip.c:7801 SCIP_RETCODE SCIPsetConshdlrPrint(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPRINT((*consprint))) Definition: scip.c:5516 SCIP_Real SCIPgetAvgConflictScoreCurrentRun(SCIP *scip) Definition: scip.c:35626 SCIP_RETCODE SCIPaddVarImplication(SCIP *scip, SCIP_VAR *var, SCIP_Bool varfixing, SCIP_VAR *implvar, SCIP_BOUNDTYPE impltype, SCIP_Real implbound, SCIP_Bool *infeasible, int *nbdchgs) Definition: scip.c:19666 SCIP_RETCODE SCIPfixVarProbing(SCIP *scip, SCIP_VAR *var, SCIP_Real fixedval) Definition: scip.c:29709 SCIP_RETCODE SCIPsetPresolFree(SCIP *scip, SCIP_PRESOL *presol, SCIP_DECL_PRESOLFREE((*presolfree))) Definition: scip.c:5964 SCIP_Real SCIPgetAvgPseudocost(SCIP *scip, SCIP_Real solvaldelta) Definition: scip.c:35475 SCIP_RETCODE SCIPaddQuadVarsToNlRow(SCIP *scip, SCIP_NLROW *nlrow, int nvars, SCIP_VAR **vars) Definition: scip.c:27346 SCIP_RETCODE SCIPwriteVarsLinearsum(SCIP *scip, FILE *file, SCIP_VAR **vars, SCIP_Real *vals, int nvars, SCIP_Bool type) Definition: scip.c:14215 SCIP_RETCODE SCIPaddConflictRelaxedLb(SCIP *scip, SCIP_VAR *var, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedlb) Definition: scip.c:22125 type definitions for clocks and timing issues SCIP_RETCODE SCIPdisableConsSeparation(SCIP *scip, SCIP_CONS *cons) Definition: scip.c:23398 SCIP_Real SCIPgetVarAvgInferenceCutoffScoreCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_Real cutoffweight) Definition: scip.c:21964 SCIP_RETCODE SCIPprintRay(SCIP *scip, SCIP_SOL *sol, FILE *file, SCIP_Bool printzeros) Definition: scip.c:32396 SCIP_RETCODE SCIPsetConshdlrInitlp(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSINITLP((*consinitlp))) Definition: scip.c:5355 SCIP_RETCODE SCIPsetRelaxExit(SCIP *scip, SCIP_RELAX *relax, SCIP_DECL_RELAXEXIT((*relaxexit))) Definition: scip.c:6227 SCIP_Longint SCIPgetNPrimalResolveLPIterations(SCIP *scip) Definition: scip.c:34368 SCIP_RETCODE SCIPgetSiblings(SCIP *scip, SCIP_NODE ***siblings, int *nsiblings) Definition: scip.c:33630 SCIP_RETCODE SCIPfreeCutpool(SCIP *scip, SCIP_CUTPOOL **cutpool) Definition: scip.c:28483 SCIP_RETCODE SCIPsetConsChecked(SCIP *scip, SCIP_CONS *cons, SCIP_Bool check) Definition: scip.c:22822 SCIP_RETCODE SCIPcreatePtrarray(SCIP *scip, SCIP_PTRARRAY **ptrarray) Definition: scip.c:39764 SCIP_Real SCIPgetVarPseudocostScore(SCIP *scip, SCIP_VAR *var, SCIP_Real solval) Definition: scip.c:21348 SCIP_RETCODE SCIPgetVarsData(SCIP *scip, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars) Definition: scip.c:9945 SCIP_Real SCIPgetFirstLPLowerboundRoot(SCIP *scip) Definition: scip.c:35151 SCIP_RETCODE SCIPaddQuadVarToNlRow(SCIP *scip, SCIP_NLROW *nlrow, SCIP_VAR *var) Definition: scip.c:27322 SCIP_RETCODE SCIPextendBoolarray(SCIP *scip, SCIP_BOOLARRAY *boolarray, int minidx, int maxidx) Definition: scip.c:39666 SCIP_RETCODE SCIPseparateSol(SCIP *scip, SCIP_SOL *sol, SCIP_Bool pretendroot, SCIP_Bool onlydelayed, SCIP_Bool *delayed, SCIP_Bool *cutoff) Definition: scip.c:28724 SCIP_RETCODE SCIPprintRow(SCIP *scip, SCIP_ROW *row, FILE *file) Definition: scip.c:26010 SCIP_RETCODE SCIPaddConsAge(SCIP *scip, SCIP_CONS *cons, SCIP_Real deltaage) Definition: scip.c:23229 SCIP_RETCODE SCIPsetConshdlrInitsol(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSINITSOL((*consinitsol))) Definition: scip.c:5175 type definitions for storing and manipulating the main problem SCIP_RETCODE SCIPcreateChild(SCIP *scip, SCIP_NODE **node, SCIP_Real nodeselprio, SCIP_Real estimate) Definition: scip.c:30565 void SCIPsetMessagehdlrQuiet(SCIP *scip, SCIP_Bool quiet) Definition: scip.c:1194 SCIP_RETCODE SCIPgetTransformedConss(SCIP *scip, int nconss, SCIP_CONS **conss, SCIP_CONS **transconss) Definition: scip.c:23188 SCIP_RETCODE SCIPchgRealParam(SCIP *scip, SCIP_PARAM *param, SCIP_Real value) Definition: scip.c:3888 int SCIPgetPtrarrayMinIdx(SCIP *scip, SCIP_PTRARRAY *ptrarray) Definition: scip.c:39864 SCIP_Real SCIPgetBranchingPoint(SCIP *scip, SCIP_VAR *var, SCIP_Real suggestion) Definition: scip.c:30498 SCIP_RETCODE SCIPgetLongintParam(SCIP *scip, const char *name, SCIP_Longint *value) Definition: scip.c:3619 SCIP_RETCODE SCIPcreateOrigSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur) Definition: scip.c:31072 SCIP_RETCODE SCIPgetVarStrongbranchLast(SCIP *scip, SCIP_VAR *var, SCIP_Real *down, SCIP_Real *up, SCIP_Bool *downvalid, SCIP_Bool *upvalid, SCIP_Real *solval, SCIP_Real *lpobjval) Definition: scip.c:17453 SCIP_RETCODE SCIPincludePresol(SCIP *scip, const char *name, const char *desc, int priority, int maxrounds, SCIP_Bool delay, SCIP_DECL_PRESOLCOPY((*presolcopy)), SCIP_DECL_PRESOLFREE((*presolfree)), SCIP_DECL_PRESOLINIT((*presolinit)), SCIP_DECL_PRESOLEXIT((*presolexit)), SCIP_DECL_PRESOLINITPRE((*presolinitpre)), SCIP_DECL_PRESOLEXITPRE((*presolexitpre)), SCIP_DECL_PRESOLEXEC((*presolexec)), SCIP_PRESOLDATA *presoldata) Definition: scip.c:5870 SCIP_RETCODE SCIPrepropagateNode(SCIP *scip, SCIP_NODE *node) Definition: scip.c:33875 SCIP_RETCODE SCIPaddConflictUb(SCIP *scip, SCIP_VAR *var, SCIP_BDCHGIDX *bdchgidx) Definition: scip.c:22156 SCIP_Real SCIPgetVarAvgCutoffScore(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21863 SCIP_RETCODE SCIPchgVarUbNode(SCIP *scip, SCIP_NODE *node, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:18110 SCIP_RETCODE SCIPwriteOrigProblem(SCIP *scip, const char *filename, const char *extension, SCIP_Bool genericnames) Definition: scip.c:8926 SCIP_BRANCHRULE * SCIPfindBranchrule(SCIP *scip, const char *name) Definition: scip.c:7867 type definitions for propagators SCIP_Real SCIPgetVarPseudocostCount(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21296 SCIP_Real SCIPcomputeVarUbLocal(SCIP *scip, SCIP_VAR *var) Definition: scip.c:19472 void SCIPverbMessage(SCIP *scip, SCIP_VERBLEVEL msgverblevel, FILE *file, const char *formatstr,...) Definition: scip.c:1256 SCIP_Longint SCIPgetNConflictConssFound(SCIP *scip) Definition: scip.c:34750 SCIP_RETCODE SCIPgetNlRowSolActivity(SCIP *scip, SCIP_NLROW *nlrow, SCIP_SOL *sol, SCIP_Real *activity) Definition: scip.c:27764 public methods for presolvers SCIP_RETCODE SCIPlinkCurrentSol(SCIP *scip, SCIP_SOL *sol) Definition: scip.c:31549 SCIP_RETCODE SCIPgetNLPIntPar(SCIP *scip, SCIP_NLPPARAM type, int *ival) Definition: scip.c:26617 public methods for managing events int SCIPgetVarNStrongbranchs(SCIP *scip, SCIP_VAR *var) Definition: scip.c:17559 SCIP_RETCODE SCIPprintOrigProblem(SCIP *scip, FILE *file, const char *extension, SCIP_Bool genericnames) Definition: scip.c:35929 SCIP_RETCODE SCIPmarkDoNotMultaggrVar(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21099 SCIP_RETCODE SCIPcreateEmptyRowCons(SCIP *scip, SCIP_ROW **row, SCIP_CONSHDLR *conshdlr, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable) Definition: scip.c:25276 SCIP_RETCODE SCIPsetConshdlrDelvars(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSDELVARS((*consdelvars))) Definition: scip.c:5493 SCIP_RETCODE SCIPsetProbExitsol(SCIP *scip, SCIP_DECL_PROBEXITSOL((*probexitsol))) Definition: scip.c:8615 SCIP_RETCODE SCIPretransformSol(SCIP *scip, SCIP_SOL *sol) Definition: scip.c:32709 SCIP_RETCODE SCIPchgStringParam(SCIP *scip, SCIP_PARAM *param, const char *value) Definition: scip.c:3978 SCIP_RETCODE SCIPchgVarBoundsDiveNLP(SCIP *scip, SCIP_VAR *var, SCIP_Real lb, SCIP_Real ub) Definition: scip.c:26944 void SCIPprintReal(SCIP *scip, FILE *file, SCIP_Real val, int width, int precision) Definition: scip.c:37903 SCIP_Bool SCIPisSumEQ(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38518 SCIP_RETCODE SCIPchgNlRowLhs(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real lhs) Definition: scip.c:27166 SCIP_RETCODE SCIPgetBoolParam(SCIP *scip, const char *name, SCIP_Bool *value) Definition: scip.c:3581 void * SCIPgetPtrarrayVal(SCIP *scip, SCIP_PTRARRAY *ptrarray, int idx) Definition: scip.c:39830 SCIP_Real SCIPgetVarPseudocostValCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_Real solvaldelta) Definition: scip.c:21220 SCIP_RETCODE SCIPinitVarBranchStats(SCIP *scip, SCIP_VAR *var, SCIP_Real downpscost, SCIP_Real uppscost, SCIP_Real downvsids, SCIP_Real upvsids, SCIP_Real downconflen, SCIP_Real upconflen, SCIP_Real downinfer, SCIP_Real upinfer, SCIP_Real downcutoff, SCIP_Real upcutoff) Definition: scip.c:21742 public methods for conflict analysis handlers SCIP_RETCODE SCIPtrySol(SCIP *scip, SCIP_SOL *sol, SCIP_Bool printreason, SCIP_Bool checkbounds, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool *stored) Definition: scip.c:32978 SCIP_RETCODE SCIPdropRowEvent(SCIP *scip, SCIP_ROW *row, SCIP_EVENTTYPE eventtype, SCIP_EVENTHDLR *eventhdlr, SCIP_EVENTDATA *eventdata, int filterpos) Definition: scip.c:33504 Definition: struct_disp.h:35 SCIP_RETCODE SCIPparseVarsPolynomial(SCIP *scip, const char *str, SCIP_VAR ****monomialvars, SCIP_Real ***monomialexps, SCIP_Real **monomialcoefs, int **monomialnvars, int *nmonomials, char **endptr, SCIP_Bool *success) Definition: scip.c:14689 SCIP_Real SCIPgetBranchScoreMultiple(SCIP *scip, SCIP_VAR *var, int nchildren, SCIP_Real *gains) Definition: scip.c:30476 SCIP_RETCODE SCIPsetObjsense(SCIP *scip, SCIP_OBJSENSE objsense) Definition: scip.c:9387 type definitions for separators SCIP_RETCODE SCIPsetEmphasis(SCIP *scip, SCIP_PARAMEMPHASIS paramemphasis, SCIP_Bool quiet) Definition: scip.c:4104 SCIP_RETCODE SCIPincludeDialog(SCIP *scip, SCIP_DIALOG **dialog, SCIP_DECL_DIALOGCOPY((*dialogcopy)), SCIP_DECL_DIALOGEXEC((*dialogexec)), SCIP_DECL_DIALOGDESC((*dialogdesc)), SCIP_DECL_DIALOGFREE((*dialogfree)), const char *name, const char *desc, SCIP_Bool issubmenu, SCIP_DIALOGDATA *dialogdata) Definition: scip.c:8229 SCIP_RETCODE SCIPchgVarLbNode(SCIP *scip, SCIP_NODE *node, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:18078 SCIP_Longint SCIPconvertRealToLongint(SCIP *scip, SCIP_Real real) Definition: scip.c:39288 SCIP_RETCODE SCIPsolveDiveLP(SCIP *scip, int itlim, SCIP_Bool *lperror, SCIP_Bool *cutoff) Definition: scip.c:29322 SCIP_RETCODE SCIPgetConsNVars(SCIP *scip, SCIP_CONS *cons, int *nvars, SCIP_Bool *success) Definition: scip.c:24019 SCIP_Real SCIPgetRowLPActivity(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25810 SCIP_RETCODE SCIPinferVarLbCons(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_CONS *infercons, int inferinfo, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:18583 SCIP_RETCODE SCIPaddCharParam(SCIP *scip, const char *name, const char *desc, char *valueptr, SCIP_Bool isadvanced, char defaultvalue, const char *allowedvalues, SCIP_DECL_PARAMCHGD((*paramchgd)), SCIP_PARAMDATA *paramdata) Definition: scip.c:3498 public methods for message output SCIP_RETCODE SCIPsetBoolParam(SCIP *scip, const char *name, SCIP_Bool value) Definition: scip.c:3779 SCIP_RETCODE SCIPincludeReaderBasic(SCIP *scip, SCIP_READER **readerptr, const char *name, const char *desc, const char *extension, SCIP_READERDATA *readerdata) Definition: scip.c:4305 SCIP_RETCODE SCIPsetSepaExitsol(SCIP *scip, SCIP_SEPA *sepa, SCIP_DECL_SEPAEXITSOL((*sepaexitsol))) Definition: scip.c:6504 SCIP_RETCODE SCIPsetConshdlrDelete(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSDELETE((*consdelete))) Definition: scip.c:5309 SCIP_RETCODE SCIPsetPropExit(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPEXIT((*propexit))) Definition: scip.c:6715 SCIP_RETCODE SCIPsetRelaxExitsol(SCIP *scip, SCIP_RELAX *relax, SCIP_DECL_RELAXEXITSOL((*relaxexitsol))) Definition: scip.c:6259 SCIP_RETCODE SCIPdisableConsPropagation(SCIP *scip, SCIP_CONS *cons) Definition: scip.c:23455 SCIP_Bool SCIPhaveVarsCommonClique(SCIP *scip, SCIP_VAR *var1, SCIP_Bool value1, SCIP_VAR *var2, SCIP_Bool value2, SCIP_Bool regardimplics) Definition: scip.c:20134 SCIP_RETCODE SCIPbranchVarValNary(SCIP *scip, SCIP_VAR *var, SCIP_Real val, int n, SCIP_Real minwidth, SCIP_Real widthfactor, int *nchildren) Definition: scip.c:30729 SCIP_RETCODE SCIPcopyPlugins(SCIP *sourcescip, SCIP *targetscip, SCIP_Bool copyreaders, SCIP_Bool copypricers, SCIP_Bool copyconshdlrs, SCIP_Bool copyconflicthdlrs, SCIP_Bool copypresolvers, SCIP_Bool copyrelaxators, SCIP_Bool copyseparators, SCIP_Bool copypropagators, SCIP_Bool copyheuristics, SCIP_Bool copyeventhdlrs, SCIP_Bool copynodeselectors, SCIP_Bool copybranchrules, SCIP_Bool copydisplays, SCIP_Bool copydialogs, SCIP_Bool copynlpis, SCIP_Bool passmessagehdlr, SCIP_Bool *valid) Definition: scip.c:1422 SCIP_RETCODE SCIPsetEventhdlrDelete(SCIP *scip, SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTDELETE((*eventdelete))) Definition: scip.c:7325 type definitions for handling parameter settings SCIP_Real SCIPgetVarFarkasCoef(SCIP *scip, SCIP_VAR *var) Definition: scip.c:15821 SCIP_RETCODE SCIPclearPtrarray(SCIP *scip, SCIP_PTRARRAY *ptrarray) Definition: scip.c:39817 SCIP_RETCODE SCIProundSol(SCIP *scip, SCIP_SOL *sol, SCIP_Bool *success) Definition: scip.c:32673 SCIP_RETCODE SCIPchgBarrierconvtol(SCIP *scip, SCIP_Real barrierconvtol) Definition: scip.c:37873 Definition: lpi_clp.cpp:93 SCIP_RETCODE SCIPsetConshdlrExitsol(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSEXITSOL((*consexitsol))) Definition: scip.c:5199 type definitions for user interface dialog SCIP_RETCODE SCIPprintNlRow(SCIP *scip, SCIP_NLROW *nlrow, FILE *file) Definition: scip.c:27857 SCIP_RETCODE SCIPsetProbData(SCIP *scip, SCIP_PROBDATA *probdata) Definition: scip.c:9261 public methods for relaxation handlers SCIP_RETCODE SCIPsetEventhdlrFree(SCIP *scip, SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTFREE((*eventfree))) Definition: scip.c:7255 result codes for SCIP callback methods type definitions for branching and inference history SCIP_RETCODE SCIPgetNLPRealPar(SCIP *scip, SCIP_NLPPARAM type, SCIP_Real *dval) Definition: scip.c:26673 SCIP_RETCODE SCIPincSolVal(SCIP *scip, SCIP_SOL *sol, SCIP_VAR *var, SCIP_Real incval) Definition: scip.c:31734 public methods for input file readers SCIP_RETCODE SCIPsetHeurFree(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURFREE((*heurfree))) Definition: scip.c:7030 SCIP_Bool SCIPisDualfeasNegative(SCIP *scip, SCIP_Real val) Definition: scip.c:38970 SCIP_RETCODE SCIPaddVarsToRowSameCoef(SCIP *scip, SCIP_ROW *row, int nvars, SCIP_VAR **vars, SCIP_Real val) Definition: scip.c:25608 Definition: struct_implics.h:66 Definition: struct_nlp.h:62 SCIP_RETCODE SCIPgetChildren(SCIP *scip, SCIP_NODE ***children, int *nchildren) Definition: scip.c:33590 SCIP_RETCODE SCIPsetConsSeparated(SCIP *scip, SCIP_CONS *cons, SCIP_Bool separate) Definition: scip.c:22772 SCIP_RETCODE SCIPscaleVarBranchFactor(SCIP *scip, SCIP_VAR *var, SCIP_Real scale) Definition: scip.c:20450 SCIP_RETCODE SCIPreleaseDialog(SCIP *scip, SCIP_DIALOG **dialog) Definition: scip.c:8294 SCIP_RETCODE SCIPsetHeurInit(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURINIT((*heurinit))) Definition: scip.c:7046 void SCIPinfoMessage(SCIP *scip, FILE *file, const char *formatstr,...) Definition: scip.c:1239 SCIP_RETCODE SCIPgetNLPVarsNonlinearity(SCIP *scip, int *nlcount) Definition: scip.c:26194 SCIP_RETCODE SCIPclearIntarray(SCIP *scip, SCIP_INTARRAY *intarray) Definition: scip.c:39534 SCIP_RETCODE SCIPsetRelaxSolVal(SCIP *scip, SCIP_VAR *var, SCIP_Real val) Definition: scip.c:15961 SCIP_RETCODE SCIPsetStringParam(SCIP *scip, const char *name, const char *value) Definition: scip.c:4004 SCIP_RETCODE SCIPchgVarLbProbing(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound) Definition: scip.c:29640 SCIP_RETCODE SCIPsetNodeselStdPriority(SCIP *scip, SCIP_NODESEL *nodesel, int priority) Definition: scip.c:7590 SCIP_RETCODE SCIPactivatePricer(SCIP *scip, SCIP_PRICER *pricer) Definition: scip.c:4797 SCIP_RETCODE SCIPtightenVarUb(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:18477 SCIP_RETCODE SCIPcalcStrongCG(SCIP *scip, SCIP_Real boundswitch, SCIP_Bool usevbds, SCIP_Bool allowlocal, int maxmksetcoefs, SCIP_Real maxweightrange, SCIP_Real minfrac, SCIP_Real maxfrac, SCIP_Real *weights, SCIP_Real scale, SCIP_Real *mircoef, SCIP_Real *mirrhs, SCIP_Real *cutactivity, SCIP_Bool *success, SCIP_Bool *cutislocal, int *cutrank) Definition: scip.c:24793 SCIP_RETCODE SCIPchgVarUbLazy(SCIP *scip, SCIP_VAR *var, SCIP_Real lazyub) Definition: scip.c:18337 SCIP_RETCODE SCIPsetConshdlrGetNVars(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSGETNVARS((*consgetnvars))) Definition: scip.c:5585 SCIP_RETCODE SCIPsepasolCons(SCIP *scip, SCIP_CONS *cons, SCIP_SOL *sol, SCIP_RESULT *result) Definition: scip.c:23710 SCIP_RETCODE SCIPsetHeurExitsol(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEUREXITSOL((*heurexitsol))) Definition: scip.c:7094 SCIP_Real SCIPgetVarVSIDS(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21418 SCIP_RETCODE SCIPcreateEmptyRow(SCIP *scip, SCIP_ROW **row, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable) Definition: scip.c:25365 SCIP_RETCODE SCIPaddConsLocal(SCIP *scip, SCIP_CONS *cons, SCIP_NODE *validnode) Definition: scip.c:11372 SCIP_RETCODE SCIPcalcNegatedCliquePartition(SCIP *const scip, SCIP_VAR **const vars, int const nvars, int *const cliquepartition, int *const ncliques) Definition: scip.c:20025 SCIP_RETCODE SCIPgetNLPStringPar(SCIP *scip, SCIP_NLPPARAM type, const char **sval) Definition: scip.c:26729 Definition: struct_relax.h:36 SCIP_Bool SCIPareSolsEqual(SCIP *scip, SCIP_SOL *sol1, SCIP_SOL *sol2) Definition: scip.c:32098 SCIP_Bool SCIPisFeasLE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38686 SCIP_RETCODE SCIPsetNLPInitialGuessSol(SCIP *scip, SCIP_SOL *sol) Definition: scip.c:26411 SCIP_RETCODE SCIPsetEventhdlrInitsol(SCIP *scip, SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTINITSOL((*eventinitsol))) Definition: scip.c:7297 SCIP_RETCODE SCIPcopyOrigProb(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *name) Definition: scip.c:1632 SCIP_RETCODE SCIPchgRowLhs(SCIP *scip, SCIP_ROW *row, SCIP_Real lhs) Definition: scip.c:25435 SCIP_RETCODE SCIPflushRowExtensions(SCIP *scip, SCIP_ROW *row) Definition: scip.c:25510 SCIP_RETCODE SCIPgetVarsStrongbranchesInt(SCIP *scip, SCIP_VAR **vars, int nvars, int itlim, SCIP_Real *down, SCIP_Real *up, SCIP_Bool *downvalid, SCIP_Bool *upvalid, SCIP_Bool *downinf, SCIP_Bool *upinf, SCIP_Bool *downconflict, SCIP_Bool *upconflict, SCIP_Bool *lperror) Definition: scip.c:17338 SCIP_RETCODE SCIPcaptureNlRow(SCIP *scip, SCIP_NLROW *nlrow) Definition: scip.c:27121 SCIP_RETCODE SCIPgetVarClosestVub(SCIP *scip, SCIP_VAR *var, SCIP_SOL *sol, SCIP_Real *closestvub, int *closestvubidx) Definition: scip.c:19518 SCIP_RETCODE SCIPbranchVarVal(SCIP *scip, SCIP_VAR *var, SCIP_Real val, SCIP_NODE **downchild, SCIP_NODE **eqchild, SCIP_NODE **upchild) Definition: scip.c:30670 SCIP_RETCODE SCIPextendRealarray(SCIP *scip, SCIP_REALARRAY *realarray, int minidx, int maxidx) Definition: scip.c:39364 SCIP_RETCODE SCIPcreateWallClock(SCIP *scip, SCIP_CLOCK **clck) Definition: scip.c:37339 SCIP_RETCODE SCIPincludeSepaBasic(SCIP *scip, SCIP_SEPA **sepa, const char *name, const char *desc, int priority, int freq, SCIP_Real maxbounddist, SCIP_Bool usessubscip, SCIP_Bool delay, SCIP_DECL_SEPAEXECLP((*sepaexeclp)), SCIP_DECL_SEPAEXECSOL((*sepaexecsol)), SCIP_SEPADATA *sepadata) Definition: scip.c:6382 SCIP_CONFLICTHDLR * SCIPfindConflicthdlr(SCIP *scip, const char *name) Definition: scip.c:5812 void SCIPsetMessagehdlrLogfile(SCIP *scip, const char *filename) Definition: scip.c:1182 SCIP_Real SCIPgetConflictVarUb(SCIP *scip, SCIP_VAR *var) Definition: scip.c:22365 SCIP_RETCODE SCIPtightenVarUbGlobal(SCIP *scip, SCIP_VAR *var, SCIP_Real newbound, SCIP_Bool force, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:19308 int SCIPgetBoolarrayMinIdx(SCIP *scip, SCIP_BOOLARRAY *boolarray) Definition: scip.c:39735 SCIP_RETCODE SCIPincludeReader(SCIP *scip, const char *name, const char *desc, const char *extension, SCIP_DECL_READERCOPY((*readercopy)), SCIP_DECL_READERFREE((*readerfree)), SCIP_DECL_READERREAD((*readerread)), SCIP_DECL_READERWRITE((*readerwrite)), SCIP_READERDATA *readerdata) Definition: scip.c:4263 SCIP_Longint SCIPgetNPrimalLPIterations(SCIP *scip) Definition: scip.c:34220 SCIP_Longint SCIPgetNRootFirstLPIterations(SCIP *scip) Definition: scip.c:34184 SCIP_RETCODE SCIPbranchPseudo(SCIP *scip, SCIP_RESULT *result) Definition: scip.c:30820 SCIP_RETCODE SCIPpresolCons(SCIP *scip, SCIP_CONS *cons, int nrounds, int nnewfixedvars, int nnewaggrvars, int nnewchgvartypes, int nnewchgbds, int nnewholes, int nnewdelconss, int nnewaddconss, int nnewupgdconss, int nnewchgcoefs, int nnewchgsides, int *nfixedvars, int *naggrvars, int *nchgvartypes, int *nchgbds, int *naddholes, int *ndelconss, int *naddconss, int *nupgdconss, int *nchgcoefs, int *nchgsides, SCIP_RESULT *result) Definition: scip.c:23806 Definition: struct_expr.h:55 SCIP_Bool SCIPisSumRelEQ(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39175 SCIP_Real SCIPgetAvgInferenceScoreCurrentRun(SCIP *scip) Definition: scip.c:35762 SCIP_Bool SCIPisSumRelGE(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:39251 public methods for separators SCIP_RETCODE SCIPsetHeurCopy(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURCOPY((*heurcopy))) Definition: scip.c:7014 public methods for primal heuristics common defines and data types used in all packages of SCIP SCIP_Real SCIPgetVarAvgInferencesCurrentRun(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21658 SCIP_RETCODE SCIPincRealarrayVal(SCIP *scip, SCIP_REALARRAY *realarray, int idx, SCIP_Real incval) Definition: scip.c:39434 SCIP_RETCODE SCIPaddVarVub(SCIP *scip, SCIP_VAR *var, SCIP_VAR *vubvar, SCIP_Real vubcoef, SCIP_Real vubconstant, SCIP_Bool *infeasible, int *nbdchgs) Definition: scip.c:19606 SCIP_RETCODE SCIPgetRealParam(SCIP *scip, const char *name, SCIP_Real *value) Definition: scip.c:3638 SCIP_RETCODE SCIPchgVarLbLazy(SCIP *scip, SCIP_VAR *var, SCIP_Real lazylb) Definition: scip.c:18304 SCIP_RETCODE SCIPsetHeurInitsol(SCIP *scip, SCIP_HEUR *heur, SCIP_DECL_HEURINITSOL((*heurinitsol))) Definition: scip.c:7078 SCIP_RETCODE SCIPcreateRealarray(SCIP *scip, SCIP_REALARRAY **realarray) Definition: scip.c:39330 SCIP_Real SCIPgetNodeDualbound(SCIP *scip, SCIP_NODE *node) Definition: scip.c:11583 SCIP_RETCODE SCIPincludeProp(SCIP *scip, const char *name, const char *desc, int priority, int freq, SCIP_Bool delay, SCIP_PROPTIMING timingmask, int presolpriority, int presolmaxrounds, SCIP_Bool presoldelay, SCIP_DECL_PROPCOPY((*propcopy)), SCIP_DECL_PROPFREE((*propfree)), SCIP_DECL_PROPINIT((*propinit)), SCIP_DECL_PROPEXIT((*propexit)), SCIP_DECL_PROPINITPRE((*propinitpre)), SCIP_DECL_PROPEXITPRE((*propexitpre)), SCIP_DECL_PROPINITSOL((*propinitsol)), SCIP_DECL_PROPEXITSOL((*propexitsol)), SCIP_DECL_PROPPRESOL((*proppresol)), SCIP_DECL_PROPEXEC((*propexec)), SCIP_DECL_PROPRESPROP((*propresprop)), SCIP_PROPDATA *propdata) Definition: scip.c:6577 type definitions for node selectors SCIP_RETCODE SCIPsetPropExitsol(SCIP *scip, SCIP_PROP *prop, SCIP_DECL_PROPEXITSOL((*propexitsol))) Definition: scip.c:6747 int SCIPgetIntarrayMaxIdx(SCIP *scip, SCIP_INTARRAY *intarray) Definition: scip.c:39617 SCIP_RETCODE SCIPdropEvent(SCIP *scip, SCIP_EVENTTYPE eventtype, SCIP_EVENTHDLR *eventhdlr, SCIP_EVENTDATA *eventdata, int filterpos) Definition: scip.c:33344 SCIP_RETCODE SCIPaddVarObj(SCIP *scip, SCIP_VAR *var, SCIP_Real addobj) Definition: scip.c:17818 SCIP_RETCODE SCIPcreateRow(SCIP *scip, SCIP_ROW **row, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable) Definition: scip.c:25246 SCIP_RETCODE SCIPaddConflictRelaxedUb(SCIP *scip, SCIP_VAR *var, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedub) Definition: scip.c:22189 SCIP_RETCODE SCIPcaptureDialog(SCIP *scip, SCIP_DIALOG *dialog) Definition: scip.c:8277 SCIP_RETCODE SCIPseparateSolCutpool(SCIP *scip, SCIP_CUTPOOL *cutpool, SCIP_SOL *sol, SCIP_RESULT *result) Definition: scip.c:28600 SCIP_RETCODE SCIPgetLPBranchCands(SCIP *scip, SCIP_VAR ***lpcands, SCIP_Real **lpcandssol, SCIP_Real **lpcandsfrac, int *nlpcands, int *npriolpcands, int *nfracimplvars) Definition: scip.c:30002 SCIP_RETCODE SCIPevalExprtreeSol(SCIP *scip, SCIP_EXPRTREE *tree, SCIP_SOL *sol, SCIP_Real *val) Definition: scip.c:27940 void SCIPfreeParseVarsPolynomialData(SCIP *scip, SCIP_VAR ****monomialvars, SCIP_Real ***monomialexps, SCIP_Real **monomialcoefs, int **monomialnvars, int nmonomials) Definition: scip.c:15041 SCIP_RETCODE SCIPprintDisplayLine(SCIP *scip, FILE *file, SCIP_VERBLEVEL verblevel, SCIP_Bool endline) Definition: scip.c:37139 SCIP_Real SCIPgetVarAvgInferenceScore(SCIP *scip, SCIP_VAR *var) Definition: scip.c:21682 SCIP_RETCODE SCIPcreateRelaxSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur) Definition: scip.c:30961 SCIP_RETCODE SCIPsetEventhdlrCopy(SCIP *scip, SCIP_EVENTHDLR *eventhdlr, SCIP_DECL_EVENTCOPY((*eventcopy))) Definition: scip.c:7241 SCIP_RETCODE SCIPwriteCliqueGraph(SCIP *scip, const char *fname, SCIP_Bool writeimplications, SCIP_Bool writenodeweights) Definition: scip.c:20186 Definition: struct_clock.h:54 SCIP_RETCODE SCIPsetConshdlrExit(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSEXIT((*consexit))) Definition: scip.c:5151 SCIP_RETCODE SCIPsetConsInitial(SCIP *scip, SCIP_CONS *cons, SCIP_Bool initial) Definition: scip.c:22747 SCIP_RETCODE SCIPsetConflicthdlrExitsol(SCIP *scip, SCIP_CONFLICTHDLR *conflicthdlr, SCIP_DECL_CONFLICTEXITSOL((*conflictexitsol))) Definition: scip.c:5796 SCIP_Real SCIPcalcChildEstimate(SCIP *scip, SCIP_VAR *var, SCIP_Real targetvalue) Definition: scip.c:30544 int SCIPgetBoolarrayMaxIdx(SCIP *scip, SCIP_BOOLARRAY *boolarray) Definition: scip.c:39749 SCIP_RETCODE SCIPsetPropPriority(SCIP *scip, SCIP_PROP *prop, int priority) Definition: scip.c:6884 SCIP_RETCODE SCIPaddRealParam(SCIP *scip, 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: scip.c:3470 public methods for user interface dialog SCIP_RETCODE SCIPchgRowLhsDive(SCIP *scip, SCIP_ROW *row, SCIP_Real newlhs) Definition: scip.c:29166 SCIP_RETCODE SCIPsetConsModifiable(SCIP *scip, SCIP_CONS *cons, SCIP_Bool modifiable) Definition: scip.c:22900 SCIP_RETCODE SCIPreallocBufferSize(SCIP *scip, void **ptr, int size) Definition: scip.c:38086 SCIP_RETCODE SCIPchgCharParam(SCIP *scip, SCIP_PARAM *param, char value) Definition: scip.c:3933 Definition: nlpi_ipopt.cpp:123 SCIP_RETCODE SCIPaddVarToRow(SCIP *scip, SCIP_ROW *row, SCIP_VAR *var, SCIP_Real val) Definition: scip.c:25540 SCIP_RETCODE SCIPsetNodeselMemsavePriority(SCIP *scip, SCIP_NODESEL *nodesel, int priority) Definition: scip.c:7605 SCIP_RETCODE SCIPgetExternBranchCands(SCIP *scip, SCIP_VAR ***externcands, SCIP_Real **externcandssol, SCIP_Real **externcandsscore, int *nexterncands, int *nprioexterncands, int *nprioexternbins, int *nprioexternints, int *nprioexternimpls) Definition: scip.c:30118 SCIP_RETCODE SCIPsetPresolCopy(SCIP *scip, SCIP_PRESOL *presol, SCIP_DECL_PRESOLCOPY((*presolcopy))) Definition: scip.c:5948 int SCIPgetRealarrayMinIdx(SCIP *scip, SCIP_REALARRAY *realarray) Definition: scip.c:39452 SCIP_Real SCIPgetVarPseudocost(SCIP *scip, SCIP_VAR *var, SCIP_BRANCHDIR dir) Definition: scip.c:21244 SCIP_RETCODE SCIPgetNlRowFeasibility(SCIP *scip, SCIP_NLROW *nlrow, SCIP_Real *feasibility) Definition: scip.c:27735 SCIP_Bool SCIPisDualfeasGT(SCIP *scip, SCIP_Real val1, SCIP_Real val2) Definition: scip.c:38908 Definition: struct_event.h:185 SCIP_RETCODE SCIPaddDelayedPoolCut(SCIP *scip, SCIP_ROW *row) Definition: scip.c:28630 SCIP_Real SCIPgetAvgPseudocostCount(SCIP *scip, SCIP_BRANCHDIR dir) Definition: scip.c:35513 SCIP_RETCODE SCIPfixVar(SCIP *scip, SCIP_VAR *var, SCIP_Real fixedval, SCIP_Bool *infeasible, SCIP_Bool *fixed) Definition: scip.c:20784 SCIP_Longint SCIPgetNConflictConssApplied(SCIP *scip) Definition: scip.c:34807 SCIP_RETCODE SCIPsetProbTrans(SCIP *scip, SCIP_DECL_PROBTRANS((*probtrans))) Definition: scip.c:8551 type definitions for constraints and constraint handlers SCIP_RETCODE SCIPlockVarCons(SCIP *scip, SCIP_VAR *var, SCIP_CONS *cons, SCIP_Bool lockdown, SCIP_Bool lockup) Definition: scip.c:17642 public methods for propagators SCIP_RETCODE SCIPsetConshdlrResprop(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSRESPROP((*consresprop))) Definition: scip.c:5378 SCIP_Bool SCIPisConflictAnalysisApplicable(SCIP *scip) Definition: scip.c:22044 Definition: struct_cutpool.h:38 SCIP_Real SCIPcomputeVarLbLocal(SCIP *scip, SCIP_VAR *var) Definition: scip.c:19452 SCIP_RETCODE SCIPinferBinvarProp(SCIP *scip, SCIP_VAR *var, SCIP_Bool fixedval, SCIP_PROP *inferprop, int inferinfo, SCIP_Bool *infeasible, SCIP_Bool *tightened) Definition: scip.c:19091 SCIP_Bool SCIPisFeasFracIntegral(SCIP *scip, SCIP_Real val) Definition: scip.c:38791 SCIP_RETCODE SCIPaddSolFree(SCIP *scip, SCIP_SOL **sol, SCIP_Bool *stored) Definition: scip.c:32870 SCIP_RETCODE SCIPwriteVarName(SCIP *scip, FILE *file, SCIP_VAR *var, SCIP_Bool type) Definition: scip.c:14102 type definitions for specific NLP solver interfaces SCIP_RETCODE SCIPsetIntarrayVal(SCIP *scip, SCIP_INTARRAY *intarray, int idx, int val) Definition: scip.c:39566 SCIP_RETCODE SCIPsetBranchruleMaxbounddist(SCIP *scip, SCIP_BRANCHRULE *branchrule, SCIP_Real maxbounddist) Definition: scip.c:7934 SCIP_Bool SCIPhasNLPContinuousNonlinearity(SCIP *scip) Definition: scip.c:26098 SCIP_Real SCIPgetRealarrayVal(SCIP *scip, SCIP_REALARRAY *realarray, int idx) Definition: scip.c:39399 SCIP_RETCODE SCIPsetSolVals(SCIP *scip, SCIP_SOL *sol, int nvars, SCIP_VAR **vars, SCIP_Real *vals) Definition: scip.c:31679 SCIP_RETCODE SCIPsetConshdlrGetVars(SCIP *scip, SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSGETVARS((*consgetvars))) Definition: scip.c:5562 type definitions for displaying runtime statistics memory allocation routines Definition: struct_nlpi.h:35 SCIP_RETCODE SCIPsetRelaxSolValsSol(SCIP *scip, SCIP_SOL *sol) Definition: scip.c:16030 |