Detailed Description
methods for the creation and interaction with rows of the NLP relaxation
Function Documentation
◆ SCIPnlrowGetConstant()
SCIP_EXPORT SCIP_Real SCIPnlrowGetConstant | ( | SCIP_NLROW * | nlrow | ) |
gets constant
- Parameters
-
nlrow NLP row
Definition at line 3236 of file nlp.c.
References SCIP_NlRow::constant, and NULL.
Referenced by nlrowaggrCreate(), and SCIPcreateNlpiProb().
◆ SCIPnlrowGetNLinearVars()
SCIP_EXPORT int SCIPnlrowGetNLinearVars | ( | SCIP_NLROW * | nlrow | ) |
gets number of variables of linear part
- Parameters
-
nlrow NLP row
Definition at line 3246 of file nlp.c.
References SCIP_NlRow::nlinvars, and NULL.
Referenced by applyHeur(), computeGradient(), generateCut(), heurExec(), nlrowaggrCreate(), and SCIPcreateNlpiProb().
◆ SCIPnlrowGetLinearVars()
SCIP_EXPORT SCIP_VAR** SCIPnlrowGetLinearVars | ( | SCIP_NLROW * | nlrow | ) |
gets array with variables of linear part
- Parameters
-
nlrow NLP row
Definition at line 3256 of file nlp.c.
References SCIP_NlRow::linvars, and NULL.
Referenced by computeGradient(), generateCut(), nlrowaggrCreate(), and SCIPcreateNlpiProb().
◆ SCIPnlrowGetLinearCoefs()
SCIP_EXPORT SCIP_Real* SCIPnlrowGetLinearCoefs | ( | SCIP_NLROW * | nlrow | ) |
gets array with coefficients in linear part
- Parameters
-
nlrow NLP row
Definition at line 3266 of file nlp.c.
References SCIP_NlRow::lincoefs, and NULL.
Referenced by computeGradient(), generateCut(), nlrowaggrCreate(), and SCIPcreateNlpiProb().
◆ SCIPnlrowGetNQuadVars()
SCIP_EXPORT int SCIPnlrowGetNQuadVars | ( | SCIP_NLROW * | nlrow | ) |
gets number of quadratic variables in quadratic part
- Parameters
-
nlrow NLP row
Definition at line 3276 of file nlp.c.
References SCIP_NlRow::nquadvars, and NULL.
Referenced by computeGradient(), createMIP(), createTcliqueGraph(), doSeachEcAggr(), findAndStoreEcAggregations(), isCandidate(), nlrowaggrCreate(), SCIPaddQuadVarsToNlRow(), and searchEcAggrWithCliques().
◆ SCIPnlrowGetQuadVars()
SCIP_EXPORT SCIP_VAR** SCIPnlrowGetQuadVars | ( | SCIP_NLROW * | nlrow | ) |
gets quadratic variables in quadratic part
- Parameters
-
nlrow NLP row
Definition at line 3286 of file nlp.c.
References NULL, and SCIP_NlRow::quadvars.
Referenced by computeGradient(), computeInteriorPoint(), createMIP(), createTcliqueGraph(), doSeachEcAggr(), generateCut(), isCandidate(), nlrowaggrCreate(), processNlRow(), and SCIPcreateNlpiProb().
◆ SCIPnlrowSearchQuadVar()
SCIP_EXPORT int SCIPnlrowSearchQuadVar | ( | SCIP_NLROW * | nlrow, |
SCIP_VAR * | var | ||
) |
gives position of variable in quadvars array of row, or -1 if not found
- Parameters
-
nlrow nonlinear row var variable to search for
Definition at line 3296 of file nlp.c.
References SCIP_NlRow::nquadvars, NULL, SCIP_NlRow::quadvars, SCIP_NlRow::quadvarshash, SCIPhashmapExists(), and SCIPhashmapGetImageInt().
Referenced by createNlRow(), nlpDelVarPos(), nlrowRemoveFixedQuadVars(), nlrowRemoveFixedVar(), and SCIPnlrowAddQuadVar().
◆ SCIPnlrowGetNQuadElems()
SCIP_EXPORT int SCIPnlrowGetNQuadElems | ( | SCIP_NLROW * | nlrow | ) |
gets number of quadratic elements in quadratic part
- Parameters
-
nlrow NLP row
Definition at line 3323 of file nlp.c.
References SCIP_NlRow::nquadelems, and NULL.
Referenced by applyHeur(), computeGradient(), computeInteriorPoint(), createMIP(), createTcliqueGraph(), doSeachEcAggr(), generateCut(), heurExec(), isCandidate(), isNlobbtApplicable(), nlrowaggrCreate(), processNlRow(), SCIPaddQuadElementsToNlRow(), SCIPcreateNlpiProb(), searchEcAggrWithCliques(), storeAggrFromMIP(), storeNonlinearConvexNlrows(), and updateMIP().
◆ SCIPnlrowGetQuadElems()
SCIP_EXPORT SCIP_QUADELEM* SCIPnlrowGetQuadElems | ( | SCIP_NLROW * | nlrow | ) |
gets quadratic elements in quadratic part
- Parameters
-
nlrow NLP row
Definition at line 3333 of file nlp.c.
References NULL, and SCIP_NlRow::quadelems.
Referenced by computeGradient(), computeInteriorPoint(), createMIP(), createTcliqueGraph(), generateCut(), isCandidate(), nlrowaggrCreate(), processNlRow(), SCIPcreateNlpiProb(), searchEcAggrWithCliques(), storeAggrFromMIP(), and updateMIP().
◆ SCIPnlrowGetQuadData()
SCIP_EXPORT void SCIPnlrowGetQuadData | ( | SCIP_NLROW * | nlrow, |
int * | nquadvars, | ||
SCIP_VAR *** | quadvars, | ||
int * | nquadelems, | ||
SCIP_QUADELEM ** | quadelems | ||
) |
gets array with coefficients in linear part
- Parameters
-
nlrow NLP row nquadvars buffer to store number of variables in quadratic term, or NULL if not of interest quadvars buffer to store pointer to array of variables in quadratic term, or NULL if not of interest nquadelems buffer to store number of entries in quadratic term, or NULL if not of interest quadelems buffer to store pointer to array of entries in quadratic term, or NULL if not of interest
Definition at line 3343 of file nlp.c.
References SCIP_NlRow::nquadelems, SCIP_NlRow::nquadvars, NULL, SCIP_NlRow::quadelems, and SCIP_NlRow::quadvars.
◆ SCIPnlrowGetExprtree()
SCIP_EXPORT SCIP_EXPRTREE* SCIPnlrowGetExprtree | ( | SCIP_NLROW * | nlrow | ) |
gets expression tree
- Parameters
-
nlrow NLP row
Definition at line 3364 of file nlp.c.
References SCIP_NlRow::exprtree, and NULL.
Referenced by applyHeur(), computeGradient(), generateCut(), heurExec(), isCandidate(), isNlobbtApplicable(), processNlRow(), SCIPcreateNlpiProb(), and storeNonlinearConvexNlrows().
◆ SCIPnlrowGetLhs()
SCIP_EXPORT SCIP_Real SCIPnlrowGetLhs | ( | SCIP_NLROW * | nlrow | ) |
returns the left hand side of a nonlinear row
- Parameters
-
nlrow NLP row
Definition at line 3374 of file nlp.c.
References SCIP_NlRow::lhs, and NULL.
Referenced by computeMaxViolation(), findAndStoreEcAggregations(), findPointPosition(), generateCut(), isCandidate(), isNlobbtApplicable(), nlrowaggrCreate(), processNlRow(), SCIP_DECL_SEPAEXECLP(), SCIPcreateNlpiProb(), separateCuts(), and storeNonlinearConvexNlrows().
◆ SCIPnlrowGetRhs()
SCIP_EXPORT SCIP_Real SCIPnlrowGetRhs | ( | SCIP_NLROW * | nlrow | ) |
returns the right hand side of a nonlinear row
- Parameters
-
nlrow NLP row
Definition at line 3384 of file nlp.c.
References NULL, and SCIP_NlRow::rhs.
Referenced by computeMaxViolation(), findAndStoreEcAggregations(), findPointPosition(), generateCut(), improvePoint(), isCandidate(), isNlobbtApplicable(), nlrowaggrCreate(), processNlRow(), SCIP_DECL_SEPAEXECLP(), SCIPcreateNlpiProb(), separateCuts(), and storeNonlinearConvexNlrows().
◆ SCIPnlrowGetCurvature()
SCIP_EXPORT SCIP_EXPRCURV SCIPnlrowGetCurvature | ( | SCIP_NLROW * | nlrow | ) |
returns the curvature of a nonlinear row
- Parameters
-
nlrow NLP row
Definition at line 3394 of file nlp.c.
References SCIP_NlRow::curvature, and NULL.
Referenced by computeMaxViolation(), isNlobbtApplicable(), SCIPcreateNlpiProb(), and storeNonlinearConvexNlrows().
◆ SCIPnlrowSetCurvature()
SCIP_EXPORT void SCIPnlrowSetCurvature | ( | SCIP_NLROW * | nlrow, |
SCIP_EXPRCURV | curvature | ||
) |
sets the curvature of a nonlinear row
- Parameters
-
nlrow NLP row curvature curvature of NLP row
Definition at line 3403 of file nlp.c.
References SCIP_NlRow::curvature, and NULL.
Referenced by SCIPaddQuadElementsToNlRow(), SCIPaddQuadElementToNlRow(), and SCIPsetNlRowExprtree().
◆ SCIPnlrowGetName()
SCIP_EXPORT const char* SCIPnlrowGetName | ( | SCIP_NLROW * | nlrow | ) |
returns the name of a nonlinear row
- Parameters
-
nlrow NLP row
Definition at line 3413 of file nlp.c.
References SCIP_NlRow::name, and NULL.
Referenced by findPointPosition(), generateCut(), processNlRow(), SCIPcreateNlpiProb(), and separateCuts().
◆ SCIPnlrowGetNLPPos()
SCIP_EXPORT int SCIPnlrowGetNLPPos | ( | SCIP_NLROW * | nlrow | ) |
gets position of a nonlinear row in current NLP, or -1 if not in NLP
- Parameters
-
nlrow NLP row
Definition at line 3423 of file nlp.c.
References SCIP_NlRow::nlpindex, and NULL.
◆ SCIPnlrowIsInNLP()
SCIP_EXPORT SCIP_Bool SCIPnlrowIsInNLP | ( | SCIP_NLROW * | nlrow | ) |
returns TRUE iff row is member of current NLP
- Parameters
-
nlrow NLP row
Definition at line 3433 of file nlp.c.
References SCIP_NlRow::nlpindex, and NULL.
Referenced by computeCut(), isCandidate(), and isPossibleToComputeCut().
◆ SCIPnlrowGetDualsol()
SCIP_EXPORT SCIP_Real SCIPnlrowGetDualsol | ( | SCIP_NLROW * | nlrow | ) |
gets the dual NLP solution of a nlrow for a ranged constraint, the dual value is positive if the right hand side is active and negative if the left hand side is active
- Parameters
-
nlrow NLP row
Definition at line 3445 of file nlp.c.
References SCIP_NlRow::dualsol, SCIP_NlRow::nlpiindex, and NULL.
Referenced by SCIPapplyHeurDualval().
◆ SCIPcreateNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPcreateNlRow | ( | SCIP * | scip, |
SCIP_NLROW ** | nlrow, | ||
const char * | name, | ||
SCIP_Real | constant, | ||
int | nlinvars, | ||
SCIP_VAR ** | linvars, | ||
SCIP_Real * | lincoefs, | ||
int | nquadvars, | ||
SCIP_VAR ** | quadvars, | ||
int | nquadelems, | ||
SCIP_QUADELEM * | quadelems, | ||
SCIP_EXPRTREE * | expression, | ||
SCIP_Real | lhs, | ||
SCIP_Real | rhs, | ||
SCIP_EXPRCURV | curvature | ||
) |
creates and captures an NLP 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow buffer to store pointer to nonlinear row name name of nonlinear row constant constant nlinvars number of linear variables linvars linear variables, or NULL if nlinvars == 0 lincoefs linear coefficients, or NULL if nlinvars == 0 nquadvars number variables in quadratic terms quadvars variables in quadratic terms, or NULL if nquadvars == 0 nquadelems number of elements in quadratic term quadelems elements (i.e., monomials) in quadratic term, or NULL if nquadelems == 0 expression nonlinear expression, or NULL lhs left hand side rhs right hand side curvature curvature of the nonlinear row
Definition at line 1167 of file scip_nlp.c.
References FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowCreate(), Scip::set, and TRUE.
Referenced by addKnapsackConstraints(), addLinearConstraints(), addLogicOrConstraints(), addSetppcConstraints(), addVarboundConstraints(), createNlRow(), and SCIP_DECL_CONSINITSOL().
◆ SCIPcreateEmptyNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPcreateEmptyNlRow | ( | SCIP * | scip, |
SCIP_NLROW ** | nlrow, | ||
const char * | name, | ||
SCIP_Real | lhs, | ||
SCIP_Real | rhs | ||
) |
creates and captures an NLP nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow pointer to nonlinear row name name of nonlinear row lhs left hand side rhs right hand side
Definition at line 1203 of file scip_nlp.c.
References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_EXPRCURV_UNKNOWN, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowCreate(), Scip::set, and TRUE.
◆ SCIPcreateNlRowFromRow()
SCIP_EXPORT SCIP_RETCODE SCIPcreateNlRowFromRow | ( | SCIP * | scip, |
SCIP_NLROW ** | nlrow, | ||
SCIP_ROW * | row | ||
) |
creates and captures an NLP row from a linear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow pointer to nonlinear row row the linear row to copy
Definition at line 1229 of file scip_nlp.c.
References FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowCreateFromRow(), Scip::set, and TRUE.
◆ SCIPcaptureNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPcaptureNlRow | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow | ||
) |
increases usage counter of NLP nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow nonlinear row to capture
Definition at line 1252 of file scip_nlp.c.
References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowCapture(), and TRUE.
◆ SCIPreleaseNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPreleaseNlRow | ( | SCIP * | scip, |
SCIP_NLROW ** | nlrow | ||
) |
decreases usage counter of NLP nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow pointer to nonlinear row
Definition at line 1275 of file scip_nlp.c.
References FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowRelease(), Scip::set, and TRUE.
Referenced by addBilinearTerm(), addKnapsackConstraints(), addLinearCoef(), addLinearConstraints(), addLogicOrConstraints(), addQuadVarTerm(), addSetppcConstraints(), addVarboundConstraints(), chgLinearCoefPos(), consdataAddExprtrees(), consdataFree(), consdataSetExprtrees(), createNlRow(), delLinearCoefPos(), delQuadVarTermPos(), mergeAndCleanQuadVarTerms(), presolveDisaggregate(), presolveRemoveFixedVariables(), releaseHashmapNLPRows(), removeBilinearTermsPos(), replaceQuadVarTermPos(), SCIP_DECL_CONSDELETE(), SCIP_DECL_CONSEXITSOL(), and SCIP_DECL_CONSINITSOL().
◆ SCIPchgNlRowLhs()
SCIP_EXPORT SCIP_RETCODE SCIPchgNlRowLhs | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real | lhs | ||
) |
changes left hand side of NLP nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row lhs new left hand side
Definition at line 1297 of file scip_nlp.c.
References FALSE, Scip::nlp, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowChgLhs(), Scip::set, Scip::stat, and TRUE.
◆ SCIPchgNlRowRhs()
SCIP_EXPORT SCIP_RETCODE SCIPchgNlRowRhs | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real | rhs | ||
) |
changes right hand side of NLP nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row rhs new right hand side
Definition at line 1320 of file scip_nlp.c.
References FALSE, Scip::nlp, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowChgRhs(), Scip::set, Scip::stat, and TRUE.
Referenced by createNlRow().
◆ SCIPchgNlRowConstant()
SCIP_EXPORT SCIP_RETCODE SCIPchgNlRowConstant | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real | constant | ||
) |
changes constant of NLP nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row constant new value for constant
Definition at line 1343 of file scip_nlp.c.
References FALSE, Scip::nlp, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowChgConstant(), Scip::set, Scip::stat, and TRUE.
◆ SCIPaddLinearCoefToNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPaddLinearCoefToNlRow | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_VAR * | var, | ||
SCIP_Real | val | ||
) |
adds variable with a linear coefficient to the nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row var problem variable val value of coefficient in linear part of row
Definition at line 1366 of file scip_nlp.c.
References FALSE, Scip::mem, Scip::nlp, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowAddLinearCoef(), Scip::set, Scip::stat, and TRUE.
Referenced by createNlRow().
◆ SCIPaddLinearCoefsToNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPaddLinearCoefsToNlRow | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
int | nvars, | ||
SCIP_VAR ** | vars, | ||
SCIP_Real * | vals | ||
) |
adds variables with linear coefficients 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.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row nvars number of variables to add to the row vars problem variables to add vals values of coefficients in linear part of row
Definition at line 1390 of file scip_nlp.c.
References FALSE, Scip::mem, Scip::nlp, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowAddLinearCoef(), Scip::set, Scip::stat, and TRUE.
Referenced by createNlRow().
◆ SCIPchgNlRowLinearCoef()
SCIP_EXPORT SCIP_RETCODE SCIPchgNlRowLinearCoef | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_VAR * | var, | ||
SCIP_Real | coef | ||
) |
changes linear coefficient of a variables in a row
Setting the coefficient to 0.0 means that it is removed from the row the variable does not need to exists before.
- Returns
- SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row var variable coef new value of coefficient
Definition at line 1427 of file scip_nlp.c.
References FALSE, Scip::mem, Scip::nlp, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowChgLinearCoef(), Scip::set, Scip::stat, and TRUE.
◆ SCIPaddQuadVarToNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPaddQuadVarToNlRow | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_VAR * | var | ||
) |
adds quadratic variable to the nonlinear row
After adding a quadratic variable, it can be used to add quadratic elements.
- Returns
- SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row var problem variable
Definition at line 1455 of file scip_nlp.c.
References FALSE, Scip::mem, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowAddQuadVar(), Scip::set, and TRUE.
Referenced by createNlRow().
◆ SCIPaddQuadVarsToNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPaddQuadVarsToNlRow | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
int | nvars, | ||
SCIP_VAR ** | vars | ||
) |
adds quadratic variables to the nonlinear row
After adding quadratic variables, they can be used to add quadratic elements.
- Returns
- SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row nvars number of problem variables vars problem variables
Definition at line 1480 of file scip_nlp.c.
References FALSE, Scip::mem, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowAddQuadVar(), SCIPnlrowEnsureQuadVarsSize(), SCIPnlrowGetNQuadVars(), Scip::set, and TRUE.
◆ SCIPaddQuadElementToNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPaddQuadElementToNlRow | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_QUADELEM | quadelem | ||
) |
add a quadratic element to the nonlinear row
Variable indices of the quadratic element need to be relative to quadratic variables array of 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row quadelem quadratic element
Definition at line 1514 of file scip_nlp.c.
References SCIP_QuadElement::coef, FALSE, Scip::mem, Scip::nlp, SCIP_Mem::probmem, SCIP_CALL, SCIP_EXPRCURV_UNKNOWN, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowAddQuadElement(), SCIPnlrowSetCurvature(), Scip::set, Scip::stat, and TRUE.
Referenced by createNlRow().
◆ SCIPaddQuadElementsToNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPaddQuadElementsToNlRow | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
int | nquadelems, | ||
SCIP_QUADELEM * | quadelems | ||
) |
adds quadratic elements to the nonlinear row
Variable indices of the quadratic elements need to be relative to quadratic variables array of 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row nquadelems number of quadratic elements quadelems quadratic elements
Definition at line 1543 of file scip_nlp.c.
References FALSE, Scip::mem, Scip::nlp, NULL, SCIP_Mem::probmem, SCIP_CALL, SCIP_EXPRCURV_UNKNOWN, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowAddQuadElement(), SCIPnlrowEnsureQuadElementsSize(), SCIPnlrowGetNQuadElems(), SCIPnlrowSetCurvature(), Scip::set, Scip::stat, and TRUE.
◆ SCIPchgNlRowQuadElement()
SCIP_EXPORT SCIP_RETCODE SCIPchgNlRowQuadElement | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_QUADELEM | quadelement | ||
) |
changes coefficient in quadratic part of a row
Setting the coefficient in the quadelement to 0.0 means that it is removed from the row the element does not need to exists before.
- Returns
- SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row quadelement new quadratic element, or update for existing one
Definition at line 1581 of file scip_nlp.c.
References FALSE, Scip::mem, Scip::nlp, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowChgQuadElem(), Scip::set, Scip::stat, and TRUE.
◆ SCIPsetNlRowExprtree()
SCIP_EXPORT SCIP_RETCODE SCIPsetNlRowExprtree | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_EXPRTREE * | exprtree | ||
) |
sets or deletes expression tree in the nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row exprtree expression tree, or NULL
Definition at line 1604 of file scip_nlp.c.
References FALSE, Scip::mem, Scip::nlp, SCIP_Mem::probmem, SCIP_CALL, SCIP_EXPRCURV_UNKNOWN, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowChgExprtree(), SCIPnlrowSetCurvature(), Scip::set, Scip::stat, and TRUE.
◆ SCIPsetNlRowExprtreeParam()
SCIP_EXPORT SCIP_RETCODE SCIPsetNlRowExprtreeParam | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
int | paramidx, | ||
SCIP_Real | paramval | ||
) |
sets a parameter of expression tree in the nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row paramidx index of parameter in expression tree paramval new value of parameter in expression tree
Definition at line 1630 of file scip_nlp.c.
References FALSE, Scip::mem, Scip::nlp, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowChgExprtreeParam(), Scip::set, Scip::stat, and TRUE.
◆ SCIPsetNlRowExprtreeParams()
SCIP_EXPORT SCIP_RETCODE SCIPsetNlRowExprtreeParams | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real * | paramvals | ||
) |
sets parameters of expression tree in the nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row paramvals new values of parameter in expression tree
Definition at line 1654 of file scip_nlp.c.
References FALSE, Scip::mem, Scip::nlp, SCIP_Mem::probmem, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowChgExprtreeParams(), Scip::set, Scip::stat, and TRUE.
◆ SCIPrecalcNlRowNLPActivity()
SCIP_EXPORT SCIP_RETCODE SCIPrecalcNlRowNLPActivity | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow | ||
) |
recalculates the activity of a nonlinear row in the last NLP 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row
Definition at line 1677 of file scip_nlp.c.
References FALSE, Scip::nlp, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPnlrowRecalcNLPActivity(), Scip::set, Scip::stat, and TRUE.
◆ SCIPgetNlRowNLPActivity()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowNLPActivity | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real * | activity | ||
) |
returns the activity of a nonlinear row in the last NLP 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row activity pointer to store activity value
Definition at line 1704 of file scip_nlp.c.
References FALSE, Scip::nlp, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPnlrowGetNLPActivity(), Scip::set, Scip::stat, and TRUE.
◆ SCIPgetNlRowNLPFeasibility()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowNLPFeasibility | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real * | feasibility | ||
) |
gives the feasibility of a nonlinear row in the last NLP solution: negative value means infeasibility
- Returns
- SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row feasibility pointer to store feasibility value
Definition at line 1732 of file scip_nlp.c.
References FALSE, Scip::nlp, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPcheckStage(), SCIPerrorMessage, SCIPnlrowGetNLPFeasibility(), Scip::set, Scip::stat, and TRUE.
◆ SCIPrecalcNlRowPseudoActivity()
SCIP_EXPORT SCIP_RETCODE SCIPrecalcNlRowPseudoActivity | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow | ||
) |
recalculates the activity of a nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row
Definition at line 1760 of file scip_nlp.c.
References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowRecalcPseudoActivity(), Scip::set, Scip::stat, and TRUE.
◆ SCIPgetNlRowPseudoActivity()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowPseudoActivity | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real * | pseudoactivity | ||
) |
gives the activity of a nonlinear 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row pseudoactivity pointer to store pseudo activity value
Definition at line 1781 of file scip_nlp.c.
References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowGetPseudoActivity(), Scip::set, Scip::stat, and TRUE.
◆ SCIPgetNlRowPseudoFeasibility()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowPseudoFeasibility | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real * | pseudofeasibility | ||
) |
gives the feasibility of a nonlinear row for the current pseudo solution: negative value means infeasibility
- Returns
- SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row pseudofeasibility pointer to store pseudo feasibility value
Definition at line 1803 of file scip_nlp.c.
References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowGetPseudoFeasibility(), Scip::set, Scip::stat, and TRUE.
◆ SCIPrecalcNlRowActivity()
SCIP_EXPORT SCIP_RETCODE SCIPrecalcNlRowActivity | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow | ||
) |
recalculates the activity of a nonlinear row in the last NLP 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row
Definition at line 1825 of file scip_nlp.c.
References FALSE, Scip::nlp, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlpHasCurrentNodeNLP(), SCIPnlpHasSolution(), SCIPnlrowRecalcNLPActivity(), SCIPnlrowRecalcPseudoActivity(), Scip::set, Scip::stat, and TRUE.
◆ SCIPgetNlRowActivity()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowActivity | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real * | activity | ||
) |
gives the activity of a nonlinear row in the last NLP 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row activity pointer to store activity value
Definition at line 1853 of file scip_nlp.c.
References FALSE, Scip::nlp, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlpHasCurrentNodeNLP(), SCIPnlpHasSolution(), SCIPnlrowGetNLPActivity(), SCIPnlrowGetPseudoActivity(), Scip::set, Scip::stat, and TRUE.
◆ SCIPgetNlRowFeasibility()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowFeasibility | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real * | feasibility | ||
) |
gives the feasibility of a nonlinear row in the last NLP 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row feasibility pointer to store feasibility value
Definition at line 1882 of file scip_nlp.c.
References FALSE, Scip::nlp, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlpHasCurrentNodeNLP(), SCIPnlpHasSolution(), SCIPnlrowGetNLPFeasibility(), SCIPnlrowGetPseudoFeasibility(), Scip::set, Scip::stat, and TRUE.
◆ SCIPgetNlRowSolActivity()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowSolActivity | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_SOL * | sol, | ||
SCIP_Real * | activity | ||
) |
gives the activity of a nonlinear row for the given primal solution or NLP solution 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row sol primal CIP solution, or NULL for NLP solution of pseudo solution activity pointer to store activity value
Definition at line 1911 of file scip_nlp.c.
References FALSE, Scip::nlp, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlpHasCurrentNodeNLP(), SCIPnlpHasSolution(), SCIPnlrowGetNLPActivity(), SCIPnlrowGetPseudoActivity(), SCIPnlrowGetSolActivity(), Scip::set, Scip::stat, and TRUE.
Referenced by computeMaxViolation(), findPointPosition(), generateCut(), improvePoint(), SCIP_DECL_SEPAEXECLP(), and separateCuts().
◆ SCIPgetNlRowSolFeasibility()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowSolFeasibility | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_SOL * | sol, | ||
SCIP_Real * | feasibility | ||
) |
gives the feasibility of a nonlinear row for the given primal 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 if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP nonlinear row sol primal CIP solution feasibility pointer to store feasibility value
Definition at line 1945 of file scip_nlp.c.
References FALSE, Scip::nlp, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlpHasCurrentNodeNLP(), SCIPnlpHasSolution(), SCIPnlrowGetNLPFeasibility(), SCIPnlrowGetPseudoFeasibility(), SCIPnlrowGetSolFeasibility(), Scip::set, Scip::stat, and TRUE.
Referenced by getMinFeas(), and improvePoint().
◆ SCIPgetNlRowActivityBounds()
SCIP_EXPORT SCIP_RETCODE SCIPgetNlRowActivityBounds | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
SCIP_Real * | minactivity, | ||
SCIP_Real * | maxactivity | ||
) |
gives the minimal and maximal activity of a nonlinear row w.r.t. the variable's bounds
- Returns
- SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row minactivity buffer to store minimal activity, or NULL maxactivity buffer to store maximal activity, or NULL
Definition at line 1980 of file scip_nlp.c.
References FALSE, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowGetActivityBounds(), Scip::set, Scip::stat, and TRUE.
◆ SCIPprintNlRow()
SCIP_EXPORT SCIP_RETCODE SCIPprintNlRow | ( | SCIP * | scip, |
SCIP_NLROW * | nlrow, | ||
FILE * | file | ||
) |
output nonlinear row to file stream
- Returns
- SCIP_OKAY is returned if everything worked. Otherwise a suitable error code is passed. See SCIP_RETCODE for a complete list of error codes.
- Precondition
- This method can be called if SCIP is in one of the following stages:
- Parameters
-
scip SCIP data structure nlrow NLP row file output file (or NULL for standard output)
Definition at line 2004 of file scip_nlp.c.
References FALSE, Scip::messagehdlr, NULL, SCIP_CALL, SCIP_OKAY, SCIPcheckStage(), SCIPnlrowPrint(), and TRUE.
Referenced by createNlRow(), findPointPosition(), and separateCuts().