Scippy

SCIP

Solving Constraint Integer Programs

Detailed Description

public methods for LP rows

Functions

 SCIP_DECL_SORTPTRCOMP (SCIProwComp)
 
void SCIProwLock (SCIP_ROW *row)
 
void SCIProwUnlock (SCIP_ROW *row)
 
SCIP_Real SCIProwGetScalarProduct (SCIP_ROW *row1, SCIP_ROW *row2)
 
SCIP_Real SCIProwGetParallelism (SCIP_ROW *row1, SCIP_ROW *row2, char orthofunc)
 
SCIP_Real SCIProwGetOrthogonality (SCIP_ROW *row1, SCIP_ROW *row2, char orthofunc)
 
void SCIProwSort (SCIP_ROW *row)
 
int SCIProwGetNNonz (SCIP_ROW *row)
 
int SCIProwGetNLPNonz (SCIP_ROW *row)
 
SCIP_COL ** SCIProwGetCols (SCIP_ROW *row)
 
SCIP_RealSCIProwGetVals (SCIP_ROW *row)
 
SCIP_Real SCIProwGetConstant (SCIP_ROW *row)
 
SCIP_Real SCIProwGetNorm (SCIP_ROW *row)
 
SCIP_Real SCIProwGetSumNorm (SCIP_ROW *row)
 
SCIP_Real SCIProwGetLhs (SCIP_ROW *row)
 
SCIP_Real SCIProwGetRhs (SCIP_ROW *row)
 
SCIP_Real SCIProwGetDualsol (SCIP_ROW *row)
 
SCIP_Real SCIProwGetDualfarkas (SCIP_ROW *row)
 
SCIP_BASESTAT SCIProwGetBasisStatus (SCIP_ROW *row)
 
const char * SCIProwGetName (SCIP_ROW *row)
 
int SCIProwGetIndex (SCIP_ROW *row)
 
int SCIProwGetAge (SCIP_ROW *row)
 
int SCIProwGetRank (SCIP_ROW *row)
 
SCIP_Bool SCIProwIsIntegral (SCIP_ROW *row)
 
SCIP_Bool SCIProwIsLocal (SCIP_ROW *row)
 
SCIP_Bool SCIProwIsModifiable (SCIP_ROW *row)
 
SCIP_Bool SCIProwIsRemovable (SCIP_ROW *row)
 
SCIP_ROWORIGINTYPE SCIProwGetOrigintype (SCIP_ROW *row)
 
SCIP_CONSHDLRSCIProwGetOriginConshdlr (SCIP_ROW *row)
 
SCIP_CONSSCIProwGetOriginCons (SCIP_ROW *row)
 
SCIP_SEPASCIProwGetOriginSepa (SCIP_ROW *row)
 
SCIP_Bool SCIProwIsInGlobalCutpool (SCIP_ROW *row)
 
int SCIProwGetLPPos (SCIP_ROW *row)
 
int SCIProwGetLPDepth (SCIP_ROW *row)
 
SCIP_Bool SCIProwIsInLP (SCIP_ROW *row)
 
SCIP_Longint SCIProwGetActiveLPCount (SCIP_ROW *row)
 
SCIP_Longint SCIProwGetNLPsAfterCreation (SCIP_ROW *row)
 
void SCIProwChgRank (SCIP_ROW *row, int rank)
 
