115 SCIPerrorMessage(
"unknown cut selection strategy %c, must be either 'a' or 'q'\n", cutsel);
146 for(
c = 0;
c < ncuts; ++
c )
159 if( sourcescip == targetscip )
182 for(
i = 0;
i < ncols && takecut; ++
i )
197 if( sourcescip != targetscip )
201 for(
i = 0;
i < ncols; ++
i )
207 SCIPdebugMsg(sourcescip,
"Converting cuts to constraints failed.\n");
278 SCIP_Bool copyreaders,
279 SCIP_Bool copypricers,
280 SCIP_Bool copyconshdlrs,
281 SCIP_Bool copyconflicthdlrs,
282 SCIP_Bool copypresolvers,
283 SCIP_Bool copyrelaxators,
284 SCIP_Bool copyseparators,
285 SCIP_Bool copycutselectors,
286 SCIP_Bool copypropagators,
287 SCIP_Bool copyheuristics,
288 SCIP_Bool copyeventhdlrs,
289 SCIP_Bool copynodeselectors,
290 SCIP_Bool copybranchrules,
291 SCIP_Bool copydisplays,
292 SCIP_Bool copydialogs,
293 SCIP_Bool copytables,
294 SCIP_Bool copyexprhdlrs,
296 SCIP_Bool passmessagehdlr,
307 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyPlugins",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
308 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyPlugins",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
311 if( passmessagehdlr )
317 copyreaders, copypricers, copyconshdlrs, copyconflicthdlrs, copypresolvers, copyrelaxators, copyseparators, copycutselectors, copypropagators,
318 copyheuristics, copyeventhdlrs, copynodeselectors, copybranchrules, copydisplays, copydialogs, copytables, copyexprhdlrs, copynlpis,
valid) );
362 SCIP_Bool threadsafe,
368 SCIP_Bool copybendersvalid;
373 assert(sourcescip != targetscip);
379 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyBenders",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
380 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyBenders",
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
386 for( p = sourcescip->
set->
nbenders - 1; p >= 0; --p )
388 copybendersvalid =
FALSE;
390 threadsafe, ©bendersvalid) );
415 SCIP_Bool uselocalvarmap;
416 SCIP_Bool uselocalconsmap;
420 assert(!original || global);
427 uselocalvarmap = (varmap ==
NULL);
428 uselocalconsmap = (consmap ==
NULL);
436 localvarmap = varmap;
438 if( uselocalconsmap )
444 localconsmap = consmap;
478 if( uselocalconsmap )
542 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyProb",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
543 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyProb",
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE) );
594 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrigProb",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
595 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrigProb",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
629 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPenableConsCompression",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
668 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPisConsCompressionEnabled",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
727 SCIP_Bool uselocalvarmap;
728 SCIP_Bool uselocalconsmap;
737 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPgetVarCopy",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
738 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPgetVarCopy",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
740 uselocalvarmap = (varmap ==
NULL);
741 uselocalconsmap = (consmap ==
NULL);
745 if( !uselocalvarmap )
748 if( *targetvar !=
NULL )
779 localvarmap = varmap;
781 if( uselocalconsmap )
787 localconsmap = consmap;
797 sourcescip, sourcevar, localvarmap, localconsmap, global) );
816 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourceaggrvar, &targetaggrvar, localvarmap, localconsmap, global, success) );
821 sourcescip, sourcevar, localvarmap, localconsmap, global) );
827 constant,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
843 SCIP_Real* aggrcoefs;
861 for(
i = 0;
i < naggrvars; ++
i )
863 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourceaggrvars[
i], &targetaggrvars[
i], localvarmap, localconsmap, global, success) );
869 sourcescip, sourcevar, localvarmap, localconsmap, global) );
875 -constant,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
895 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcenegatedvar, &targetnegatedvar, localvarmap, localconsmap, global, success) );
907 if( uselocalconsmap )
933 if( uselocalconsmap )
954 SCIP_Real* fixedvals,
963 SCIP_Bool uselocalvarmap;
964 SCIP_Bool uselocalconsmap;
967 int nrelaxonlybinvars = 0;
968 int nrelaxonlyintvars = 0;
969 int nrelaxonlyimplvars = 0;
970 int nrelaxonlycontvars = 0;
990 uselocalvarmap = (varmap ==
NULL);
991 uselocalconsmap = (consmap ==
NULL);
999 localvarmap = varmap;
1001 if( uselocalconsmap )
1007 localconsmap = consmap;
1010 for(
i = 0;
i < nsourcevars; ++
i )
1021 nrelaxonlybinvars++;
1024 nrelaxonlyintvars++;
1027 nrelaxonlyimplvars++;
1030 nrelaxonlycontvars++;
1041 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcevars[
i], &targetvar, localvarmap, localconsmap, global, &success) );
1047 for(
i = 0;
i < nfixedvars; ++
i )
1050 SCIP_Bool infeasible;
1061 infeasible = fixed =
FALSE;
1082 int nsourcefixedvars;
1096 for(
i = 0;
i < nsourcefixedvars; ++
i )
1117 assert(nsourcefixedvars == nfixedbinvars + nfixedintvars + nfixedimplvars + nfixedcontvars);
1128 if( uselocalvarmap )
1134 if( uselocalconsmap )
1186 SCIP_Real* fixedvals,
1195 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1196 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyVars",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1198 SCIP_CALL(
copyVars(sourcescip, targetscip, varmap, consmap, fixedvars, fixedvals, nfixedvars,
FALSE, global) );
1243 SCIP_Real* fixedvals,
1251 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrigVars",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1252 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrigVars",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1280 assert(sourcescip != targetscip);
1296 if( sourcevars[
i] ==
NULL || targetvars[
i] ==
NULL )
1305 switch( sourcevarstatus )
1338 assert(sourcescip != targetscip);
1352 if( targetnlpi !=
NULL )
1392 if( subvars[
i] !=
NULL )
1419 SCIP_Real* subsolvals;
1486 for(
i = 0;
i < nsubsols; ++
i )
1489 if( newsol ==
NULL )
1492 if( solindex !=
NULL )
1533 if( newsol !=
NULL )
1608 SCIP_Bool modifiable,
1610 SCIP_Bool removable,
1611 SCIP_Bool stickingatnode,
1619 SCIP_Bool uselocalvarmap;
1620 SCIP_Bool uselocalconsmap;
1625 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPgetConsCopy",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1626 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPgetConsCopy",
FALSE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE) );
1628 uselocalvarmap = (varmap ==
NULL);
1629 uselocalconsmap = (consmap ==
NULL);
1632 if( uselocalvarmap )
1638 localvarmap = varmap;
1641 if( uselocalconsmap )
1649 localconsmap = consmap;
1653 if( *targetcons !=
NULL )
1662 SCIP_CALL(
SCIPconsCopy(targetcons, targetscip->
set, name, sourcescip, sourceconshdlr, sourcecons, localvarmap, localconsmap,
1663 initial, separate, enforce, check,
propagate, local, modifiable, dynamic, removable, stickingatnode, global,
valid) );
1669 if( *targetcons !=
NULL && !uselocalconsmap )
1677 if( uselocalvarmap )
1682 if( uselocalconsmap )
1738 SCIP_Bool enablepricing,
1746 SCIP_Bool uselocalvarmap;
1747 SCIP_Bool uselocalconsmap;
1748 int nsourceconshdlrs;
1756 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyConss",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1757 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyConss",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1760 uselocalvarmap = (varmap ==
NULL);
1761 uselocalconsmap = (consmap ==
NULL);
1763 if( uselocalvarmap )
1769 localvarmap = varmap;
1771 if( uselocalconsmap )
1777 localconsmap = consmap;
1781 assert(nsourceconshdlrs == 0 || sourceconshdlrs !=
NULL);
1786 for(
i = 0;
i < nsourceconshdlrs; ++
i )
1805#ifdef SCIP_DISABLED_CODE
1815 assert(nsourceconss == 0 || sourceconss !=
NULL);
1817 if( nsourceconss > 0 )
1823 for(
c = 0;
c < nsourceconss; ++
c )
1825 SCIP_Bool singlevalid =
FALSE;
1850 if( targetcons !=
NULL )
1852 if( !enablepricing )
1877 SCIPdebugMsg(sourcescip,
"Constraint %s not copied, copy is %svalid\n",
1883 if( uselocalvarmap )
1889 if( uselocalconsmap )
1942 SCIP_Bool enablepricing,
1950 SCIP_Bool uselocalvarmap;
1951 SCIP_Bool uselocalconsmap;
1960 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrigConss",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
1961 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrigConss",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
1964 uselocalvarmap = (varmap ==
NULL);
1965 uselocalconsmap = (consmap ==
NULL);
1967 if( uselocalvarmap )
1973 localvarmap = varmap;
1975 if( uselocalconsmap )
1981 localconsmap = consmap;
1988 SCIPdebugMsg(sourcescip,
"Attempting to copy %d original constraints\n", nsourceconss);
1991 for(
c = 0;
c < nsourceconss; ++
c )
2016 if( !enablepricing )
2032 if( uselocalvarmap )
2038 if( uselocalconsmap )
2082 SCIP_CALL(
SCIPcheckStage(
scip,
"SCIPconvertCutsToConss",
FALSE,
TRUE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE) );
2143 int nlocalcutsadded;
2149 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyCuts",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
2150 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyCuts",
FALSE,
TRUE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
FALSE,
TRUE,
FALSE,
FALSE) );
2152 if ( ncutsadded !=
NULL )
2154 nlocalcutsadded = 0;
2162 SCIPdebugMsg(sourcescip,
"No linear constraint handler available. Cannot convert cuts.\n");
2170 SCIP_CALL(
copyCuts(sourcescip, targetscip, cuts, ncuts, varmap, consmap, global, &nlocalcutsadded) );
2172 SCIPdebugMsg(sourcescip,
"Converted %d active cuts to constraints.\n", nlocalcutsadded);
2178 SCIP_CALL(
copyCuts(sourcescip, targetscip, cuts, ncuts, varmap, consmap, global, &nlocalcutsadded) );
2180 if( ncutsadded !=
NULL )
2181 *ncutsadded = nlocalcutsadded;
2183 SCIPdebugMsg(sourcescip,
"Converted %d active cuts to constraints.\n", nlocalcutsadded);
2230 SCIP_Bool enablepricing,
2238 SCIP_Bool uselocalvarmap;
2239 SCIP_Bool uselocalconsmap;
2241 int sourceconfssize;
2249 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyConss",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2250 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyConss",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
2253 uselocalvarmap = (varmap ==
NULL);
2254 uselocalconsmap = (consmap ==
NULL);
2256 if( uselocalvarmap )
2262 localvarmap = varmap;
2264 if( uselocalconsmap )
2270 localconsmap = consmap;
2280 assert(nsourceconfs <= sourceconfssize);
2283 for(
c = 0;
c < nsourceconfs; ++
c )
2313 if( !enablepricing )
2329 if( uselocalvarmap )
2335 if( uselocalconsmap )
2388 SCIP_Bool* infeasible,
2404 assert( sourcescip != targetscip );
2408 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyImplicationsCliques",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE) );
2409 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyImplicationsCliques",
FALSE,
FALSE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE) );
2411 if ( ncopied !=
NULL )
2413 if ( nbdchgs !=
NULL )
2434 for (
c = 0;
c < ncliques; ++
c)
2437 SCIP_Bool* cliquevals;
2447 for (j = 0; j < cliquesize; ++j)
2449 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, cliquevars[j], &targetclique[j], varmap, consmap, global, &success) );
2460 infeasible, &nboundchg) );
2467 if ( ncopied !=
NULL )
2469 if ( nbdchgs !=
NULL )
2470 *nbdchgs += nboundchg;
2482 sourcevar = sourcevars[j];
2483 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcevar, &targetvar, varmap, consmap, global, &success) );
2491 for (d = 0; d <= 1; ++d)
2495 SCIP_Real* implbounds;
2508 for (l = 0; l < nimpls; ++l)
2513 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, implvars[l], &implvar, varmap, consmap, global, &success) );
2523 if ( ncopied !=
NULL )
2525 if ( nbdchgs !=
NULL )
2526 *nbdchgs += nboundchg;
2575 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyParamSettings",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2576 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyParamSettings",
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
2612 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPgetSubscipDepth",
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE) );
2614 return scip->stat->subscipdepth;
2634 SCIP_CALL_ABORT(
SCIPcheckStage(
scip,
"SCIPsetSubscipDepth",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
2637 scip->stat->subscipdepth = newdepth;
2659 SCIP_Real* fixedvals,
2661 SCIP_Bool useconscompression,
2664 SCIP_Bool enablepricing,
2668 SCIP_Bool threadsafe,
2670 SCIP_Bool passmessagehdlr,
2676 SCIP_Real startcopytime;
2678 SCIP_Bool uselocalvarmap;
2679 SCIP_Bool uselocalconsmap;
2680 SCIP_Bool consscopyvalid;
2681 SCIP_Bool benderscopyvalid;
2682 SCIP_Bool localvalid;
2683 SCIP_Bool msghdlrquiet;
2695 assert(global || !original);
2704 SCIP_CALL(
SCIPcopyPlugins(sourcescip, targetscip,
TRUE, enablepricing,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
2705 TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE, passmessagehdlr, &localvalid) );
2711 SCIPdebugMsg(sourcescip,
"Copying plugins was%s valid.\n", localvalid ?
"" :
" not");
2713 uselocalvarmap = (varmap ==
NULL);
2714 uselocalconsmap = (consmap ==
NULL);
2716 if( uselocalvarmap )
2722 localvarmap = varmap;
2724 if( uselocalconsmap )
2730 localconsmap = consmap;
2758 SCIP_CALL(
copyVars(sourcescip, targetscip, localvarmap, localconsmap, fixedvars, fixedvals, nfixedvars, original, global) );
2761 if( useconscompression && (nfixedvars > 0 || !global) )
2765 SCIPdebugMsg(sourcescip,
"SCIPenableConsCompression() with nxfixedvars=%d and global=%u invalidates copy.\n",
2766 nfixedvars, global);
2779 SCIP_CALL(
SCIPcopyConss(sourcescip, targetscip, localvarmap, localconsmap, global, enablepricing, &consscopyvalid) );
2782 SCIPdebugMsg(sourcescip,
"Copying%s constraints was%s valid.\n",
2783 original ?
" (original)" :
"", consscopyvalid ?
"" :
" not");
2785 localvalid = localvalid && consscopyvalid;
2790 SCIPdebugMsg(sourcescip,
"Copying Benders' decomposition plugins was%s valid.\n", benderscopyvalid ?
"" :
" not");
2792 localvalid = localvalid && benderscopyvalid;
2794 if( uselocalvarmap )
2800 if( uselocalconsmap )
2814 if( copytime < sourcescip->stat->mincopytime )
2827 *
valid = localvalid;
2884 SCIP_Bool enablepricing,
2888 SCIP_Bool threadsafe,
2890 SCIP_Bool passmessagehdlr,
2895 SCIP_Real* fixedvals =
NULL;
2897 SCIP_Bool original =
FALSE;
2898 SCIP_Bool useconscompression =
FALSE;
2905 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopy",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2906 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopy",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
2909 SCIP_CALL(
doCopy(sourcescip, targetscip, varmap, consmap, suffix, fixedvars, fixedvals, nfixedvars,
2910 useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr,
valid) );
2978 SCIP_Real* fixedvals,
2981 SCIP_Bool enablepricing,
2985 SCIP_Bool threadsafe,
2987 SCIP_Bool passmessagehdlr,
2991 SCIP_Bool original =
FALSE;
2992 SCIP_Bool useconscompression =
TRUE;
2999 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyConsCompression",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
3000 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyConsCompression",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
3003 SCIP_CALL(
doCopy(sourcescip, targetscip, varmap, consmap, suffix, fixedvars, fixedvals, nfixedvars,
3004 useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr,
valid) );
3058 SCIP_Bool enablepricing,
3062 SCIP_Bool threadsafe,
3064 SCIP_Bool passmessagehdlr,
3069 SCIP_Real* fixedvals =
NULL;
3071 SCIP_Bool global =
TRUE;
3072 SCIP_Bool original =
TRUE;
3073 SCIP_Bool useconscompression =
FALSE;
3080 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrig",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
3081 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrig",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
3083 SCIP_CALL(
doCopy(sourcescip, targetscip, varmap, consmap, suffix, fixedvars, fixedvals, nfixedvars,
3084 useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr,
valid) );
3146 SCIP_Real* fixedvals,
3148 SCIP_Bool enablepricing,
3152 SCIP_Bool threadsafe,
3154 SCIP_Bool passmessagehdlr,
3158 SCIP_Bool original =
TRUE;
3159 SCIP_Bool global =
TRUE;
3160 SCIP_Bool useconscompression =
TRUE;
3167 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyOrigConsCompression",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
3168 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyOrigConsCompression",
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
TRUE) );
3171 SCIP_CALL(
doCopy(sourcescip, targetscip, varmap, consmap, suffix, fixedvars, fixedvals, nfixedvars,
3172 useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr,
valid) );
3185 SCIP_Real* timelimit
3206 SCIP_Real timelimit = -1.0;
3212 timelimit =
MAX(0.0, timelimit);
3224 SCIP_Real* memorylimit
3259 SCIP_Real timelimit;
3265 SCIP_Real memorylimit;
3272 *success = timelimit > 0.0;
3301 SCIP_Real timelimit;
3302 SCIP_Real memorylimit;
3308 if( timelimit < 0.0 )
3310 if( memorylimit < 0.0 )
3342 SCIP_Longint nsubnodes,
3343 SCIP_Longint nstallnodes,
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
SCIP_RETCODE SCIPcheckStage(SCIP *scip, const char *method, SCIP_Bool init, SCIP_Bool problem, SCIP_Bool transforming, SCIP_Bool transformed, SCIP_Bool initpresolve, SCIP_Bool presolving, SCIP_Bool exitpresolve, SCIP_Bool presolved, SCIP_Bool initsolve, SCIP_Bool solving, SCIP_Bool solved, SCIP_Bool exitsolve, SCIP_Bool freetrans, SCIP_Bool 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 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 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 copydisplays, SCIP_Bool copydialogs, SCIP_Bool copytables, SCIP_Bool copyexprhdlrs, SCIP_Bool copynlpis, SCIP_Bool passmessagehdlr, SCIP_Bool *valid)
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_Longint SCIPgetMemExternEstim(SCIP *scip)
SCIP_Longint SCIPgetMemUsed(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_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)
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)
BMS_BLKMEM * SCIPblkmem(SCIP *scip)
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 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
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 copydisplays, SCIP_Bool copydialogs, SCIP_Bool copytables, SCIP_Bool copyexprhdlrs, SCIP_Bool copynlpis, SCIP_Bool *allvalid)
SCIP_Bool SCIPsetIsEQ(SCIP_SET *set, SCIP_Real val1, SCIP_Real val2)
SCIP_NLPI * SCIPsetFindNlpi(SCIP_SET *set, const char *name)
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
enum SCIP_BoundType SCIP_BOUNDTYPE
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)
internal methods for problem variables