SCIP Doxygen Documentation
Loading...
Searching...
No Matches

Detailed Description

general functions for numerically exact solving

Functions

SCIP_RETCODE SCIPenableExactSolving (SCIP *scip, SCIP_Bool enable)
SCIP_Bool SCIPisExact (SCIP *scip)
SCIP_Bool SCIPallowNegSlack (SCIP *scip)
SCIP_RETCODE SCIPbranchLPExact (SCIP *scip, SCIP_RESULT *result)
SCIP_RETCODE SCIPaddRowExact (SCIP *scip, SCIP_ROWEXACT *rowexact)

Function Documentation

◆ SCIPenableExactSolving()

SCIP_RETCODE SCIPenableExactSolving ( SCIP * scip,
SCIP_Bool enable )

enables or disables exact solving mode

Returns
SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
Precondition
This method can be called if scip is in one of the following stages:
Parameters
scipSCIP data structure
enableenable exact solving (TRUE) or disable it (FALSE)

Definition at line 151 of file scip_exact.c.

References assert(), NULL, SCIP_Bool, SCIP_ERROR, SCIP_INVALIDCALL, SCIP_OKAY, SCIP_STAGE_PROBLEM, SCIPerrorMessage, and SCIPgetStage().

Referenced by applyRepair(), createSubSCIP(), createSubscip(), doCopy(), SCIPcopyLargeNeighborhoodSearch(), and setupSubscipLpface().

◆ SCIPisExact()

SCIP_Bool SCIPisExact ( SCIP * scip)

returns whether the solution process is arithmetically exact, i.e., not subject to roundoff errors

Returns
Returns TRUE if SCIP is in exact solving mode, otherwise FALSE

returns whether the solution process should be probably correct

Returns
Returns TRUE if SCIP is in exact solving mode, otherwise FALSE
Parameters
scipSCIP data structure

Definition at line 193 of file scip_exact.c.

References assert(), NULL, and SCIP_Bool.