SCIP_RETCODE SCIPcreateRowConshdlr (SCIP *scip, SCIP_ROW **row, SCIP_CONSHDLR *conshdlr, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateRowCons (SCIP *scip, SCIP_ROW **row, SCIP_CONS *cons, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateRowSepa (SCIP *scip, SCIP_ROW **row, SCIP_SEPA *sepa, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateRowUnspec (SCIP *scip, SCIP_ROW **row, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateRow (SCIP *scip, SCIP_ROW **row, const char *name, int len, SCIP_COL **cols, SCIP_Real *vals, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateEmptyRowConshdlr (SCIP *scip, SCIP_ROW **row, SCIP_CONSHDLR *conshdlr, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateEmptyRowCons (SCIP *scip, SCIP_ROW **row, SCIP_CONS *cons, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateEmptyRowSepa (SCIP *scip, SCIP_ROW **row, SCIP_SEPA *sepa, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateEmptyRowUnspec (SCIP *scip, SCIP_ROW **row, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcreateEmptyRow (SCIP *scip, SCIP_ROW **row, const char *name, SCIP_Real lhs, SCIP_Real rhs, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool removable)
 
SCIP_RETCODE SCIPcaptureRow (SCIP *scip, SCIP_ROW *row)
 
SCIP_RETCODE SCIPreleaseRow (SCIP *scip, SCIP_ROW **row)
 
SCIP_RETCODE SCIPchgRowLhs (SCIP *scip, SCIP_ROW *row, SCIP_Real lhs)
 
SCIP_RETCODE SCIPchgRowRhs (SCIP *scip, SCIP_ROW *row, SCIP_Real rhs)
 
SCIP_RETCODE SCIPcacheRowExtensions (SCIP *scip, SCIP_ROW *row)
 
SCIP_RETCODE SCIPflushRowExtensions (SCIP *scip, SCIP_ROW *row)
 
SCIP_RETCODE SCIPaddVarToRow (SCIP *scip, SCIP_ROW *row, SCIP_VAR *var, SCIP_Real val)
 
SCIP_RETCODE SCIPaddVarsToRow (SCIP *scip, SCIP_ROW *row, int nvars, SCIP_VAR **vars, SCIP_Real *vals)
 
SCIP_RETCODE SCIPaddVarsToRowSameCoef (SCIP *scip, SCIP_ROW *row, int nvars, SCIP_VAR **vars, SCIP_Real val)
 
SCIP_RETCODE SCIPcalcRowIntegralScalar (SCIP *scip, SCIP_ROW *row, SCIP_Real mindelta, SCIP_Real maxdelta, SCIP_Longint maxdnom, SCIP_Real maxscale, SCIP_Bool usecontvars, SCIP_Real *intscalar, SCIP_Bool *success)
 
SCIP_RETCODE SCIPmakeRowIntegral (SCIP *scip, SCIP_ROW *row, SCIP_Real mindelta, SCIP_Real maxdelta, SCIP_Longint maxdnom, SCIP_Real maxscale, SCIP_Bool usecontvars, SCIP_Bool *success)
 
void SCIPmarkRowNotRemovableLocal (SCIP *scip, SCIP_ROW *row)
 
int SCIPgetRowNumIntCols (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowMinCoef (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowMaxCoef (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowMinActivity (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowMaxActivity (SCIP *scip, SCIP_ROW *row)
 
SCIP_RETCODE SCIPrecalcRowLPActivity (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowLPActivity (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowLPFeasibility (SCIP *scip, SCIP_ROW *row)
 
SCIP_RETCODE SCIPrecalcRowPseudoActivity (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowPseudoActivity (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowPseudoFeasibility (SCIP *scip, SCIP_ROW *row)
 
SCIP_RETCODE SCIPrecalcRowActivity (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowActivity (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowFeasibility (SCIP *scip, SCIP_ROW *row)
 
SCIP_Real SCIPgetRowSolActivity (SCIP *scip, SCIP_ROW *row, SCIP_SOL *sol)
 
SCIP_Real SCIPgetRowSolFeasibility (SCIP *scip, SCIP_ROW *row, SCIP_SOL *sol)
 
SCIP_Real SCIPgetRowObjParallelism (SCIP *scip, SCIP_ROW *row)
 
SCIP_RETCODE SCIPprintRow (SCIP *scip, SCIP_ROW *row, FILE *file)
 

Function Documentation

◆ SCIP_DECL_SORTPTRCOMP()

SCIP_DECL_SORTPTRCOMP ( SCIProwComp  )

comparison method for sorting rows by non-decreasing index

Definition at line 950 of file lp.c.

References NULL, and SCIProwGetIndex().

◆ SCIProwLock()

void SCIProwLock ( SCIP_ROW row)

locks an unmodifiable row, which forbids further changes; has no effect on modifiable rows

Parameters
rowLP row

Definition at line 5382 of file lp.c.

References SCIP_Row::modifiable, SCIP_Row::name, SCIP_Row::nlocks, NULL, SCIP_Row::nuses, and SCIPdebugMessage.

Referenced by SCIPcutpoolAddNewRow(), and SCIPlpAddRow().

◆ SCIProwUnlock()

void SCIProwUnlock ( SCIP_ROW row)

unlocks a lock of an unmodifiable row; a row with no sealed lock may be modified; has no effect on modifiable rows

Parameters
rowLP row

Definition at line 5397 of file lp.c.

References SCIP_Row::modifiable, SCIP_Row::name, SCIP_Row::nlocks, NULL, SCIP_Row::nuses, and SCIPdebugMessage.

Referenced by cutpoolDelCut(), lpDelRowset(), SCIPcutpoolClear(), and SCIPlpShrinkRows().

◆ SCIProwGetScalarProduct()

SCIP_Real SCIProwGetScalarProduct ( SCIP_ROW row1,
SCIP_ROW row2 
)

returns the scalar product of the coefficient vectors of the two given rows

returns the scalar product of the coefficient vectors of the two given rows

Note
the scalar product is computed w.r.t. the current LP columns only
Parameters
row1first LP row
row2second LP row

Definition at line 7012 of file lp.c.

References SCIP_Row::cols, SCIP_Row::cols_index, FALSE, SCIP_Col::index, SCIP_Row::len, SCIP_Row::lpcolssorted, SCIP_Col::lppos, MAX, SCIP_Row::nlpcols, SCIP_Row::nonlpcolssorted, NULL, SCIP_Row::nunlinked, SCIP_Bool, SCIP_Real, SCIProwSort(), SCIPswapPointers(), TRUE, and SCIP_Row::vals.

Referenced by SCIProwGetParallelism().

◆ SCIProwGetParallelism()

SCIP_Real SCIProwGetParallelism ( SCIP_ROW row1,
SCIP_ROW row2,
char  orthofunc 
)

returns the degree of parallelism between the hyperplanes defined by the two row vectors v, w: p = |v*w|/(|v|*|w|); the hyperplanes are parallel, iff p = 1, they are orthogonal, iff p = 0

Parameters
row1first LP row
row2second LP row
orthofuncfunction used for calc. scalar prod. ('e'uclidean, 'd'iscrete)

Definition at line 7728 of file lp.c.

References SCIP_Row::cols, SCIP_Row::len, SCIP_Col::lppos, REALABS, SCIP_Real, SCIPABORT, SCIPerrorMessage, SCIProwGetDiscreteScalarProduct(), SCIProwGetNNonz(), SCIProwGetNorm(), SCIProwGetScalarProduct(), SCIP_Row::sqrnorm, and SCIP_Row::vals.

Referenced by aggregation(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), filterWithParallelism(), and SCIProwGetOrthogonality().

◆ SCIProwGetOrthogonality()

SCIP_Real SCIProwGetOrthogonality ( SCIP_ROW row1,
SCIP_ROW row2,
char  orthofunc 
)

returns the degree of orthogonality between the hyperplanes defined by the two row vectors v, w: o = 1 - |v*w|/(|v|*|w|); the hyperplanes are orthogonal, iff p = 1, they are parallel, iff p = 0

Parameters
row1first LP row
row2second LP row
orthofuncfunction used for calc. scalar prod. ('e'uclidean, 'd'iscrete)

Definition at line 7792 of file lp.c.

References SCIProwGetParallelism().

◆ SCIProwSort()

void SCIProwSort ( SCIP_ROW row)

sorts row entries such that LP columns precede non-LP columns and inside both parts lower column indices precede higher ones

Parameters
rowrow to be sorted

Definition at line 6020 of file lp.c.

References SCIP_Row::cols, SCIP_Row::delaysort, SCIP_Col::index, SCIP_Row::nlpcols, NULL, rowSortLP(), and rowSortNonLP().

Referenced by rowMerge(), SCIP_DECL_HASHKEYEQ(), SCIProwGetDiscreteScalarProduct(), and SCIProwGetScalarProduct().

◆ SCIProwGetNNonz()

◆ SCIProwGetNLPNonz()

int SCIProwGetNLPNonz ( SCIP_ROW row)

get number of nonzero entries in row vector, that correspond to columns currently in the SCIP_LP;

Warning
This method is only applicable on rows, that are completely linked to their columns (e.g. a row that is in the current LP and the LP was solved, or a row that was in a solved LP and didn't change afterwards
Parameters
rowLP row

Definition at line 17230 of file lp.c.

References SCIP_Row::nlpcols, NULL, and SCIP_Row::nunlinked.

Referenced by addFlowrowToCommodity(), addRowToCut(), cleanupNetwork(), collectIncidentFlowCols(), computeCut(), createCGMIPprimalsols(), createSubscip(), deleteCommodity(), extractCapacities(), extractCapacityRows(), extractFlowRows(), extractNodes(), findUncapacitatedArcs(), generateClusterCuts(), getFlowrowFit(), getGMIFromRow(), getNodeSimilarityScore(), identifySourcesTargets(), initMatrix(), mcfnetworkExtract(), mcfnetworkFill(), mod2MatrixTransformContRows(), nodepairqueueCreate(), nodepartitionIsConnected(), selectRounding(), selectShifting(), separateCuts(), and storeCuts().

◆ SCIProwGetCols()

◆ SCIProwGetVals()

◆ SCIProwGetConstant()

◆ SCIProwGetNorm()

◆ SCIProwGetSumNorm()

SCIP_Real SCIProwGetSumNorm ( SCIP_ROW row)

gets sum norm of row vector (sum of absolute values of coefficients)

Parameters
rowLP row

Definition at line 17283 of file lp.c.

References checkRowSumnorm, NULL, and SCIP_Row::sumnorm.

Referenced by SCIProwGetLPEfficacy(), SCIProwGetNLPEfficacy(), SCIProwGetRelaxEfficacy(), and SCIProwGetSolEfficacy().

◆ SCIProwGetLhs()

SCIP_Real SCIProwGetLhs ( SCIP_ROW row)

returns the left hand side of the row

Parameters
rowLP row

Definition at line 17295 of file lp.c.

References SCIP_Row::lhs, and NULL.

Referenced by addAltLPRow(), addCut(), addFlowrowToCommodity(), addOneRow(), addOrigRow(), addRowToCut(), addSideRemoval(), aggregateNextRow(), aggregation(), applyRepair(), buildMod2Matrix(), calcShiftVal(), computeCut(), computeNogoodCut(), computeRltCut(), computeStandardIntegerOptCut(), computeStandardLPFeasibilityCut(), computeStandardLPOptimalityCut(), copyCuts(), createCGMIPprimalsols(), createProjRow(), createRows(), createSubscip(), detectHiddenProducts(), detectProductsUnconditional(), determineBound(), extractCapacityRows(), extractFlowRows(), generateAndApplyBendersIntegerCuts(), generateClusterCuts(), generateDisjCutSOS1(), getGMIFromRow(), getNActiveConsScore(), getSimplexCoefficients(), handleNewVariableSOS2(), initMatrix(), initsepaBoundInequalityFromCardinality(), invertCommodity(), mod2MatrixTransformContRows(), nodepairqueueCreate(), runBoundHeuristic(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_CONSINITLP(), SCIP_DECL_HEUREXEC(), SCIP_DECL_NLHDLRINITSEPA(), SCIP_DECL_SEPAEXECLP(), SCIPaddNlpiProblemRows(), SCIPapplyLockFixings(), SCIPgenerateAndApplyBendersOptCut(), SCIPlpGetDualDegeneracy(), SCIPlpRemoveRedundantRows(), SCIPnlrowCreateFromRow(), SCIProwCalcProbability(), SCIPsepastoreAddCut(), SCIPsolAdjustImplicitSolVals(), selectShifting(), separateCuts(), separateRltCuts(), sepastoreApplyBdchg(), sepastoreIsBdchgApplicable(), sepastoreIsCutRedundant(), sepastoreIsCutRedundantOrInfeasible(), setupAggregationData(), shiftValues(), storeCuts(), storeSuitableRows(), updateSlacks(), and updateViolations().

◆ SCIProwGetRhs()

SCIP_Real SCIProwGetRhs ( SCIP_ROW row)

returns the right hand side of the row

Parameters
rowLP row

Definition at line 17305 of file lp.c.

References NULL, and SCIP_Row::rhs.

Referenced by addAltLPRow(), addCut(), addFlowrowToCommodity(), addOneRow(), addOrigRow(), addRowToCut(), addSideRemoval(), aggregateNextRow(), aggregation(), applyRepair(), buildMod2Matrix(), calcShiftVal(), computeCut(), computeRltCut(), computeStandardLPFeasibilityCut(), computeStandardLPOptimalityCut(), copyCuts(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), createCGMIPprimalsols(), createProjRow(), createRows(), createSubscip(), detectHiddenProducts(), detectProductsUnconditional(), determineBound(), evaluateCutNumerics(), extractCapacityRows(), extractFlowRows(), generateClusterCuts(), generateDisjCutSOS1(), generateOddCycleCut(), getGMIFromRow(), getNActiveConsScore(), getSimplexCoefficients(), handleNewVariableSOS2(), initMatrix(), initsepaBoundInequalityFromCardinality(), invertCommodity(), mod2MatrixTransformContRows(), nodepairqueueCreate(), runBoundHeuristic(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_CONSINITLP(), SCIP_DECL_HEUREXEC(), SCIP_DECL_NLHDLRINITSEPA(), SCIP_DECL_SEPAEXECLP(), SCIPaddNlpiProblemRows(), SCIPapplyLockFixings(), SCIPlpGetDualDegeneracy(), SCIPlpRemoveRedundantRows(), SCIPnlrowCreateFromRow(), SCIProwCalcProbability(), SCIPsepastoreAddCut(), SCIPsolAdjustImplicitSolVals(), selectShifting(), separateCuts(), separateRltCuts(), sepastoreApplyBdchg(), sepastoreIsBdchgApplicable(), sepastoreIsCutRedundant(), sepastoreIsCutRedundantOrInfeasible(), setupAggregationData(), shiftValues(), storeCuts(), storeSuitableRows(), updateSlacks(), and updateViolations().

◆ SCIProwGetDualsol()

◆ SCIProwGetDualfarkas()

SCIP_Real SCIProwGetDualfarkas ( SCIP_ROW row)

gets the dual Farkas coefficient of a row in an infeasible LP

Parameters
rowLP row

Definition at line 17328 of file lp.c.

References SCIP_Row::dualfarkas, SCIP_Row::lppos, and NULL.

Referenced by computeStandardLPFeasibilityCut(), SCIPgetDualfarkasKnapsack(), SCIPgetDualfarkasLogicor(), SCIPgetDualfarkasSetppc(), and SCIPgetDualfarkasVarbound().

◆ SCIProwGetBasisStatus()

SCIP_BASESTAT SCIProwGetBasisStatus ( SCIP_ROW row)

gets the basis status of a row in the LP solution; only valid for LPs with status SCIP_LPSOLSTAT_OPTIMAL and with SCIPisLPSolBasic(scip) == TRUE; returns SCIP_BASESTAT_BASIC for rows not in the current SCIP_LP

Parameters
rowLP row

Definition at line 17343 of file lp.c.

References SCIP_Row::basisstatus, SCIP_Row::lppos, NULL, and SCIP_BASESTAT_BASIC.

Referenced by addOneRow(), addRows(), addRowToCut(), computeIntercut(), computeNegCutcoefs(), computeStrengthenedIntercut(), createAndStoreSparseRays(), createCGMIPprimalsols(), generateDisjCutSOS1(), getGMIFromRow(), getSimplexCoefficients(), SCIP_DECL_SEPAEXECLP(), SCIPlpGetDualDegeneracy(), and storeDenseTableauRow().

◆ SCIProwGetName()

◆ SCIProwGetIndex()

int SCIProwGetIndex ( SCIP_ROW row)

gets unique index of row

Parameters
rowLP row

Definition at line 17364 of file lp.c.

References SCIP_Row::index, and NULL.

Referenced by calcBranchScore(), checkConstraintMatching(), determineBound(), markRowsXj(), SCIP_DECL_SORTPTRCOMP(), separateRltCuts(), storeSuitableRows(), varColCompare(), and varProcessBoundChanges().

◆ SCIProwGetAge()

int SCIProwGetAge ( SCIP_ROW row)

gets age of row

Parameters
rowLP row

Definition at line 17374 of file lp.c.

References SCIP_Row::age, and NULL.

Referenced by createSubscip(), and storeCuts().

◆ SCIProwGetRank()

int SCIProwGetRank ( SCIP_ROW row)

gets rank of row

Parameters
rowLP row

Definition at line 17384 of file lp.c.

References NULL, and SCIP_Row::rank.

Referenced by addCut(), addOrigRow(), computeCut(), createCGCutCMIR(), createCGCutStrongCG(), evaluateCutNumerics(), getVarRank(), mod2MatrixTransformContRows(), and SCIPapplyLockFixings().

◆ SCIProwIsIntegral()

SCIP_Bool SCIProwIsIntegral ( SCIP_ROW row)

returns TRUE iff the activity of the row (without the row's constant) is always integral in a feasible solution

Parameters
rowLP row

Definition at line 17394 of file lp.c.

References SCIP_Row::integral, and NULL.

Referenced by buildMod2Matrix(), computeCut(), createCGMIPprimalsols(), createSubscip(), getGMIFromRow(), mod2MatrixTransformContRows(), and SCIP_DECL_SEPAEXECLP().

◆ SCIProwIsLocal()

◆ SCIProwIsModifiable()

◆ SCIProwIsRemovable()

SCIP_Bool SCIProwIsRemovable ( SCIP_ROW row)

returns TRUE iff row is removable from the LP (due to aging or cleanup)

Parameters
rowLP row

Definition at line 17424 of file lp.c.

References NULL, and SCIP_Row::removable.

Referenced by cutpoolDelCut(), SCIPcutpoolAddNewRow(), and SCIPlpWriteMip().

◆ SCIProwGetOrigintype()

SCIP_ROWORIGINTYPE SCIProwGetOrigintype ( SCIP_ROW row)

returns type of origin that created the row

Parameters
rowLP row

Definition at line 17434 of file lp.c.

References NULL, and SCIP_Row::origintype.

Referenced by storeCuts().

◆ SCIProwGetOriginConshdlr()

SCIP_CONSHDLR* SCIProwGetOriginConshdlr ( SCIP_ROW row)

returns origin constraint handler that created the row (NULL if not available)

Parameters
rowLP row

Definition at line 17459 of file lp.c.

References NULL, SCIP_Row::origin, SCIP_Row::origintype, SCIP_ROWORIGINTYPE_CONS, SCIP_ROWORIGINTYPE_CONSHDLR, and SCIPconsGetHdlr().

Referenced by getDualBranchscore(), and SCIPcutpoolSeparate().

◆ SCIProwGetOriginCons()

SCIP_CONS* SCIProwGetOriginCons ( SCIP_ROW row)

returns origin constraint that created the row (NULL if not available)

Parameters
rowLP row

Definition at line 17444 of file lp.c.

References NULL, SCIP_Row::origin, SCIP_Row::origintype, and SCIP_ROWORIGINTYPE_CONS.

◆ SCIProwGetOriginSepa()

SCIP_SEPA* SCIProwGetOriginSepa ( SCIP_ROW row)

returns origin separator that created the row (NULL if not available)

Parameters
rowLP row

Definition at line 17479 of file lp.c.

References NULL, SCIP_Row::origin, SCIP_Row::origintype, and SCIP_ROWORIGINTYPE_SEPA.

Referenced by computeCut(), createSubscip(), SCIPcutpoolSeparate(), SCIPsepastoreAddCut(), sepastoreDelCut(), and storeSuitableRows().

◆ SCIProwIsInGlobalCutpool()

SCIP_Bool SCIProwIsInGlobalCutpool ( SCIP_ROW row)

returns TRUE iff row is member of the global cut pool

Parameters
rowLP row

Definition at line 17494 of file lp.c.

References SCIP_Row::inglobalcutpool, and NULL.

Referenced by scoring().

◆ SCIProwGetLPPos()

◆ SCIProwGetLPDepth()

int SCIProwGetLPDepth ( SCIP_ROW row)

gets depth in the tree where the row entered the LP, or -1 if it is not in LP

Parameters
rowLP row

Definition at line 17515 of file lp.c.

References SCIP_Row::lpdepth, SCIP_Row::lppos, and NULL.

Referenced by getDualProof(), and getFarkasProof().

◆ SCIProwIsInLP()

◆ SCIProwGetActiveLPCount()

SCIP_Longint SCIProwGetActiveLPCount ( SCIP_ROW row)

returns the number of times that this row has been sharp in an optimal LP solution

Parameters
rowrow

Definition at line 17548 of file lp.c.

References SCIP_Row::activeinlpcounter, and NULL.

Referenced by SCIPcutGetLPActivityQuot().

◆ SCIProwGetNLPsAfterCreation()

SCIP_Longint SCIProwGetNLPsAfterCreation ( SCIP_ROW row)

returns the number of LPs since this row has been created

Parameters
rowrow

Definition at line 17558 of file lp.c.

References SCIP_Row::nlpsaftercreation, and NULL.

Referenced by SCIPcutGetLPActivityQuot().

◆ SCIProwChgRank()

void SCIProwChgRank ( SCIP_ROW row,
int  rank 
)

changes the rank of LP row

Parameters
rowLP row
ranknew value for rank

Definition at line 17537 of file lp.c.

References NULL, and SCIP_Row::rank.

Referenced by addCut(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), generateOddCycleCut(), generateZerohalfCut(), newsolCliqueAddRow(), and SCIP_DECL_SEPAEXECLP().

◆ SCIPcreateRowConshdlr()

SCIP_RETCODE SCIPcreateRowConshdlr ( SCIP scip,
SCIP_ROW **  row,
SCIP_CONSHDLR conshdlr,
const char *  name,
int  len,
SCIP_COL **  cols,
SCIP_Real vals,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row from a constraint handler

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to row
conshdlrconstraint handler that creates the row
namename of row
lennumber of nonzeros in the row
colsarray with columns of row entries
valsarray with coefficients of row entries
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1225 of file scip_lp.c.

References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIP_ROWORIGINTYPE_CONSHDLR, SCIPcheckStage(), SCIProwCreate(), Scip::set, Scip::stat, and TRUE.

◆ SCIPcreateRowCons()

SCIP_RETCODE SCIPcreateRowCons ( SCIP scip,
SCIP_ROW **  row,
SCIP_CONS cons,
const char *  name,
int  len,
SCIP_COL **  cols,
SCIP_Real vals,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row from a constraint

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to row
consconstraint that creates the row
namename of row
lennumber of nonzeros in the row
colsarray with columns of row entries
valsarray with coefficients of row entries
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1259 of file scip_lp.c.

References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIP_ROWORIGINTYPE_CONS, SCIPcheckStage(), SCIProwCreate(), Scip::set, Scip::stat, and TRUE.

◆ SCIPcreateRowSepa()

SCIP_RETCODE SCIPcreateRowSepa ( SCIP scip,
SCIP_ROW **  row,
SCIP_SEPA sepa,
const char *  name,
int  len,
SCIP_COL **  cols,
SCIP_Real vals,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row from a separator

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to row
sepaseparator that creates the row
namename of row
lennumber of nonzeros in the row
colsarray with columns of row entries
valsarray with coefficients of row entries
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1293 of file scip_lp.c.

References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIP_ROWORIGINTYPE_SEPA, SCIPcheckStage(), SCIProwCreate(), Scip::set, Scip::stat, and TRUE.

◆ SCIPcreateRowUnspec()

SCIP_RETCODE SCIPcreateRowUnspec ( SCIP scip,
SCIP_ROW **  row,
const char *  name,
int  len,
SCIP_COL **  cols,
SCIP_Real vals,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row from an unspecified source

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to row
namename of row
lennumber of nonzeros in the row
colsarray with columns of row entries
valsarray with coefficients of row entries
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1327 of file scip_lp.c.

References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIP_ROWORIGINTYPE_UNSPEC, SCIPcheckStage(), SCIProwCreate(), Scip::set, Scip::stat, and TRUE.

Referenced by SCIPcreateRow().

◆ SCIPcreateRow()

SCIP_RETCODE SCIPcreateRow ( SCIP scip,
SCIP_ROW **  row,
const char *  name,
int  len,
SCIP_COL **  cols,
SCIP_Real vals,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row

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 in one of the following stages of the SCIP solving process:
Deprecated:
Please use SCIPcreateRowConshdlr() or SCIPcreateRowSepa() when calling from a constraint handler or separator in order to facilitate correct statistics. If the call is from neither a constraint handler or separator, use SCIPcreateRowUnspec().

creates and captures an LP row

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 in one of the following stages of the SCIP solving process:
Deprecated:
Please use SCIPcreateRowConshdlr() or SCIPcreateRowSepa() when calling from a constraint handler or separator in order to facilitate correct statistics. If the call is from neither a constraint handler or separator, use SCIPcreateRowUnspec().
Parameters
scipSCIP data structure
rowpointer to row
namename of row
lennumber of nonzeros in the row
colsarray with columns of row entries
valsarray with coefficients of row entries
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1361 of file scip_lp.c.

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

◆ SCIPcreateEmptyRowConshdlr()

SCIP_RETCODE SCIPcreateEmptyRowConshdlr ( SCIP scip,
SCIP_ROW **  row,
SCIP_CONSHDLR conshdlr,
const char *  name,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row without any coefficients from a constraint handler

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to row
conshdlrconstraint handler that creates the row
namename of row
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1391 of file scip_lp.c.

References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIP_ROWORIGINTYPE_CONSHDLR, SCIPcheckStage(), SCIProwCreate(), Scip::set, Scip::stat, and TRUE.

Referenced by createAndAddTransferredCut(), createDisaggrRow(), createRow(), extendToCover(), generateAndApplyBendersIntegerCuts(), generateAndApplyBendersNogoodCut(), generateBoundInequalityFromSOS1Nodes(), LOPseparate(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSINITLP(), SCIPgenerateAndApplyBendersOptCut(), SCIPgetRowprepRowConshdlr(), sepaImplBoundCutsSOS1(), separateSCIs(), separateSequLiftedExtendedWeightInequality(), separateSupLiftedMinimalCoverInequality(), and sepaSubtour().

◆ SCIPcreateEmptyRowCons()

SCIP_RETCODE SCIPcreateEmptyRowCons ( SCIP scip,
SCIP_ROW **  row,
SCIP_CONS cons,
const char *  name,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row without any coefficients from a constraint

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to row
consconstraint that creates the row
namename of row
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1422 of file scip_lp.c.

References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIP_ROWORIGINTYPE_CONS, SCIPcheckStage(), SCIProwCreate(), Scip::set, Scip::stat, and TRUE.

Referenced by addOrbisackCover(), addOrbisackInequality(), addRelaxation(), addSymresackInequality(), createCapacityRestriction(), createCapacityRestrictionIntvars(), createCoverCutsTimepoint(), createRelaxation(), createRow(), createRows(), generateRowCardinality(), generateRowSOS2(), initLP(), SCIP_DECL_CONSINITLP(), SCIPgetRowprepRowCons(), separateCons(), separateCoversOrbisack(), separateIndicators(), separatePerspective(), and separateSequLiftedMinimalCoverInequality().

◆ SCIPcreateEmptyRowSepa()

SCIP_RETCODE SCIPcreateEmptyRowSepa ( SCIP scip,
SCIP_ROW **  row,
SCIP_SEPA sepa,
const char *  name,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row without any coefficients from a separator

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to row
sepaseparator that creates the row
namename of row
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1453 of file scip_lp.c.

References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIP_ROWORIGINTYPE_SEPA, SCIPcheckStage(), SCIProwCreate(), Scip::set, Scip::stat, and TRUE.

Referenced by addCut(), addPathCuts(), addSubtourCuts(), addTourCuts(), computeCut(), computeRltCut(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), createObjRow(), createPartitionCut(), generateCut(), generateDisjCutSOS1(), generateOddCycleCut(), generateZerohalfCut(), newsolCliqueAddRow(), SCIP_DECL_SEPAEXECLP(), SCIPgetRowprepRowSepa(), separateCuts(), separateMcCormickImplicit(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), and separateSupLiftedMinimalCoverInequality().

◆ SCIPcreateEmptyRowUnspec()

SCIP_RETCODE SCIPcreateEmptyRowUnspec ( SCIP scip,
SCIP_ROW **  row,
const char *  name,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row without any coefficients from an unspecified source

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to row
namename of row
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1482 of file scip_lp.c.

References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIP_ROWORIGINTYPE_UNSPEC, SCIPcheckStage(), SCIProwCreate(), Scip::set, Scip::stat, and TRUE.

Referenced by SCIPcreateEmptyRow(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), and solveBilinearLP().

◆ SCIPcreateEmptyRow()

SCIP_RETCODE SCIPcreateEmptyRow ( SCIP scip,
SCIP_ROW **  row,
const char *  name,
SCIP_Real  lhs,
SCIP_Real  rhs,
SCIP_Bool  local,
SCIP_Bool  modifiable,
SCIP_Bool  removable 
)

creates and captures an LP row without any coefficients

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 in one of the following stages of the SCIP solving process:
Deprecated:
Please use SCIPcreateEmptyRowConshdlr() or SCIPcreateEmptyRowSepa() when calling from a constraint handler or separator in order to facilitate correct statistics. If the call is from neither a constraint handler or separator, use SCIPcreateEmptyRowUnspec().

creates and captures an LP row without any coefficients

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 in one of the following stages of the SCIP solving process:
Deprecated:
Please use SCIPcreateEmptyRowConshdlr() or SCIPcreateEmptyRowSepa() when calling from a constraint handler or separator in order to facilitate correct statistics. If the call is from neither a constraint handler or separator, use SCIPcreateEmptyRowUnspec().
Parameters
scipSCIP data structure
rowpointer to row
namename of row
lhsleft hand side of row
rhsright hand side of row
localis row only valid locally?
modifiableis row modifiable during node processing (subject to column generation)?
removableshould the row be removed from the LP due to aging or cleanup?

Definition at line 1513 of file scip_lp.c.

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

◆ SCIPcaptureRow()

SCIP_RETCODE SCIPcaptureRow ( SCIP scip,
SCIP_ROW row 
)

increases usage counter of LP row

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowrow to capture

Definition at line 1540 of file scip_lp.c.

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

Referenced by mcfnetworkFill().

◆ SCIPreleaseRow()

SCIP_RETCODE SCIPreleaseRow ( SCIP scip,
SCIP_ROW **  row 
)

decreases usage counter of LP row, and frees memory if necessary

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowpointer to LP row

Definition at line 1562 of file scip_lp.c.

References FALSE, Scip::lp, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwRelease(), Scip::set, and TRUE.

Referenced by addCut(), addOrbisackCover(), addOrbisackInequality(), addPathCuts(), addSubtourCuts(), addSymresackInequality(), addTightEstimatorCut(), addTourCuts(), aggregation(), computeCut(), consdataFree(), consdataFreeRows(), createAndAddTransferredCut(), createCapacityRestrictionIntvars(), createCGCutCMIR(), createCGCutDirect(), createCGCuts(), createCGCutStrongCG(), createRow(), doSeparation(), extendToCover(), generateAndApplyBendersIntegerCuts(), generateAndApplyBendersNogoodCut(), generateOddCycleCut(), generateZerohalfCut(), initLP(), initsepaBoundInequalityFromCardinality(), initsepaBoundInequalityFromSOS1Cons(), LOPseparate(), mcfnetworkFree(), newsolCliqueAddRow(), SCIP_DECL_CONSDELETE(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSEXITSOL(), SCIP_DECL_CONSINITLP(), SCIP_DECL_CONSINITSOL(), SCIP_DECL_NLHDLRENFO(), SCIP_DECL_NLHDLREXITSEPA(), SCIP_DECL_NLHDLRINITSEPA(), SCIP_DECL_SEPAEXECLP(), SCIP_DECL_SEPAEXITSOL(), SCIPgenerateAndApplyBendersOptCut(), SCIPprocessRowprepNonlinear(), sepaImplBoundCutsSOS1(), separateCons(), separateCoversOrbisack(), separateCuts(), separateDeterminant(), separateIndicators(), separateMcCormickImplicit(), separatePerspective(), separateRltCuts(), separateSCIs(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), sepaSubtour(), and solveBilinearLP().

◆ SCIPchgRowLhs()

SCIP_RETCODE SCIPchgRowLhs ( SCIP scip,
SCIP_ROW row,
SCIP_Real  lhs 
)

changes left hand side of LP row

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
lhsnew left hand side

Definition at line 1583 of file scip_lp.c.

References Scip::eventqueue, FALSE, Scip::lp, SCIP_Row::lppos, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPlpDiving(), SCIProwChgLhs(), Scip::set, and TRUE.

Referenced by computeNogoodCut(), computeRltCut(), computeStandardIntegerOptCut(), generateAndApplyBendersIntegerCuts(), generateCut(), handleNewVariableSOS2(), SCIP_DECL_NLHDLRINITSEPA(), and separateMcCormickImplicit().

◆ SCIPchgRowRhs()

SCIP_RETCODE SCIPchgRowRhs ( SCIP scip,
SCIP_ROW row,
SCIP_Real  rhs 
)

changes right hand side of LP row

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
rhsnew right hand side

Definition at line 1607 of file scip_lp.c.

References Scip::eventqueue, FALSE, Scip::lp, SCIP_Row::lppos, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPlpDiving(), SCIProwChgRhs(), Scip::set, and TRUE.

Referenced by computeCut(), computeRltCut(), generateCut(), generateOddCycleCut(), handleNewVariableSOS2(), SCIP_DECL_NLHDLRINITSEPA(), and separateMcCormickImplicit().

◆ SCIPcacheRowExtensions()

SCIP_RETCODE SCIPcacheRowExtensions ( SCIP scip,
SCIP_ROW row 
)

informs row, that all subsequent additions of variables to the row should be cached and not directly applied; after all additions were applied, SCIPflushRowExtensions() must be called; while the caching of row extensions is activated, information methods of the row give invalid results; caching should be used, if a row is build with SCIPaddVarToRow() calls variable by variable to increase the performance

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1635 of file scip_lp.c.

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

Referenced by addCut(), addOrbisackCover(), addOrbisackInequality(), addPathCuts(), addSubtourCuts(), addSymresackInequality(), addTourCuts(), computeCut(), computeRltCut(), createCapacityRestriction(), createCapacityRestrictionIntvars(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), createCoverCutsTimepoint(), createObjRow(), createPartitionCut(), createRow(), extendToCover(), generateCut(), generateDisjCutSOS1(), generateOddCycleCut(), generateZerohalfCut(), LOPseparate(), newsolCliqueAddRow(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSINITLP(), SCIP_DECL_SEPAEXECLP(), sepaImplBoundCutsSOS1(), separateCons(), separateCoversOrbisack(), separateIndicators(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), and sepaSubtour().

◆ SCIPflushRowExtensions()

SCIP_RETCODE SCIPflushRowExtensions ( SCIP scip,
SCIP_ROW row 
)

◆ SCIPaddVarToRow()

SCIP_RETCODE SCIPaddVarToRow ( SCIP scip,
SCIP_ROW row,
SCIP_VAR var,
SCIP_Real  val 
)

resolves variable to columns and adds them with the coefficient to the row

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.
Attention
If the absolute value of val is below the SCIP epsilon tolerance, the variable will not added.
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Note
In case calling this method in the enforcement process of an lp solution, it might be that some variables, that were not yet in the LP (e.g. dynamic columns) will change their lp solution value returned by SCIP. For example, a variable, which has a negative objective value, that has no column in the lp yet, is in the lp solution on its upper bound (variables with status SCIP_VARSTATUS_LOOSE are in an lp solution on it's best bound), but creating the column, changes the solution value (variable than has status SCIP_VARSTATUS_COLUMN, and the initialization sets the lp solution value) to 0.0. (This leads to the conclusion that, if a constraint was violated, the linear relaxation might not be violated anymore.)
When several variables are added to a row with the use of this function, performance can be improved by calling SCIPcacheRowExtensions() before these additions and SCIPflushRowExtensions() after.

resolves variable to columns and adds them with the coefficient to the row

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.
Attention
If the absolute value of val is below the SCIP epsilon tolerance, the variable will not added.
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Note
In case calling this method in the enforcement process of an lp solution, it might be that some variables, that were not yet in the LP (e.g. dynamic columns) will change their lp solution value returned by SCIP. For example, a variable, which has a negative objective value, that has no column in the lp yet, is in the lp solution on its upper bound (variables with status SCIP_VARSTATUS_LOOSE are in an lp solution on it's best bound), but creating the column, changes the solution value (variable than has status SCIP_VARSTATUS_COLUMN, and the initialization sets the lp solution value) to 0.0. (This leads to the conclusion that, if a constraint was violated, the linear relaxation might not be violated anymore.)
If the variable being added is FIXED (as given by the status SCIP_VARSTATUS_FIXED), then the variable is not added to the row, but the corresponding constant is added. Similarly, if the input variable is aggregated (as given by the status SCIP_VARSTATUS_AGGREGATED), then the input variable is substituted with its aggregation. For other cases, and to better understand the function behavior, please check the code of SCIPvarAddToRow.
When several variables are added to a row with the use of this function, performance can be improved by calling SCIPcacheRowExtensions() before these additions and SCIPflushRowExtensions() after.
Parameters
scipSCIP data structure
rowLP row
varproblem variable
valvalue of coefficient

Definition at line 1698 of file scip_lp.c.

References Scip::eventqueue, FALSE, Scip::lp, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPvarAddToRow(), Scip::set, Scip::stat, Scip::transprob, and TRUE.

Referenced by addAuxiliaryVariableToCut(), addBilinearTermToCut(), addCoef(), addCut(), addFacetToCut(), addLinearTermToCut(), addOrbisackCover(), addOrbisackInequality(), addPathCuts(), addRelaxation(), addRltTerm(), addSubtourCuts(), addSymresackInequality(), addTourCuts(), computeNogoodCut(), computeRltCut(), computeStandardIntegerOptCut(), createAndAddTransferredCut(), createCapacityRestriction(), createCapacityRestrictionIntvars(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), createCoverCutsTimepoint(), createDisaggrRow(), createObjRow(), createPartitionCut(), createRelaxation(), createRow(), createRows(), extendToCover(), generateCut(), generateDisjCutSOS1(), generateOddCycleCut(), generateZerohalfCut(), handleNewVariableCardinality(), handleNewVariableSOS1(), handleNewVariableSOS2(), initLP(), LOPseparate(), newsolCliqueAddRow(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSINITLP(), SCIP_DECL_EVENTEXEC(), SCIP_DECL_SEPAEXECLP(), SCIPgenerateAndApplyBendersOptCut(), sepaImplBoundCutsSOS1(), separateCons(), separateCoversOrbisack(), separateIndicators(), separateMcCormickImplicit(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), sepaSubtour(), and solveBilinearLP().

◆ SCIPaddVarsToRow()

SCIP_RETCODE SCIPaddVarsToRow ( SCIP scip,
SCIP_ROW row,
int  nvars,
SCIP_VAR **  vars,
SCIP_Real vals 
)

resolves variables to columns and adds them with the coefficients to the row; this method caches the row extensions and flushes them afterwards to gain better performance

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.
Attention
If a coefficients absolute value is below the SCIP epsilon tolerance, the variable with its value is not added.
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
nvarsnumber of variables to add to the row
varsproblem variables to add
valsvalues of coefficients

Definition at line 1724 of file scip_lp.c.

References Scip::eventqueue, FALSE, Scip::lp, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwDelaySort(), SCIProwEnsureSize(), SCIProwForceSort(), SCIProwGetNNonz(), SCIPvarAddToRow(), Scip::set, Scip::stat, Scip::transprob, and TRUE.

Referenced by addCut(), generateBoundInequalityFromSOS1Nodes(), generateRowCardinality(), initLP(), SCIPgenerateAndApplyBendersOptCut(), SCIPgetRowprepRowCons(), SCIPgetRowprepRowConshdlr(), SCIPgetRowprepRowSepa(), separatePerspective(), and separateSCIs().

◆ SCIPaddVarsToRowSameCoef()

SCIP_RETCODE SCIPaddVarsToRowSameCoef ( SCIP scip,
SCIP_ROW row,
int  nvars,
SCIP_VAR **  vars,
SCIP_Real  val 
)

resolves variables to columns and adds them with the same single coefficient to the row; this method caches the row extensions and flushes them afterwards to gain better performance

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.
Attention
If the absolute value of val is below the SCIP epsilon tolerance, the variables will not added.
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
nvarsnumber of variables to add to the row
varsproblem variables to add
valunique value of all coefficients

Definition at line 1770 of file scip_lp.c.

References Scip::eventqueue, FALSE, Scip::lp, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwDelaySort(), SCIProwEnsureSize(), SCIProwForceSort(), SCIProwGetNNonz(), SCIPvarAddToRow(), Scip::set, Scip::stat, Scip::transprob, and TRUE.

Referenced by addRelaxation(), createRelaxation(), createRow(), createRows(), and generateRowSOS2().

◆ SCIPcalcRowIntegralScalar()

SCIP_RETCODE SCIPcalcRowIntegralScalar ( SCIP scip,
SCIP_ROW row,
SCIP_Real  mindelta,
SCIP_Real  maxdelta,
SCIP_Longint  maxdnom,
SCIP_Real  maxscale,
SCIP_Bool  usecontvars,
SCIP_Real intscalar,
SCIP_Bool success 
)

tries to find a value, such that all row coefficients, if scaled with this value become integral

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
mindeltaminimal relative allowed difference of scaled coefficient s*c and integral i
maxdeltamaximal relative allowed difference of scaled coefficient s*c and integral i
maxdnommaximal denominator allowed in rational numbers
maxscalemaximal allowed scalar
usecontvarsshould the coefficients of the continuous variables also be made integral?
intscalarpointer to store scalar that would make the coefficients integral, or NULL
successstores whether returned value is valid

Definition at line 1812 of file scip_lp.c.

References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwCalcIntegralScalar(), Scip::set, and TRUE.

◆ SCIPmakeRowIntegral()

SCIP_RETCODE SCIPmakeRowIntegral ( SCIP scip,
SCIP_ROW row,
SCIP_Real  mindelta,
SCIP_Real  maxdelta,
SCIP_Longint  maxdnom,
SCIP_Real  maxscale,
SCIP_Bool  usecontvars,
SCIP_Bool success 
)

tries to scale row, s.t. all coefficients (of integer variables) become integral

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
mindeltaminimal relative allowed difference of scaled coefficient s*c and integral i
maxdeltamaximal relative allowed difference of scaled coefficient s*c and integral i
maxdnommaximal denominator allowed in rational numbers
maxscalemaximal value to scale row with
usecontvarsshould the coefficients of the continuous variables also be made integral?
successstores whether row could be made rational

Definition at line 1841 of file scip_lp.c.

References Scip::eventqueue, FALSE, Scip::lp, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwMakeIntegral(), Scip::set, Scip::stat, and TRUE.

Referenced by addCut(), createCGCutCMIR(), createCGCutStrongCG(), evaluateCutNumerics(), and generateDisjCutSOS1().

◆ SCIPmarkRowNotRemovableLocal()

void SCIPmarkRowNotRemovableLocal ( SCIP scip,
SCIP_ROW row 
)

marks a row to be not removable from the LP in the current node

Precondition
this method can be called in the following stage of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1865 of file scip_lp.c.

References FALSE, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwMarkNotRemovableLocal(), Scip::stat, and TRUE.

Referenced by SCIP_DECL_NLHDLRENFO(), and SCIPprocessRowprepNonlinear().

◆ SCIPgetRowNumIntCols()

int SCIPgetRowNumIntCols ( SCIP scip,
SCIP_ROW row 
)

returns number of integral columns in the row

Returns
number of integral columns in the row
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1883 of file scip_lp.c.

References FALSE, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetNumIntCols(), Scip::set, and TRUE.

Referenced by addCut(), evaluateCutNumerics(), and scoring().

◆ SCIPgetRowMinCoef()

SCIP_Real SCIPgetRowMinCoef ( SCIP scip,
SCIP_ROW row 
)

returns minimal absolute value of row vector's non-zero coefficients

Returns
minimal absolute value of row vector's non-zero coefficients
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1901 of file scip_lp.c.

References FALSE, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetMinval(), Scip::set, and TRUE.

Referenced by addCut(), computeCut(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), SCIP_DECL_NLHDLRENFO(), and SCIP_DECL_SEPAEXECLP().

◆ SCIPgetRowMaxCoef()

SCIP_Real SCIPgetRowMaxCoef ( SCIP scip,
SCIP_ROW row 
)

returns maximal absolute value of row vector's non-zero coefficients

Returns
maximal absolute value of row vector's non-zero coefficients
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1919 of file scip_lp.c.

References FALSE, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetMaxval(), Scip::set, and TRUE.

Referenced by addCut(), addPathCuts(), addTourCuts(), computeCut(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), generateClusterCuts(), initMatrix(), nodepairqueueCreate(), relaxVar(), SCIP_DECL_NLHDLRENFO(), and SCIP_DECL_SEPAEXECLP().

◆ SCIPgetRowMinActivity()

SCIP_Real SCIPgetRowMinActivity ( SCIP scip,
SCIP_ROW row 
)

returns the minimal activity of a row w.r.t. the column's bounds

Returns
the minimal activity of a row w.r.t. the column's bounds
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1936 of file scip_lp.c.

References FALSE, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetMinActivity(), Scip::set, Scip::stat, and TRUE.

Referenced by generateLiftedFlowCoverCut(), and SCIPapplyLockFixings().

◆ SCIPgetRowMaxActivity()

SCIP_Real SCIPgetRowMaxActivity ( SCIP scip,
SCIP_ROW row 
)

returns the maximal activity of a row w.r.t. the column's bounds

Returns
the maximal activity of a row w.r.t. the column's bounds
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1953 of file scip_lp.c.

References FALSE, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetMaxActivity(), Scip::set, Scip::stat, and TRUE.

Referenced by generateLiftedFlowCoverCut(), and SCIPapplyLockFixings().

◆ SCIPrecalcRowLPActivity()

SCIP_RETCODE SCIPrecalcRowLPActivity ( SCIP scip,
SCIP_ROW row 
)

recalculates the activity of a row in the last LP solution

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1971 of file scip_lp.c.

References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwRecalcLPActivity(), Scip::stat, and TRUE.

◆ SCIPgetRowLPActivity()

SCIP_Real SCIPgetRowLPActivity ( SCIP scip,
SCIP_ROW row 
)

returns the activity of a row in the last LP solution

Returns
activity of a row in the last LP solution
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 1990 of file scip_lp.c.

References FALSE, Scip::lp, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetLPActivity(), Scip::set, Scip::stat, and TRUE.

Referenced by addCut(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), createCGMIPprimalsols(), createSubscip(), generateDisjCutSOS1(), getGMIFromRow(), getSimplexCoefficients(), SCIP_DECL_SEPAEXECLP(), and separateCons().

◆ SCIPgetRowLPFeasibility()

SCIP_Real SCIPgetRowLPFeasibility ( SCIP scip,
SCIP_ROW row 
)

returns the feasibility of a row in the last LP solution

Returns
the feasibility of a row in the last LP solution: negative value means infeasibility
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 2007 of file scip_lp.c.

References FALSE, Scip::lp, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetLPFeasibility(), Scip::set, Scip::stat, and TRUE.

Referenced by calcBranchScore(), nodepartitionIsConnected(), separateCons(), separateConsBinaryRepresentation(), and separateCoverCutsCons().

◆ SCIPrecalcRowPseudoActivity()

SCIP_RETCODE SCIPrecalcRowPseudoActivity ( SCIP scip,
SCIP_ROW row 
)

recalculates the activity of a row for the current pseudo solution

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 2025 of file scip_lp.c.

References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwRecalcPseudoActivity(), Scip::stat, and TRUE.

◆ SCIPgetRowPseudoActivity()

SCIP_Real SCIPgetRowPseudoActivity ( SCIP scip,
SCIP_ROW row 
)

returns the activity of a row for the current pseudo solution

Returns
the activity of a row for the current pseudo solution
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 2044 of file scip_lp.c.

References FALSE, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetPseudoActivity(), Scip::set, Scip::stat, and TRUE.

◆ SCIPgetRowPseudoFeasibility()

SCIP_Real SCIPgetRowPseudoFeasibility ( SCIP scip,
SCIP_ROW row 
)

returns the feasibility of a row for the current pseudo solution: negative value means infeasibility

Returns
the feasibility of a row for the current pseudo solution: negative value means infeasibility
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 2061 of file scip_lp.c.

References FALSE, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetPseudoFeasibility(), Scip::set, Scip::stat, and TRUE.

◆ SCIPrecalcRowActivity()

SCIP_RETCODE SCIPrecalcRowActivity ( SCIP scip,
SCIP_ROW row 
)

recalculates the activity of a row in the last LP or pseudo solution

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 2079 of file scip_lp.c.

References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwRecalcLPActivity(), SCIProwRecalcPseudoActivity(), SCIPtreeHasCurrentNodeLP(), Scip::stat, Scip::tree, and TRUE.

◆ SCIPgetRowActivity()

SCIP_Real SCIPgetRowActivity ( SCIP scip,
SCIP_ROW row 
)

returns the activity of a row in the last LP or pseudo solution

Returns
the activity of a row in the last LP or pseudo solution
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 2101 of file scip_lp.c.

References FALSE, Scip::lp, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetLPActivity(), SCIProwGetPseudoActivity(), SCIPtreeHasCurrentNodeLP(), Scip::set, Scip::stat, Scip::tree, and TRUE.

Referenced by addRowToCut(), createRows(), SCIP_DECL_BRANCHEXECLP(), SCIP_DECL_HEUREXEC(), and SCIP_DECL_SEPAEXECLP().

◆ SCIPgetRowFeasibility()

SCIP_Real SCIPgetRowFeasibility ( SCIP scip,
SCIP_ROW row 
)

returns the feasibility of a row in the last LP or pseudo solution

Returns
the feasibility of a row in the last LP or pseudo solution
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 2121 of file scip_lp.c.

References FALSE, Scip::lp, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetLPFeasibility(), SCIProwGetPseudoFeasibility(), SCIPtreeHasCurrentNodeLP(), Scip::set, Scip::stat, Scip::tree, and TRUE.

Referenced by generateClusterCuts(), nodepairqueueCreate(), separateMcCormickImplicit(), and separateRltCuts().

◆ SCIPgetRowSolActivity()

SCIP_Real SCIPgetRowSolActivity ( SCIP scip,
SCIP_ROW row,
SCIP_SOL sol 
)

returns the activity of a row for the given primal solution

Returns
the activitiy of a row for the given primal solution
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
solprimal CIP solution

Definition at line 2141 of file scip_lp.c.

References FALSE, Scip::lp, NULL, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetLPActivity(), SCIProwGetPseudoActivity(), SCIProwGetSolActivity(), SCIPtreeHasCurrentNodeLP(), Scip::set, Scip::stat, Scip::tree, and TRUE.

Referenced by addCut(), aggregation(), applyRepair(), buildMod2Matrix(), computeCut(), computeNogoodCut(), computeStandardIntegerOptCut(), getNActiveConsScore(), mod2MatrixTransformContRows(), SCIP_DECL_HEUREXEC(), SCIPcutGenerationHeuristicCMIR(), SCIPgenerateAndApplyBendersOptCut(), and separateCuts().

◆ SCIPgetRowSolFeasibility()

SCIP_Real SCIPgetRowSolFeasibility ( SCIP scip,
SCIP_ROW row,
SCIP_SOL sol 
)

returns the feasibility of a row for the given primal solution

Returns
the feasibility of a row for the given primal solution
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
solprimal CIP solution

Definition at line 2164 of file scip_lp.c.

References FALSE, Scip::lp, NULL, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetLPFeasibility(), SCIProwGetPseudoFeasibility(), SCIProwGetSolFeasibility(), SCIPtreeHasCurrentNodeLP(), Scip::set, Scip::stat, Scip::tree, and TRUE.

Referenced by extendToCover(), generateClusterCuts(), SCIP_DECL_NLHDLRENFO(), separateCons(), separateConsBinaryRepresentation(), and separateCoverCutsCons().

◆ SCIPgetRowObjParallelism()

SCIP_Real SCIPgetRowObjParallelism ( SCIP scip,
SCIP_ROW row 
)

returns the parallelism of row with objective function

Returns
1 is returned if the row is parallel to the objective function and 0 if it is orthogonal
Precondition
this method can be called in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row

Definition at line 2187 of file scip_lp.c.

References FALSE, Scip::lp, NULL, SCIP_CALL_ABORT, SCIPcheckStage(), SCIProwGetObjParallelism(), Scip::set, and TRUE.

Referenced by scoring().

◆ SCIPprintRow()

SCIP_RETCODE SCIPprintRow ( SCIP scip,
SCIP_ROW row,
FILE *  file 
)

output row to file stream via the message handler system

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 in one of the following stages of the SCIP solving process:

output row to file stream via the message handler system

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 in one of the following stages of the SCIP solving process:
Parameters
scipSCIP data structure
rowLP row
fileoutput file (or NULL for standard output)

Definition at line 2209 of file scip_lp.c.

References FALSE, Scip::messagehdlr, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIProwPrint(), and TRUE.

Referenced by addBoundCutSepa(), addCut(), addOrbisackCover(), addOrbisackInequality(), addPathCuts(), addRelaxation(), addSubtourCuts(), addTightEstimatorCut(), addTourCuts(), computeCut(), computeRltCut(), createCapacityRestriction(), createCapacityRestrictionIntvars(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), createObjRow(), createPartitionCut(), createRow(), extendToCover(), generateAndApplyBendersIntegerCuts(), generateAndApplyBendersNogoodCut(), generateBoundInequalityFromSOS1Nodes(), generateCut(), generateOddCycleCut(), generateRowCardinality(), generateRowSOS2(), initLP(), initMatrix(), initsepaBoundInequalityFromCardinality(), initsepaBoundInequalityFromSOS1Cons(), LOPseparate(), rowCalculateGauss(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSINITLP(), SCIP_DECL_CONSSEPALP(), SCIP_DECL_CONSSEPASOL(), SCIP_DECL_HEUREXEC(), SCIP_DECL_NLHDLRENFO(), SCIP_DECL_NLHDLRINITSEPA(), SCIP_DECL_SEPAEXECLP(), SCIPapplyLockFixings(), SCIPprocessRowprepNonlinear(), SCIProwCalcProbability(), sepaImplBoundCutsSOS1(), separateCons(), separateCoversOrbisack(), separateCuts(), separateIndicators(), separatePerspective(), and separateRltCuts().