116 SCIPerrorMessage(
"unknown cut selection strategy %c, must be either 'a' or 'q'\n", cutsel);
147 for(
c = 0;
c < ncuts; ++
c )
160 if( sourcescip == targetscip )
183 for(
i = 0;
i < ncols && takecut; ++
i )
198 if( sourcescip != targetscip )
202 for(
i = 0;
i < ncols; ++
i )
208 SCIPdebugMsg(sourcescip,
"Converting cuts to constraints failed.\n");
309 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyPlugins",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
310 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyPlugins",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
313 if( passmessagehdlr )
319 copyreaders, copypricers, copyconshdlrs, copyconflicthdlrs, copypresolvers, copyrelaxators, copyseparators, copycutselectors, copypropagators,
320 copyheuristics, copyeventhdlrs, copynodeselectors, copybranchrules, copyiisfinders, copydisplays, copydialogs, copytables, copyexprhdlrs, copynlpis,
valid) );
375 assert(sourcescip != targetscip);
381 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyBenders",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
382 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyBenders",
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
388 for( p = sourcescip->
set->
nbenders - 1; p >= 0; --p )
390 copybendersvalid =
FALSE;
392 threadsafe, ©bendersvalid) );
422 assert(!original || global);
429 uselocalvarmap = (varmap ==
NULL);
430 uselocalconsmap = (consmap ==
NULL);
438 localvarmap = varmap;
440 if( uselocalconsmap )
446 localconsmap = consmap;
480 if( uselocalconsmap )
544 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyProb",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
545 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyProb",
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE) );
596 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrigProb",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
597 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrigProb",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
631 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPenableConsCompression",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
670 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPisConsCompressionEnabled",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
739 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPgetVarCopy",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
740 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPgetVarCopy",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
742 uselocalvarmap = (varmap ==
NULL);
743 uselocalconsmap = (consmap ==
NULL);
747 if( !uselocalvarmap )
750 assert(*targetvar ==
NULL || (*targetvar)->scip == targetscip);
751 if( *targetvar !=
NULL )
782 localvarmap = varmap;
784 if( uselocalconsmap )
790 localconsmap = consmap;
800 sourcescip, sourcevar, localvarmap, localconsmap, global) );
819 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourceaggrvar, &targetaggrvar, localvarmap, localconsmap, global, success) );
824 sourcescip, sourcevar, localvarmap, localconsmap, global) );
830 constant,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
864 for(
i = 0;
i < naggrvars; ++
i )
866 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourceaggrvars[
i], &targetaggrvars[
i], localvarmap, localconsmap, global, success) );
872 sourcescip, sourcevar, localvarmap, localconsmap, global) );
878 -constant,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
898 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcenegatedvar, &targetnegatedvar, localvarmap, localconsmap, global, success) );
910 if( uselocalconsmap )
928 assert((*targetvar)->scip == targetscip);
937 if( uselocalconsmap )
971 int nrelaxonlybinvars = 0;
972 int nrelaxonlyintvars = 0;
973 int nrelaxonlyimplvars = 0;
974 int nrelaxonlycontvars = 0;
994 uselocalvarmap = (varmap ==
NULL);
995 uselocalconsmap = (consmap ==
NULL);
1003 localvarmap = varmap;
1005 if( uselocalconsmap )
1011 localconsmap = consmap;
1014 for(
i = 0;
i < nsourcevars; ++
i )
1023 ++nrelaxonlyimplvars;
1029 ++nrelaxonlybinvars;
1032 ++nrelaxonlyintvars;
1035 ++nrelaxonlycontvars;
1047 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcevars[
i], &targetvar, localvarmap, localconsmap, global, &success) );
1058 for(
i = 0;
i < nfixedvars; ++
i )
1072 infeasible = fixed =
FALSE;
1096 int nfixedbinimplvars;
1097 int nfixedintimplvars;
1098 int nfixedcontimplvars;
1103 SCIPvarsCountTypes(sourcefixedvars, nsourcefixedvars, &nfixedbinvars, &nfixedintvars,
1104 &nfixedbinimplvars, &nfixedintimplvars, &nfixedcontimplvars, &nfixedcontvars);
1105 nfixedimplvars = nfixedbinimplvars + nfixedintimplvars + nfixedcontimplvars;
1106 assert(nsourcefixedvars == nfixedbinvars + nfixedintvars + nfixedimplvars + nfixedcontvars);
1117 if( uselocalvarmap )
1123 if( uselocalconsmap )
1184 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1185 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyVars",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1187 SCIP_CALL(
copyVars(sourcescip, targetscip, varmap, consmap, fixedvars, fixedvals, nfixedvars,
FALSE, global) );
1240 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrigVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1241 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrigVars",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1269 assert(sourcescip != targetscip);
1285 if( sourcevars[
i] ==
NULL || targetvars[
i] ==
NULL )
1294 switch( sourcevarstatus )
1327 assert(sourcescip != targetscip);
1341 if( targetnlpi !=
NULL )
1381 if( subvars[
i] !=
NULL )
1475 for(
i = 0;
i < nsubsols; ++
i )
1478 if( newsol ==
NULL )
1481 if( solindex !=
NULL )
1522 if( newsol !=
NULL )
1614 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPgetConsCopy",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1615 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPgetConsCopy",
FALSE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE) );
1617 uselocalvarmap = (varmap ==
NULL);
1618 uselocalconsmap = (consmap ==
NULL);
1621 if( uselocalvarmap )
1627 localvarmap = varmap;
1630 if( uselocalconsmap )
1638 localconsmap = consmap;
1642 if( *targetcons !=
NULL )
1651 SCIP_CALL(
SCIPconsCopy(targetcons, targetscip->
set, name, sourcescip, sourceconshdlr, sourcecons, localvarmap, localconsmap,
1652 initial,
separate, enforce, check,
propagate, local, modifiable, dynamic, removable, stickingatnode, global,
valid) );
1655 if( *targetcons !=
NULL && !uselocalconsmap )
1663 if( uselocalvarmap )
1668 if( uselocalconsmap )
1734 int nsourceconshdlrs;
1742 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyConss",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1743 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyConss",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1746 uselocalvarmap = (varmap ==
NULL);
1747 uselocalconsmap = (consmap ==
NULL);
1749 if( uselocalvarmap )
1755 localvarmap = varmap;
1757 if( uselocalconsmap )
1763 localconsmap = consmap;
1767 assert(nsourceconshdlrs == 0 || sourceconshdlrs !=
NULL);
1772 for(
i = 0;
i < nsourceconshdlrs; ++
i )
1791#ifdef SCIP_DISABLED_CODE
1801 assert(nsourceconss == 0 || sourceconss !=
NULL);
1803 if( nsourceconss > 0 )
1809 for(
c = 0;
c < nsourceconss; ++
c )
1833 if( targetcons !=
NULL )
1835 if( !enablepricing )
1860 SCIPdebugMsg(sourcescip,
"Constraint %s not copied, copy is %svalid\n",
1866 if( uselocalvarmap )
1872 if( uselocalconsmap )
1943 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrigConss",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1944 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrigConss",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1947 uselocalvarmap = (varmap ==
NULL);
1948 uselocalconsmap = (consmap ==
NULL);
1950 if( uselocalvarmap )
1956 localvarmap = varmap;
1958 if( uselocalconsmap )
1964 localconsmap = consmap;
1971 SCIPdebugMsg(sourcescip,
"Attempting to copy %d original constraints\n", nsourceconss);
1974 for(
c = 0;
c < nsourceconss; ++
c )
1999 if( !enablepricing )
2015 if( uselocalvarmap )
2021 if( uselocalconsmap )
2065 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPconvertCutsToConss",
FALSE,
TRUE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE) );
2126 int nlocalcutsadded;
2132 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyCuts",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
2133 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyCuts",
FALSE,
TRUE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE) );
2135 if ( ncutsadded !=
NULL )
2137 nlocalcutsadded = 0;
2145 SCIPdebugMsg(sourcescip,
"No linear constraint handler available. Cannot convert cuts.\n");
2153 SCIP_CALL(
copyCuts(sourcescip, targetscip, cuts, ncuts, varmap, consmap, global, &nlocalcutsadded) );
2155 SCIPdebugMsg(sourcescip,
"Converted %d active cuts to constraints.\n", nlocalcutsadded);
2161 SCIP_CALL(
copyCuts(sourcescip, targetscip, cuts, ncuts, varmap, consmap, global, &nlocalcutsadded) );
2163 if( ncutsadded !=
NULL )
2164 *ncutsadded = nlocalcutsadded;
2166 SCIPdebugMsg(sourcescip,
"Converted %d active cuts to constraints.\n", nlocalcutsadded);
2224 int sourceconfssize;
2232 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyConflicts",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2233 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyConflicts",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
2236 uselocalvarmap = (varmap ==
NULL);
2237 uselocalconsmap = (consmap ==
NULL);
2239 if( uselocalvarmap )
2245 localvarmap = varmap;
2247 if( uselocalconsmap )
2253 localconsmap = consmap;
2263 assert(nsourceconfs <= sourceconfssize);
2266 for(
c = 0;
c < nsourceconfs; ++
c )
2296 if( !enablepricing )
2312 if( uselocalvarmap )
2318 if( uselocalconsmap )
2387 assert( sourcescip != targetscip );
2391 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyImplicationsCliques",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
2392 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyImplicationsCliques",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
2394 if ( ncopied !=
NULL )
2396 if ( nbdchgs !=
NULL )
2403 if ( nbinvars == 0 )
2417 for (
c = 0;
c < ncliques; ++
c)
2430 for (j = 0; j < cliquesize; ++j)
2432 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, cliquevars[j], &targetclique[j], varmap, consmap, global, &success) );
2443 infeasible, &nboundchg) );
2450 if ( ncopied !=
NULL )
2452 if ( nbdchgs !=
NULL )
2453 *nbdchgs += nboundchg;
2459 for (j = 0; j < nbinvars; ++j)
2465 sourcevar = sourcevars[j];
2466 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcevar, &targetvar, varmap, consmap, global, &success) );
2474 for (d = 0; d <= 1; ++d)
2491 for (l = 0; l < nimpls; ++l)
2496 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, implvars[l], &implvar, varmap, consmap, global, &success) );
2506 if ( ncopied !=
NULL )
2508 if ( nbdchgs !=
NULL )
2509 *nbdchgs += nboundchg;
2558 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyParamSettings",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2559 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyParamSettings",
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
2595 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetSubscipDepth",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2597 return scip->stat->subscipdepth;
2617 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPsetSubscipDepth",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
2620 scip->stat->subscipdepth = newdepth;
2678 assert(global || !original);
2687 SCIP_CALL(
SCIPcopyPlugins(sourcescip, targetscip,
TRUE, enablepricing,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
2688 TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE, passmessagehdlr, &localvalid) );
2694 SCIPdebugMsg(sourcescip,
"Copying plugins was%s valid.\n", localvalid ?
"" :
" not");
2696 uselocalvarmap = (varmap ==
NULL);
2697 uselocalconsmap = (consmap ==
NULL);
2699 if( uselocalvarmap )
2705 localvarmap = varmap;
2707 if( uselocalconsmap )
2713 localconsmap = consmap;
2746 SCIP_CALL(
copyVars(sourcescip, targetscip, localvarmap, localconsmap, fixedvars, fixedvals, nfixedvars, original, global) );
2749 if( useconscompression && (nfixedvars > 0 || !global) )
2753 SCIPdebugMsg(sourcescip,
"SCIPenableConsCompression() with nxfixedvars=%d and global=%u invalidates copy.\n",
2754 nfixedvars, global);
2767 SCIP_CALL(
SCIPcopyConss(sourcescip, targetscip, localvarmap, localconsmap, global, enablepricing, &consscopyvalid) );
2770 SCIPdebugMsg(sourcescip,
"Copying%s constraints was%s valid.\n",
2771 original ?
" (original)" :
"", consscopyvalid ?
"" :
" not");
2773 localvalid = localvalid && consscopyvalid;
2778 SCIPdebugMsg(sourcescip,
"Copying Benders' decomposition plugins was%s valid.\n", benderscopyvalid ?
"" :
" not");
2780 localvalid = localvalid && benderscopyvalid;
2782 if( uselocalvarmap )
2788 if( uselocalconsmap )
2802 if( copytime < sourcescip->stat->mincopytime )
2815 *
valid = localvalid;
2895 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopy",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2896 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopy",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
2899 SCIP_CALL(
doCopy(sourcescip, targetscip, varmap, consmap, suffix, fixedvars, fixedvals, nfixedvars,
2900 useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr,
valid) );
2991 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyConsCompression",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2992 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyConsCompression",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
2995 SCIP_CALL(
doCopy(sourcescip, targetscip, varmap, consmap, suffix, fixedvars, fixedvals, nfixedvars,
2996 useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr,
valid) );
3074 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrig",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
3075 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrig",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
3077 SCIP_CALL(
doCopy(sourcescip, targetscip, varmap, consmap, suffix, fixedvars, fixedvals, nfixedvars,
3078 useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr,
valid) );
3163 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrigConsCompression",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
3164 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrigConsCompression",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
3167 SCIP_CALL(
doCopy(sourcescip, targetscip, varmap, consmap, suffix, fixedvars, fixedvals, nfixedvars,
3168 useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr,
valid) );
3208 timelimit =
MAX(0.0, timelimit);
3268 *success = timelimit > 0.0;
3304 if( timelimit < 0.0 )
3306 if( memorylimit < 0.0 )
void SCIPclockStop(SCIP_CLOCK *clck, SCIP_SET *set)
void SCIPclockStart(SCIP_CLOCK *clck, SCIP_SET *set)
SCIP_Real SCIPclockGetTime(SCIP_CLOCK *clck)
internal methods for clocks and timing issues
SCIP_RETCODE SCIPconflictstoreGetConflicts(SCIP_CONFLICTSTORE *conflictstore, SCIP_CONS **conflicts, int conflictsize, int *nconflicts)
int SCIPconflictstoreGetNConflictsInStore(SCIP_CONFLICTSTORE *conflictstore)
SCIP_RETCODE SCIPconflictstoreCreate(SCIP_CONFLICTSTORE **conflictstore, SCIP_SET *set)
SCIP_RETCODE SCIPconflictstoreAddConflict(SCIP_CONFLICTSTORE *conflictstore, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_PROB *transprob, SCIP_REOPT *reopt, SCIP_CONS *cons, SCIP_CONFTYPE conftype, SCIP_Bool cutoffinvolved, SCIP_Real primalbound)
internal methods for storing conflicts
SCIP_RETCODE SCIPconsCopy(SCIP_CONS **cons, SCIP_SET *set, const char *name, SCIP *sourcescip, SCIP_CONSHDLR *sourceconshdlr, SCIP_CONS *sourcecons, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, 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 *valid)
void SCIPconsSetModifiable(SCIP_CONS *cons, SCIP_Bool modifiable)
internal methods for constraints and constraint handlers
Constraint handler for linear constraints in their most general form, .
SCIP_RETCODE SCIPdecompstoreCreate(SCIP_DECOMPSTORE **decompstore, BMS_BLKMEM *blkmem, int nslots)
internal methods for decompositions and the decomposition store
#define SCIP_DECOMPSTORE_CAPA
#define SCIPcheckStage(scip, method, init, problem, transforming, transformed, initpresolve, presolving, exitpresolve, presolved, initsolve, solving, solved, exitsolve, freetrans, freescip)
#define SCIPdebugSolDataCreate(debugsoldata)
#define SCIP_CALL_ABORT(x)
SCIP_RETCODE SCIPaddCoefLinear(SCIP *scip, SCIP_CONS *cons, SCIP_VAR *var, SCIP_Real val)
SCIP_RETCODE SCIPcreateConsLinear(SCIP *scip, SCIP_CONS **cons, const char *name, int nvars, SCIP_VAR **vars, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, 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_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 copycutselectors, SCIP_Bool copypropagators, SCIP_Bool copyheuristics, SCIP_Bool copyeventhdlrs, SCIP_Bool copynodeselectors, SCIP_Bool copybranchrules, SCIP_Bool copyiisfinders, SCIP_Bool copydisplays, SCIP_Bool copydialogs, SCIP_Bool copytables, SCIP_Bool copyexprhdlrs, SCIP_Bool copynlpis, SCIP_Bool passmessagehdlr, SCIP_Bool *valid)
SCIP_RETCODE SCIPcopyImplicationsCliques(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, SCIP_Bool *infeasible, int *nbdchgs, int *ncopied)
SCIP_RETCODE SCIPcopyOrig(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *suffix, SCIP_Bool enablepricing, SCIP_Bool threadsafe, SCIP_Bool passmessagehdlr, SCIP_Bool *valid)
void SCIPmergeNLPIStatistics(SCIP *sourcescip, SCIP *targetscip, SCIP_Bool reset)
SCIP_RETCODE SCIPcopyBenders(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_Bool threadsafe, SCIP_Bool *valid)
void SCIPsetSubscipDepth(SCIP *scip, int newdepth)
SCIP_RETCODE SCIPtranslateSubSols(SCIP *scip, SCIP *subscip, SCIP_HEUR *heur, SCIP_VAR **subvars, SCIP_Bool *success, int *solindex)
SCIP_RETCODE SCIPcopyOrigVars(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int nfixedvars)
SCIP_RETCODE SCIPcopyVars(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int nfixedvars, SCIP_Bool global)
SCIP_RETCODE SCIPsetCommonSubscipParams(SCIP *sourcescip, SCIP *subscip, SCIP_Longint nsubnodes, SCIP_Longint nstallnodes, int bestsollimit)
SCIP_RETCODE SCIPcopy(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *suffix, SCIP_Bool global, SCIP_Bool enablepricing, SCIP_Bool threadsafe, SCIP_Bool passmessagehdlr, SCIP_Bool *valid)
SCIP_RETCODE SCIPcopyOrigConsCompression(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *suffix, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int nfixedvars, SCIP_Bool enablepricing, SCIP_Bool threadsafe, SCIP_Bool passmessagehdlr, SCIP_Bool *valid)
SCIP_RETCODE SCIPcopyConsCompression(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *suffix, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int nfixedvars, SCIP_Bool global, SCIP_Bool enablepricing, SCIP_Bool threadsafe, SCIP_Bool passmessagehdlr, SCIP_Bool *valid)
SCIP_RETCODE SCIPcopyOrigConss(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool enablepricing, SCIP_Bool *valid)
SCIP_RETCODE SCIPcheckCopyLimits(SCIP *sourcescip, SCIP_Bool *success)
int SCIPgetSubscipDepth(SCIP *scip)
SCIP_RETCODE SCIPmergeVariableStatistics(SCIP *sourcescip, SCIP *targetscip, SCIP_VAR **sourcevars, SCIP_VAR **targetvars, int nvars)
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 *valid)
SCIP_RETCODE SCIPcopyCuts(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, int *ncutsadded)
SCIP_RETCODE SCIPconvertCutsToConss(SCIP *scip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, int *ncutsadded)
SCIP_RETCODE SCIPenableConsCompression(SCIP *scip)
SCIP_RETCODE SCIPcopyProb(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, const char *name)
SCIP_RETCODE SCIPtranslateSubSol(SCIP *scip, SCIP *subscip, SCIP_SOL *subsol, SCIP_HEUR *heur, SCIP_VAR **subvars, SCIP_SOL **newsol)
SCIP_Bool SCIPisConsCompressionEnabled(SCIP *scip)
SCIP_RETCODE SCIPcopyConss(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, SCIP_Bool enablepricing, SCIP_Bool *valid)
SCIP_RETCODE SCIPcopyParamSettings(SCIP *sourcescip, SCIP *targetscip)
SCIP_RETCODE SCIPcopyLimits(SCIP *sourcescip, SCIP *targetscip)
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)
SCIP_RETCODE SCIPcopyConflicts(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, SCIP_Bool enablepricing, SCIP_Bool *valid)
SCIP_RETCODE SCIPcopyOrigProb(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *name)
SCIP_Bool SCIPisTransformed(SCIP *scip)
SCIP_STAGE SCIPgetStage(SCIP *scip)
SCIP_RETCODE SCIPaddVar(SCIP *scip, SCIP_VAR *var)
int SCIPgetNIntVars(SCIP *scip)
SCIP_RETCODE SCIPgetOrigVarsData(SCIP *scip, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars)
int SCIPgetNImplVars(SCIP *scip)
const char * SCIPgetProbName(SCIP *scip)
int SCIPgetNContVars(SCIP *scip)
SCIP_Real SCIPgetOrigObjscale(SCIP *scip)
SCIP_RETCODE SCIPgetVarsData(SCIP *scip, SCIP_VAR ***vars, int *nvars, int *nbinvars, int *nintvars, int *nimplvars, int *ncontvars)
int SCIPgetNOrigConss(SCIP *scip)
SCIP_Real SCIPgetOrigObjoffset(SCIP *scip)
int SCIPgetNVars(SCIP *scip)
SCIP_RETCODE SCIPaddCons(SCIP *scip, SCIP_CONS *cons)
int SCIPgetNConss(SCIP *scip)
SCIP_RETCODE SCIPfreeProb(SCIP *scip)
SCIP_RETCODE SCIPsetObjsense(SCIP *scip, SCIP_OBJSENSE objsense)
SCIP_RETCODE SCIPaddOrigObjoffset(SCIP *scip, SCIP_Real addval)
SCIP_CONS ** SCIPgetOrigConss(SCIP *scip)
SCIP_OBJSENSE SCIPgetObjsense(SCIP *scip)
int SCIPgetNFixedVars(SCIP *scip)
int SCIPgetNBinVars(SCIP *scip)
SCIP_VAR ** SCIPgetFixedVars(SCIP *scip)
void SCIPhashmapFree(SCIP_HASHMAP **hashmap)
void * SCIPhashmapGetImage(SCIP_HASHMAP *hashmap, void *origin)
SCIP_RETCODE SCIPhashmapInsert(SCIP_HASHMAP *hashmap, void *origin, void *image)
SCIP_RETCODE SCIPhashmapCreate(SCIP_HASHMAP **hashmap, BMS_BLKMEM *blkmem, int mapsize)
SCIP_RETCODE SCIPsetMessagehdlr(SCIP *scip, SCIP_MESSAGEHDLR *messagehdlr)
SCIP_MESSAGEHDLR * SCIPgetMessagehdlr(SCIP *scip)
void SCIPsetMessagehdlrQuiet(SCIP *scip, SCIP_Bool quiet)
SCIP_RETCODE SCIPgetBoolParam(SCIP *scip, const char *name, SCIP_Bool *value)
SCIP_Bool SCIPisParamFixed(SCIP *scip, const char *name)
SCIP_PARAM * SCIPgetParam(SCIP *scip, const char *name)
SCIP_RETCODE SCIPsetLongintParam(SCIP *scip, const char *name, SCIP_Longint value)
SCIP_RETCODE SCIPsetIntParam(SCIP *scip, const char *name, int value)
SCIP_RETCODE SCIPsetSubscipsOff(SCIP *scip, SCIP_Bool quiet)
SCIP_RETCODE SCIPgetRealParam(SCIP *scip, const char *name, SCIP_Real *value)
SCIP_RETCODE SCIPsetPresolving(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
SCIP_RETCODE SCIPsetCharParam(SCIP *scip, const char *name, char value)
SCIP_RETCODE SCIPsetBoolParam(SCIP *scip, const char *name, SCIP_Bool value)
SCIP_RETCODE SCIPsetRealParam(SCIP *scip, const char *name, SCIP_Real value)
SCIP_RETCODE SCIPsetSeparating(SCIP *scip, SCIP_PARAMSETTING paramsetting, SCIP_Bool quiet)
SCIP_BRANCHRULE * SCIPfindBranchrule(SCIP *scip, const char *name)
SCIP_VAR * SCIPcolGetVar(SCIP_COL *col)
int SCIPconshdlrGetNCheckConss(SCIP_CONSHDLR *conshdlr)
SCIP_CONS ** SCIPconshdlrGetCheckConss(SCIP_CONSHDLR *conshdlr)
int SCIPgetNConshdlrs(SCIP *scip)
const char * SCIPconshdlrGetName(SCIP_CONSHDLR *conshdlr)
SCIP_CONSHDLR * SCIPfindConshdlr(SCIP *scip, const char *name)
int SCIPconshdlrGetNActiveConss(SCIP_CONSHDLR *conshdlr)
SCIP_CONS ** SCIPconshdlrGetConss(SCIP_CONSHDLR *conshdlr)
SCIP_CONSHDLR ** SCIPgetConshdlrs(SCIP *scip)
SCIP_Bool SCIPconsIsConflict(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsDynamic(SCIP_CONS *cons)
SCIP_CONSHDLR * SCIPconsGetHdlr(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsInitial(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsOriginal(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsChecked(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsDeleted(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsEnforced(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsActive(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsPropagated(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsLocal(SCIP_CONS *cons)
const char * SCIPconsGetName(SCIP_CONS *cons)
SCIP_Bool SCIPconsIsModifiable(SCIP_CONS *cons)
SCIP_RETCODE SCIPreleaseCons(SCIP *scip, SCIP_CONS **cons)
SCIP_Bool SCIPconsIsSeparated(SCIP_CONS *cons)
SCIP_RETCODE SCIPcaptureCons(SCIP *scip, SCIP_CONS *cons)
SCIP_Bool SCIPconsIsRemovable(SCIP_CONS *cons)
SCIP_CUT ** SCIPgetDelayedPoolCuts(SCIP *scip)
SCIP_Real SCIPcutGetLPActivityQuot(SCIP_CUT *cut)
int SCIPgetNPoolCuts(SCIP *scip)
SCIP_ROW * SCIPcutGetRow(SCIP_CUT *cut)
SCIP_CUT ** SCIPgetPoolCuts(SCIP *scip)
int SCIPgetNDelayedPoolCuts(SCIP *scip)
int SCIPcutGetAge(SCIP_CUT *cut)
SCIP_Bool SCIPisExact(SCIP *scip)
SCIP_RETCODE SCIPenableExactSolving(SCIP *scip, SCIP_Bool enable)
SCIP_Longint SCIPgetMemExternEstim(SCIP *scip)
SCIP_Longint SCIPgetMemUsed(SCIP *scip)
BMS_BLKMEM * SCIPblkmem(SCIP *scip)
#define SCIPallocBufferArray(scip, ptr, num)
#define SCIPfreeBufferArray(scip, ptr)
void SCIPnlpiMergeStatistics(SCIP_NLPI *targetnlpi, SCIP_NLPI *sourcenlpi, SCIP_Bool reset)
const char * SCIPnlpiGetName(SCIP_NLPI *nlpi)
SCIP_NODESEL * SCIPfindNodesel(SCIP *scip, const char *name)
int SCIPgetNActivePricers(SCIP *scip)
SCIP_Real SCIProwGetLhs(SCIP_ROW *row)
SCIP_Bool SCIProwIsModifiable(SCIP_ROW *row)
int SCIProwGetNNonz(SCIP_ROW *row)
SCIP_COL ** SCIProwGetCols(SCIP_ROW *row)
SCIP_Real SCIProwGetRhs(SCIP_ROW *row)
SCIP_Bool SCIProwIsLocal(SCIP_ROW *row)
const char * SCIProwGetName(SCIP_ROW *row)
SCIP_Real SCIProwGetConstant(SCIP_ROW *row)
SCIP_Bool SCIProwIsInLP(SCIP_ROW *row)
SCIP_Real * SCIProwGetVals(SCIP_ROW *row)
SCIP_RETCODE SCIPaddSolFree(SCIP *scip, SCIP_SOL **sol, SCIP_Bool *stored)
SCIP_RETCODE SCIPclearSol(SCIP *scip, SCIP_SOL *sol)
int SCIPgetNSols(SCIP *scip)
int SCIPsolGetIndex(SCIP_SOL *sol)
SCIP_RETCODE SCIPsetSolVals(SCIP *scip, SCIP_SOL *sol, int nvars, SCIP_VAR **vars, SCIP_Real *vals)
SCIP_SOL ** SCIPgetSols(SCIP *scip)
SCIP_RETCODE SCIPcheckSol(SCIP *scip, SCIP_SOL *sol, SCIP_Bool printreason, SCIP_Bool completely, SCIP_Bool checkbounds, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool *feasible)
SCIP_Real SCIPgetSolOrigObj(SCIP *scip, SCIP_SOL *sol)
SCIP_Real SCIPgetSolVal(SCIP *scip, SCIP_SOL *sol, SCIP_VAR *var)
SCIP_Real SCIPgetSolTransObj(SCIP *scip, SCIP_SOL *sol)
SCIP_Bool SCIPisInRestart(SCIP *scip)
int SCIPgetNRuns(SCIP *scip)
SCIP_Real SCIPgetSolvingTime(SCIP *scip)
SCIP_Real SCIPinfinity(SCIP *scip)
SCIP_Bool SCIPisInfinity(SCIP *scip, SCIP_Real val)
SCIP_Bool SCIPisNegative(SCIP *scip, SCIP_Real val)
SCIP_Real SCIPvarGetMultaggrConstant(SCIP_VAR *var)
SCIP_RETCODE SCIPaddClique(SCIP *scip, SCIP_VAR **vars, SCIP_Bool *values, int nvars, SCIP_Bool isequation, SCIP_Bool *infeasible, int *nbdchgs)
int SCIPvarGetNImpls(SCIP_VAR *var, SCIP_Bool varfixing)
SCIP_VARSTATUS SCIPvarGetStatus(SCIP_VAR *var)
SCIP_Real SCIPvarGetAggrConstant(SCIP_VAR *var)
SCIP_Bool SCIPvarIsImpliedIntegral(SCIP_VAR *var)
SCIP_Real SCIPvarGetUbLocal(SCIP_VAR *var)
SCIP_Real SCIPvarGetAggrScalar(SCIP_VAR *var)
SCIP_CLIQUE ** SCIPgetCliques(SCIP *scip)
SCIP_VARTYPE SCIPvarGetType(SCIP_VAR *var)
SCIP_VAR ** SCIPvarGetImplVars(SCIP_VAR *var, SCIP_Bool varfixing)
const char * SCIPvarGetName(SCIP_VAR *var)
SCIP_RETCODE SCIPreleaseVar(SCIP *scip, SCIP_VAR **var)
SCIP_Real * SCIPvarGetImplBounds(SCIP_VAR *var, SCIP_Bool varfixing)
SCIP_RETCODE SCIPflattenVarAggregationGraph(SCIP *scip, SCIP_VAR *var)
SCIP_RETCODE SCIPgetNegatedVar(SCIP *scip, SCIP_VAR *var, SCIP_VAR **negvar)
SCIP_VAR ** SCIPvarGetMultaggrVars(SCIP_VAR *var)
int SCIPvarGetMultaggrNVars(SCIP_VAR *var)
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)
SCIP_Real SCIPvarGetLbLocal(SCIP_VAR *var)
SCIP_Bool SCIPvarIsRelaxationOnly(SCIP_VAR *var)
SCIP_VAR * SCIPvarGetNegationVar(SCIP_VAR *var)
int SCIPgetNCliques(SCIP *scip)
SCIP_RETCODE SCIPfixVar(SCIP *scip, SCIP_VAR *var, SCIP_Real fixedval, SCIP_Bool *infeasible, SCIP_Bool *fixed)
void SCIPvarsCountTypes(SCIP_VAR **vars, int nvars, int *nbinvars, int *nintvars, int *nbinimplvars, int *nintimplvars, int *ncontimplvars, int *ncontvars)
SCIP_VAR * SCIPvarGetTransVar(SCIP_VAR *var)
SCIP_BOUNDTYPE * SCIPvarGetImplTypes(SCIP_VAR *var, SCIP_Bool varfixing)
SCIP_Real * SCIPvarGetMultaggrScalars(SCIP_VAR *var)
SCIP_VAR * SCIPvarGetAggrVar(SCIP_VAR *var)
int SCIPsnprintf(char *t, int len, const char *s,...)
SCIPfreeSol(scip, &heurdata->sol))
SCIPcreateSol(scip, &heurdata->sol, heur))
assert(minobj< SCIPgetCutoffbound(scip))
static SCIP_Bool propagate
SCIP_VAR ** SCIPcliqueGetVars(SCIP_CLIQUE *clique)
int SCIPcliqueGetNVars(SCIP_CLIQUE *clique)
SCIP_Bool * SCIPcliqueGetValues(SCIP_CLIQUE *clique)
SCIP_Bool SCIPcliqueIsEquation(SCIP_CLIQUE *clique)
memory allocation routines
SCIP_Bool SCIPmessagehdlrIsQuiet(SCIP_MESSAGEHDLR *messagehdlr)
SCIP_RETCODE SCIPprimalCreate(SCIP_PRIMAL **primal)
internal methods for collecting primal CIP solutions and primal informations
void SCIPprobEnableConsCompression(SCIP_PROB *prob)
SCIP_RETCODE SCIPprobCopy(SCIP_PROB **prob, BMS_BLKMEM *blkmem, SCIP_SET *set, const char *name, SCIP *sourcescip, SCIP_PROB *sourceprob, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool original, SCIP_Bool global)
SCIP_Bool SCIPprobIsConsCompressionEnabled(SCIP_PROB *prob)
internal methods for storing and manipulating the main problem
public methods for managing constraints
public methods for storing cuts in a cut pool
public methods for implications, variable bounds, and cliques
public methods for LP management
public methods for message output
#define SCIPdebugPrintCons(x, y, z)
public data structures and miscellaneous methods
public methods for NLP solver interfaces
public methods for primal CIP solutions
public methods for problem variables
public methods for branching rule plugins and branching
public methods for constraint handler plugins and constraints
static SCIP_Bool takeCut(SCIP *scip, SCIP_CUT *cut, char cutsel)
static SCIP_RETCODE doCopy(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, const char *suffix, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int nfixedvars, SCIP_Bool useconscompression, SCIP_Bool global, SCIP_Bool original, SCIP_Bool enablepricing, SCIP_Bool threadsafe, SCIP_Bool passmessagehdlr, SCIP_Bool *valid)
static SCIP_RETCODE copyCuts(SCIP *sourcescip, SCIP *targetscip, SCIP_CUT **cuts, int ncuts, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global, int *ncutsadded)
static SCIP_RETCODE translateSubSol(SCIP *scip, SCIP *subscip, SCIP_SOL *subsol, SCIP_VAR **subvars, SCIP_Real *solvals)
static SCIP_RETCODE copyVars(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_VAR **fixedvars, SCIP_Real *fixedvals, int nfixedvars, SCIP_Bool original, SCIP_Bool global)
static SCIP_RETCODE getCopyTimelimit(SCIP *sourcescip, SCIP_Real *timelimit)
static SCIP_RETCODE copyProb(SCIP *sourcescip, SCIP *targetscip, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool original, SCIP_Bool global, const char *name)
static SCIP_RETCODE getCopyMemlimit(SCIP *sourcescip, SCIP_Real *memorylimit)
static SCIP_RETCODE copySofttimelimit(SCIP *sourcescip, SCIP *targetscip)
public methods for problem copies
public methods for cuts and aggregation rows
public methods for exact solving
public methods for memory management
public methods for message handling
public methods for node selector plugins
public methods for numerical tolerances
public methods for SCIP parameter handling
public methods for variable pricer plugins
public methods for global and local (sub)problems
public methods for solutions
public methods for querying solving statistics
public methods for timing
public methods for SCIP variables
static SCIP_RETCODE separate(SCIP *scip, SCIP_SEPA *sepa, SCIP_SOL *sol, SCIP_RESULT *result)
Main separation function.
SCIP_Bool SCIPsetIsEQ(SCIP_SET *set, SCIP_Real val1, SCIP_Real val2)
SCIP_NLPI * SCIPsetFindNlpi(SCIP_SET *set, const char *name)
SCIP_RETCODE SCIPsetCopyPlugins(SCIP_SET *sourceset, SCIP_SET *targetset, SCIP_Bool copyreaders, SCIP_Bool copypricers, SCIP_Bool copyconshdlrs, SCIP_Bool copyconflicthdlrs, SCIP_Bool copypresolvers, SCIP_Bool copyrelaxators, SCIP_Bool copyseparators, SCIP_Bool copycutselectors, SCIP_Bool copypropagators, SCIP_Bool copyheuristics, SCIP_Bool copyeventhdlrs, SCIP_Bool copynodeselectors, SCIP_Bool copybranchrules, SCIP_Bool copyiisfinders, SCIP_Bool copydisplays, SCIP_Bool copydialogs, SCIP_Bool copytables, SCIP_Bool copyexprhdlrs, SCIP_Bool copynlpis, SCIP_Bool *allvalid)
SCIP_RETCODE SCIPsetCopyParams(SCIP_SET *sourceset, SCIP_SET *targetset, SCIP_MESSAGEHDLR *messagehdlr)
internal methods for global SCIP settings
SCIP_RETCODE SCIPbendersCopyInclude(SCIP_BENDERS *benders, SCIP_SET *sourceset, SCIP_SET *targetset, SCIP_HASHMAP *varmap, SCIP_Bool threadsafe, SCIP_Bool *valid)
internal methods for Benders' decomposition
SCIP_RETCODE SCIPstatCreate(SCIP_STAT **stat, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_PROB *transprob, SCIP_PROB *origprob, SCIP_MESSAGEHDLR *messagehdlr)
internal methods for problem statistics
SCIP_DEBUGSOLDATA * debugsoldata
SCIP_Bool misc_avoidmemout
SCIP_Bool history_allowmerge
SCIP_CONCURRENT * concurrent
SCIP_SYNCSTORE * syncstore
SCIP_MESSAGEHDLR * messagehdlr
SCIP_CONFLICTSTORE * conflictstore
SCIP_DECOMPSTORE * decompstore
datastructures for block memory pools and memory buffers
SCIP main data structure.
datastructures for global SCIP settings
datastructures for problem statistics
datastructures for problem variables
SCIP_RETCODE SCIPsyncstoreRelease(SCIP_SYNCSTORE **syncstore)
SCIP_RETCODE SCIPsyncstoreCapture(SCIP_SYNCSTORE *syncstore)
the function declarations for the synchronization store
struct SCIP_Cons SCIP_CONS
struct SCIP_Conshdlr SCIP_CONSHDLR
struct SCIP_Heur SCIP_HEUR
struct SCIP_Clique SCIP_CLIQUE
enum SCIP_BoundType SCIP_BOUNDTYPE
struct SCIP_HashMap SCIP_HASHMAP
struct SCIP_Nlpi SCIP_NLPI
struct SCIP_Prob SCIP_PROB
enum SCIP_Retcode SCIP_RETCODE
@ SCIP_VARTYPE_CONTINUOUS
@ SCIP_VARSTATUS_ORIGINAL
@ SCIP_VARSTATUS_MULTAGGR
@ SCIP_VARSTATUS_AGGREGATED
enum SCIP_Varstatus SCIP_VARSTATUS
SCIP_RETCODE SCIPvarCopy(SCIP_VAR **var, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP *sourcescip, SCIP_VAR *sourcevar, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool global)
void SCIPvarMergeHistories(SCIP_VAR *targetvar, SCIP_VAR *othervar, SCIP_STAT *stat)
SCIP_RETCODE SCIPvarCopyExactData(BMS_BLKMEM *blkmem, SCIP_VAR *targetvar, SCIP_VAR *sourcevar, SCIP_Bool negateobj)
internal methods for problem variables