Referenced by addCut(), addOneRowSafely(), analyzeStrongbranch(), applyRepair(), branch(), branchOnVar(), calcActivityBounds(), calcMIRSafely(), checkSolOrig(), checkSolOrigExact(), chgCoeffWithBoundSafely(), copyVars(), createVariable(), cutsRoundMIRSafely(), cutsSubstituteMIR(), cutsSubstituteMIRSafely(), cutsTransformMIRSafely(), cutTightenCoefs(), cutTightenCoefsSafely(), determineTotalNumberLinearConss(), execRelpscost(), freeSolve(), fromCommandLine(), getFixedVariable(), getObjectiveRow(), getVariable(), if(), if(), initializeCandsLists(), initSolve(), performBoundSubstitution(), performBoundSubstitutionSafely(), performBoundSubstitutionSimple(), performBoundSubstitutionSimpleSafely(), postprocessCutSafely(), presolve(), presolveRound(), readBinaries(), readBounds(), readColsExact(), readConstraints(), readConstraints(), readIndicators(), readMpsExact(), readObjective(), readOPBFile(), readQCMatrix(), readQMatrix(), readSol(), readSolFile(), readSOS(), readXmlSolFile(), removeExactConflictFromCertificateHashmap(), removeZerosSafely(), runVanillaStrongBranching(), scaleValSafely(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_CONSCHECK(), SCIP_DECL_CONSCHECK(), SCIP_DECL_CONSCHECK(), SCIP_DECL_CONSDEACTIVE(), SCIP_DECL_CONSDELETE(), SCIP_DECL_CONSDELVARS(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSENFOPS(), SCIP_DECL_CONSENFOPS(), SCIP_DECL_CONSENFORELAX(), SCIP_DECL_CONSENFORELAX(), SCIP_DECL_CONSEXIT(), SCIP_DECL_CONSEXIT(), SCIP_DECL_CONSEXITPRE(), SCIP_DECL_CONSEXITSOL(), SCIP_DECL_CONSINIT(), SCIP_DECL_CONSINIT(), SCIP_DECL_CONSINITLP(), SCIP_DECL_CONSLOCK(), SCIP_DECL_CONSPROP(), SCIP_DECL_CONSSEPALP(), SCIP_DECL_CONSSEPASOL(), SCIP_DECL_CONSTRANS(), SCIP_DECL_DIALOGEXEC(), SCIP_DECL_EVENTEXEC(), SCIP_DECL_EVENTEXEC(), SCIP_DECL_HEUREXEC(), SCIP_DECL_HEUREXEC(), SCIP_DECL_HEUREXEC(), SCIP_DECL_PROPEXEC(), SCIP_DECL_READERREAD(), SCIP_DECL_READERWRITE(), SCIP_DECL_READERWRITE(), SCIP_DECL_READERWRITE(), SCIP_DECL_READERWRITE(), SCIP_DECL_SEPAEXECLP(), SCIPaddCons(), SCIPaddConsNode(), SCIPaddOrigObjoffset(), SCIPaddVar(), SCIPaggrRowAddRowSafely(), SCIPaggrRowRemoveZeros(), SCIPaggrRowSumRows(), SCIPallowNegSlack(), SCIPcalcMIR(), SCIPcertificateFreeRowInfo(), SCIPcertifyMirCut(), SCIPcheckSol(), SCIPcheckSolOrig(), SCIPcollectSolutionStatistics(), SCIPcopyConsExactLinear(), SCIPendDive(), SCIPfixVarExact(), SCIPfreeCertificateActiveAggrInfo(), SCIPfreeCertificateActiveMirInfo(), SCIPgetOrigObjoffsetExact(), SCIPincludeBranchruleRelpscost(), SCIPmatrixCreate(), SCIPmatrixFree(), SCIPprintSol(), SCIPprintSolutionStatistics(), SCIPprocessShellArguments(), SCIPpropagateProbing(), SCIPreadMps(), SCIPselectVarPseudoStrongBranching(), SCIPselectVarStrongBranching(), SCIPsolve(), SCIPsolveCIP(), SCIPsolveConcurrent(), SCIPstoreCertificateActiveAggrInfo(), SCIPstoreCertificateActiveMirInfo(), SCIPtightenVarLbExact(), SCIPtightenVarLbGlobal(), SCIPtightenVarUbExact(), SCIPtightenVarUbGlobal(), SCIPtransformProb(), SCIPvalidateSolveExact(), SCIPwriteLp(), SCIPwriteMps(), selectVarMultAggrBranching(), setColumnMajorFormat(), setObjective(), setupAndSolveSubscip(), setupProbingSCIP(), setupSCIPparamsStage3(), setupSubscipLpface(), solveLp(), varVecAddScaledRowCoefsSafely(), writeOpbConstraints(), and writeOpbObjective().

◆ SCIPallowNegSlack()

SCIP_Bool SCIPallowNegSlack ( SCIP * scip)

returns whether aggregation is allowed to use negative slack in exact solving mode

Returns
Returns TRUE if SCIP is not in exact solving mode or aggregation is allowed to use negative slack
Precondition
This method can be called if scip is in one of the following stages:

See SCIP_STAGE for a complete list of all possible solving stages.

Parameters
scipSCIP data structure

Definition at line 212 of file scip_exact.c.

References assert(), FALSE, NULL, SCIP_Bool, SCIP_CALL_ABORT, SCIPcheckStage, SCIPisExact(), and TRUE.

Referenced by SCIP_DECL_SEPAEXECLP().

◆ SCIPbranchLPExact()

SCIP_RETCODE SCIPbranchLPExact ( SCIP * scip,
SCIP_RESULT * result )

branches on an LP solution exactly; does not call branching rules, since fractionalities are assumed to small; if no fractional variables exist, the result is SCIP_DIDNOTRUN;

Returns
SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
Precondition
This method can be called if scip is in one of the following stages:

See SCIP_STAGE for a complete list of all possible solving stages.

Parameters
scipSCIP data structure
resultpointer to store the result of the branching (s. branch.h)

Definition at line 235 of file scip_exact.c.

References FALSE, result, SCIP_CALL, SCIP_OKAY, SCIPbranchExecLPExact(), SCIPcheckStage, and TRUE.

Referenced by SCIP_DECL_CONSENFOLP().

◆ SCIPaddRowExact()

SCIP_RETCODE SCIPaddRowExact ( SCIP * scip,
SCIP_ROWEXACT * rowexact )

adds row to exact separation storage

Returns
SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
Precondition
This method can be called if scip is in one of the following stages:
Parameters
scipSCIP data structure
rowexactexact row to add

Definition at line 257 of file scip_exact.c.

References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage, SCIPsepastoreExactAddCut(), and TRUE.

Referenced by addRelaxation(), and SCIPsepastoreApplyCuts().