assert(cut !=
NULL);
115 SCIPerrorMessage(
"unknown cut selection strategy %c, must be either 'a' or 'q'\n", cutsel);
141assert(sourcescip !=
NULL);
142assert(targetscip !=
NULL);
143assert(cuts !=
NULL|| ncuts == 0);
144assert(ncutsadded !=
NULL);
146 for( c = 0; c < ncuts; ++c )
151assert( cuts[c] !=
NULL);
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");
301assert(sourcescip !=
NULL);
302assert(targetscip !=
NULL);
303assert(sourcescip->
set!=
NULL);
304assert(targetscip->
set!=
NULL);
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 )
317copyreaders, copypricers, copyconshdlrs, copyconflicthdlrs, copypresolvers, copyrelaxators, copyseparators, copycutselectors, copypropagators,
318copyheuristics, copyeventhdlrs, copynodeselectors, copybranchrules, copydisplays, copydialogs, copytables, copyexprhdlrs, copynlpis, valid) );
371assert(sourcescip !=
NULL);
372assert(targetscip !=
NULL);
373assert(sourcescip != targetscip);
374assert(sourcescip->
set!=
NULL);
375assert(targetscip->
set!=
NULL);
376assert(valid !=
NULL);
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 )
388copybendersvalid =
FALSE;
390threadsafe, ©bendersvalid) );
391*valid = *valid && copybendersvalid;
418assert(sourcescip !=
NULL);
419assert(targetscip !=
NULL);
420assert(!original || global);
427uselocalvarmap = (varmap ==
NULL);
428uselocalconsmap = (consmap ==
NULL);
430 if( uselocalvarmap )
436localvarmap = varmap;
438 if( uselocalconsmap )
444localconsmap = consmap;
450sourceprob = sourcescip->
origprob;
472 if( uselocalvarmap )
478 if( uselocalconsmap )
538assert(sourcescip !=
NULL);
539assert(targetscip !=
NULL);
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) );
590assert(sourcescip !=
NULL);
591assert(targetscip !=
NULL);
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) );
730assert(sourcescip !=
NULL);
731assert(targetscip !=
NULL);
732assert(sourcevar !=
NULL);
733assert(targetvar !=
NULL);
734assert(sourcevar->
scip== sourcescip);
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) );
740uselocalvarmap = (varmap ==
NULL);
741uselocalconsmap = (consmap ==
NULL);
745 if( !uselocalvarmap )
748 if( *targetvar !=
NULL)
774 if( uselocalvarmap )
779localvarmap = varmap;
781 if( uselocalconsmap )
787localconsmap = consmap;
797sourcescip, sourcevar, localvarmap, localconsmap, global) );
816 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourceaggrvar, &targetaggrvar, localvarmap, localconsmap, global, success) );
821sourcescip, sourcevar, localvarmap, localconsmap, global) );
827constant,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
861 for( i = 0; i < naggrvars; ++i )
863 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourceaggrvars[i], &targetaggrvars[i], localvarmap, localconsmap, global, success) );
869sourcescip, sourcevar, localvarmap, localconsmap, global) );
875-constant,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
891assert(sourcenegatedvar !=
NULL);
895 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcenegatedvar, &targetnegatedvar, localvarmap, localconsmap, global, success) );
904 if( uselocalvarmap )
907 if( uselocalconsmap )
930 if( uselocalvarmap )
933 if( uselocalconsmap )
967 intnrelaxonlybinvars = 0;
968 intnrelaxonlyintvars = 0;
969 intnrelaxonlyimplvars = 0;
970 intnrelaxonlycontvars = 0;
974assert(sourcescip !=
NULL);
975assert(targetscip !=
NULL);
976assert(nfixedvars == 0 || fixedvars !=
NULL);
977assert(nfixedvars == 0 || fixedvals !=
NULL);
990uselocalvarmap = (varmap ==
NULL);
991uselocalconsmap = (consmap ==
NULL);
993 if( uselocalvarmap )
999localvarmap = varmap;
1001 if( uselocalconsmap )
1007localconsmap = consmap;
1010 for( i = 0; i < nsourcevars; ++i )
1021nrelaxonlybinvars++;
1024nrelaxonlyintvars++;
1027nrelaxonlyimplvars++;
1030nrelaxonlycontvars++;
1041 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcevars[i], &targetvar, localvarmap, localconsmap, global, &success) );
1043assert(targetvar !=
NULL);
1047 for( i = 0; i < nfixedvars; ++i )
1058assert(targetvar !=
NULL);
1061infeasible = fixed =
FALSE;
1064assert(!infeasible);
1082 intnsourcefixedvars;
1096 for( i = 0; i < nsourcefixedvars; ++i )
1117assert(nsourcefixedvars == nfixedbinvars + nfixedintvars + nfixedimplvars + nfixedcontvars);
1128 if( uselocalvarmap )
1134 if( uselocalconsmap )
1191assert(sourcescip !=
NULL);
1192assert(targetscip !=
NULL);
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) );
1247assert(sourcescip !=
NULL);
1248assert(targetscip !=
NULL);
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) );
1279assert(nvars == 0 || (sourcevars !=
NULL&& targetvars !=
NULL));
1280assert(sourcescip != targetscip);
1292 for( i = 0; i < nvars; ++i )
1296 if( sourcevars[i] ==
NULL|| targetvars[i] ==
NULL)
1299assert(sourcevars[i]->
scip== sourcescip);
1300assert(targetvars[i]->
scip== targetscip);
1305 switch( sourcevarstatus )
1338assert(sourcescip != targetscip);
1340 for( i = 0; i < sourcescip->
set->
nnlpis; ++i )
1345sourcenlpi = sourcescip->
set->
nlpis[i];
1348targetnlpi = targetscip->
set->
nlpis[i];
1352 if( targetnlpi !=
NULL)
1381assert(subscip !=
NULL);
1382assert(subsol !=
NULL);
1383assert(subvars !=
NULL);
1384assert(solvals !=
NULL);
1390 for( i = 0; i < nvars; ++i )
1392 if( subvars[i] !=
NULL)
1422assert(subscip !=
NULL);
1423assert(subsol !=
NULL);
1424assert(subvars !=
NULL);
1425assert(newsol !=
NULL);
1466assert(subscip !=
NULL);
1467assert(heur !=
NULL);
1468assert(subvars !=
NULL);
1469assert(success !=
NULL);
1486 for( i = 0; i < nsubsols; ++i )
1489 if( newsol ==
NULL)
1492 if( solindex !=
NULL)
1526assert(newsol ==
NULL);
1533 if( newsol !=
NULL)
1622assert(targetcons !=
NULL);
1623assert(sourceconshdlr !=
NULL);
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) );
1628uselocalvarmap = (varmap ==
NULL);
1629uselocalconsmap = (consmap ==
NULL);
1632 if( uselocalvarmap )
1638localvarmap = varmap;
1640*targetcons =
NULL;
1641 if( uselocalconsmap )
1649localconsmap = consmap;
1653 if( *targetcons !=
NULL)
1662 SCIP_CALL(
SCIPconsCopy(targetcons, targetscip->
set, name, sourcescip, sourceconshdlr, sourcecons, localvarmap, localconsmap,
1663initial, separate, enforce, check, propagate, local, modifiable, dynamic, removable, stickingatnode, global, valid) );
1666assert(*targetcons ==
NULL|| *valid);
1669 if( *targetcons !=
NULL&& !uselocalconsmap )
1677 if( uselocalvarmap )
1682 if( uselocalconsmap )
1748 intnsourceconshdlrs;
1751assert(sourcescip !=
NULL);
1752assert(targetscip !=
NULL);
1753assert(valid !=
NULL);
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) );
1760uselocalvarmap = (varmap ==
NULL);
1761uselocalconsmap = (consmap ==
NULL);
1763 if( uselocalvarmap )
1769localvarmap = varmap;
1771 if( uselocalconsmap )
1777localconsmap = consmap;
1781assert(nsourceconshdlrs == 0 || sourceconshdlrs !=
NULL);
1786 for( i = 0; i < nsourceconshdlrs; ++i )
1793assert(sourceconshdlrs[i] !=
NULL);
1805#ifdef SCIP_DISABLED_CODE 1815assert(nsourceconss == 0 || sourceconss !=
NULL);
1817 if( nsourceconss > 0 )
1823 for( c = 0; c < nsourceconss; ++c )
1827assert(sourceconss[c] !=
NULL);
1840 SCIP_CALL(
SCIPgetConsCopy(sourcescip, targetscip, sourceconss[c], &targetcons, sourceconshdlrs[i], localvarmap, localconsmap,
NULL,
1847assert(targetcons ==
NULL|| singlevalid);
1850 if( targetcons !=
NULL)
1852 if( !enablepricing )
1877 SCIPdebugMsg(sourcescip,
"Constraint %s not copied, copy is %svalid\n",
1883 if( uselocalvarmap )
1889 if( uselocalconsmap )
1955assert(sourcescip !=
NULL);
1956assert(targetscip !=
NULL);
1957assert(valid !=
NULL);
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) );
1964uselocalvarmap = (varmap ==
NULL);
1965uselocalconsmap = (consmap ==
NULL);
1967 if( uselocalvarmap )
1973localvarmap = varmap;
1975 if( uselocalconsmap )
1981localconsmap = consmap;
1988 SCIPdebugMsg(sourcescip,
"Attempting to copy %d original constraints\n", nsourceconss);
1991 for( c = 0; c < nsourceconss; ++c )
2000assert(sourceconss[c] !=
NULL);
2014assert(targetcons !=
NULL);
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 intnlocalcutsadded;
2145assert(sourcescip !=
NULL);
2146assert(targetscip !=
NULL);
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)
2154nlocalcutsadded = 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);
2241 intsourceconfssize;
2245assert(sourcescip !=
NULL);
2246assert(targetscip !=
NULL);
2249 SCIP_CALL(
SCIPcheckStage(sourcescip,
"SCIPcopyConflicts",
FALSE,
TRUE,
FALSE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
TRUE,
FALSE,
FALSE,
FALSE) );
2250 SCIP_CALL(
SCIPcheckStage(targetscip,
"SCIPcopyConflicts",
FALSE,
TRUE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE,
FALSE) );
2253uselocalvarmap = (varmap ==
NULL);
2254uselocalconsmap = (consmap ==
NULL);
2256 if( uselocalvarmap )
2262localvarmap = varmap;
2264 if( uselocalconsmap )
2270localconsmap = consmap;
2280assert(nsourceconfs <= sourceconfssize);
2283 for( c = 0; c < nsourceconfs; ++c )
2288assert(sourceconfs[c] !=
NULL);
2311assert(targetcons !=
NULL);
2313 if( !enablepricing )
2329 if( uselocalvarmap )
2335 if( uselocalconsmap )
2402assert( sourcescip !=
NULL);
2403assert( targetscip !=
NULL);
2404assert( sourcescip != targetscip );
2405assert( infeasible !=
NULL);
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)
2420 if( nbinvars == 0 )
2434 for(c = 0; c < ncliques; ++c)
2441assert( cliques[c] !=
NULL);
2447 for(j = 0; j < cliquesize; ++j)
2449 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, cliquevars[j], &targetclique[j], varmap, consmap, global, &success) );
2460infeasible, &nboundchg) );
2467 if( ncopied !=
NULL)
2469 if( nbdchgs !=
NULL)
2470*nbdchgs += nboundchg;
2476 for(j = 0; j < nbinvars; ++j)
2482sourcevar = sourcevars[j];
2483 SCIP_CALL(
SCIPgetVarCopy(sourcescip, targetscip, sourcevar, &targetvar, varmap, consmap, global, &success) );
2491 for(d = 0; d <= 1; ++d)
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;
2569assert(sourcescip !=
NULL);
2570assert(targetscip !=
NULL);
2571assert(sourcescip->
set!=
NULL);
2572assert(targetscip->
set!=
NULL);
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;
2632assert( newdepth > 0 );
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;
2657 const char* suffix,
2686assert(sourcescip !=
NULL);
2687assert(targetscip !=
NULL);
2688assert(suffix !=
NULL);
2695assert(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) );
2709localvalid =
FALSE;
2711 SCIPdebugMsg(sourcescip,
"Copying plugins was%s valid.\n", localvalid ?
"":
" not");
2713uselocalvarmap = (varmap ==
NULL);
2714uselocalconsmap = (consmap ==
NULL);
2716 if( uselocalvarmap )
2722localvarmap = varmap;
2724 if( uselocalconsmap )
2730localconsmap = 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",
2766nfixedvars, global);
2769localvalid =
FALSE;
2779 SCIP_CALL(
SCIPcopyConss(sourcescip, targetscip, localvarmap, localconsmap, global, enablepricing, &consscopyvalid) );
2782 SCIPdebugMsg(sourcescip,
"Copying%s constraints was%s valid.\n",
2783original ?
" (original)":
"", consscopyvalid ?
"":
" not");
2785localvalid = localvalid && consscopyvalid;
2790 SCIPdebugMsg(sourcescip,
"Copying Benders' decomposition plugins was%s valid.\n", benderscopyvalid ?
"":
" not");
2792localvalid = localvalid && benderscopyvalid;
2794 if( uselocalvarmap )
2800 if( uselocalconsmap )
2814 if( copytime < sourcescip->stat->mincopytime )
2826 if( valid !=
NULL)
2827*valid = localvalid;
2882 const char* suffix,
2900assert(sourcescip !=
NULL);
2901assert(targetscip !=
NULL);
2902assert(suffix !=
NULL);
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,
2910useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr, valid) );
2976 const char* suffix,
2994assert(sourcescip !=
NULL);
2995assert(targetscip !=
NULL);
2996assert(suffix !=
NULL);
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,
3004useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr, valid) );
3057 const char* suffix,
3075assert(sourcescip !=
NULL);
3076assert(targetscip !=
NULL);
3077assert(suffix !=
NULL);
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,
3084useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr, valid) );
3144 const char* suffix,
3162assert(sourcescip !=
NULL);
3163assert(targetscip !=
NULL);
3164assert(suffix !=
NULL);
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,
3172useconscompression, global, original, enablepricing, threadsafe, passmessagehdlr, valid) );
3212timelimit =
MAX(0.0, timelimit);
3272*success = timelimit > 0.0;
3308 if( timelimit < 0.0 )
3310 if( memorylimit < 0.0 )
3349assert(sourcescip !=
NULL);
3350assert(subscip !=
NULL);
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 SCIPcreateSol(SCIP *scip, SCIP_SOL **sol, SCIP_HEUR *heur)
SCIP_RETCODE SCIPfreeSol(SCIP *scip, SCIP_SOL **sol)
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,...)
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
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4