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 941 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 5373 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 5388 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 7003 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 7719 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 7783 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 6011 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 17193 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 17246 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 17258 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 17268 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 17291 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 17306 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 17327 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 17337 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 17347 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 17357 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 17387 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 17397 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 17422 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 17407 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 17442 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 17457 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 17478 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 17511 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 17521 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 17500 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 1216 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 1250 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 1284 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 1318 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 1352 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 1382 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(), daExec(), dualascent_execPcMw(), extendToCover(), generateAndApplyBendersIntegerCuts(), generateAndApplyBendersNogoodCut(), generateBoundInequalityFromSOS1Nodes(), LOPseparate(), lpcutAdd(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSINITLP(), SCIPgenerateAndApplyBendersOptCut(), SCIPgetRowprepRowConshdlr(), SCIPStpAddContractionCut(), sep_flowBalance(), sep_flowEdgeOut(), sep_flowIn(), sep_flowTermIn(), sepaImplBoundCutsSOS1(), separateSCIs(), separateSequLiftedExtendedWeightInequality(), separateSupLiftedMinimalCoverInequality(), sepaspecial_pacliquesSeparate(), sepaspecial_pcimplicationsSeparate(), sepaspecial_vtimplicationsSeparate(), 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 1413 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 1444 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 1473 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 1504 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 1531 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 1553 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(), daExec(), doSeparation(), dualascent_execPcMw(), extendToCover(), generateAndApplyBendersIntegerCuts(), generateAndApplyBendersNogoodCut(), generateOddCycleCut(), generateZerohalfCut(), initLP(), initsepaBoundInequalityFromCardinality(), initsepaBoundInequalityFromSOS1Cons(), LOPseparate(), lpcutAdd(), 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(), SCIPStpAddContractionCut(), sep_flowBalance(), sep_flowEdgeOut(), sep_flowIn(), sep_flowTermIn(), sepaImplBoundCutsSOS1(), separateCons(), separateCoversOrbisack(), separateCuts(), separateDeterminant(), separateIndicators(), separateMcCormickImplicit(), separatePerspective(), separateRltCuts(), separateSCIs(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), sepaspecial_pacliquesSeparate(), sepaspecial_pcimplicationsSeparate(), sepaspecial_vtimplicationsSeparate(), 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 1574 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 1598 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 1626 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(), daExec(), dualascent_execPcMw(), extendToCover(), generateCut(), generateDisjCutSOS1(), generateOddCycleCut(), generateZerohalfCut(), LOPseparate(), lpcutAdd(), newsolCliqueAddRow(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSINITLP(), SCIP_DECL_SEPAEXECLP(), SCIPStpAddContractionCut(), sep_flowBalance(), sep_flowEdgeOut(), sep_flowIn(), sep_flowTermIn(), sepaImplBoundCutsSOS1(), separateCons(), separateCoversOrbisack(), separateIndicators(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), sepaspecial_pacliquesSeparate(), sepaspecial_pcimplicationsSeparate(), sepaspecial_vtimplicationsSeparate(), and sepaSubtour().

◆ SCIPflushRowExtensions()

SCIP_RETCODE SCIPflushRowExtensions ( SCIP scip,
SCIP_ROW row 
)

flushes all cached row extensions after a call of SCIPcacheRowExtensions() and merges coefficients with equal columns into a single coefficient

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 1649 of file scip_lp.c.

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

Referenced by addCut(), addOrbisackCover(), addOrbisackInequality(), addPathCuts(), addSubtourCuts(), addSymresackInequality(), addTourCuts(), computeCut(), computeRltCut(), createCapacityRestriction(), createCapacityRestrictionIntvars(), createCGCutCMIR(), createCGCutDirect(), createCGCutStrongCG(), createCoverCutsTimepoint(), createObjRow(), createPartitionCut(), createRow(), daExec(), dualascent_execPcMw(), extendToCover(), generateCut(), generateDisjCutSOS1(), generateOddCycleCut(), generateZerohalfCut(), LOPseparate(), lpcutAdd(), newsolCliqueAddRow(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSINITLP(), SCIP_DECL_SEPAEXECLP(), SCIPStpAddContractionCut(), sep_flowBalance(), sep_flowEdgeOut(), sep_flowIn(), sep_flowTermIn(), sepaImplBoundCutsSOS1(), separateCons(), separateCoversOrbisack(), separateIndicators(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), sepaspecial_pacliquesSeparate(), sepaspecial_pcimplicationsSeparate(), sepaspecial_vtimplicationsSeparate(), and sepaSubtour().

◆ 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.)

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.
Parameters
scipSCIP data structure
rowLP row
varproblem variable
valvalue of coefficient

Definition at line 1686 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(), daExec(), dualascent_execPcMw(), extendToCover(), generateCut(), generateDisjCutSOS1(), generateOddCycleCut(), generateZerohalfCut(), handleNewVariableCardinality(), handleNewVariableSOS1(), handleNewVariableSOS2(), initLP(), LOPseparate(), lpcutAdd(), newsolCliqueAddRow(), SCIP_DECL_CONSENFOLP(), SCIP_DECL_CONSINITLP(), SCIP_DECL_EVENTEXEC(), SCIP_DECL_SEPAEXECLP(), SCIPgenerateAndApplyBendersOptCut(), SCIPStpAddContractionCut(), sep_flowBalance(), sep_flowEdgeOut(), sep_flowIn(), sep_flowTermIn(), sepaImplBoundCutsSOS1(), separateCons(), separateCoversOrbisack(), separateIndicators(), separateMcCormickImplicit(), separateSequLiftedExtendedWeightInequality(), separateSequLiftedMinimalCoverInequality(), separateSupLiftedMinimalCoverInequality(), sepaspecial_pacliquesSeparate(), sepaspecial_pcimplicationsSeparate(), sepaspecial_vtimplicationsSeparate(), 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 1712 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 1758 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 1800 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 1829 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 1853 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 1871 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 1889 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 1907 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 1924 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 1941 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 1959 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 1978 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 1995 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 2013 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 2032 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 2049 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 2067 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 2089 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 2109 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 2129 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 2152 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 2175 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 2197 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(), lpcutAdd(), 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().