methods for MIP matrix data structure
The MIP matrix is organized as sparse data structure in row and and column major format.
Definition in file matrix.c.
#include "blockmemshell/memory.h"
#include "scip/cons_knapsack.h"
#include "scip/cons_linear.h"
#include "scip/cons_logicor.h"
#include "scip/cons_setppc.h"
#include "scip/cons_varbound.h"
#include "scip/pub_matrix.h"
#include "scip/pub_cons.h"
#include "scip/pub_message.h"
#include "scip/pub_misc_sort.h"
#include "scip/pub_var.h"
#include "scip/scip_cons.h"
#include "scip/scip_general.h"
#include "scip/scip_mem.h"
#include "scip/scip_message.h"
#include "scip/scip_numerics.h"
#include "scip/scip_pricer.h"
#include "scip/scip_prob.h"
#include "scip/scip_var.h"
#include "scip/struct_matrix.h"
#include <string.h>
Go to the source code of this file.
|
static |
transforms given variables, scalars and constant to the corresponding active variables, scalars and constant
scip | SCIP instance |
vars | vars array to get active variables for |
scalars | scalars a_1, ..., a_n in linear sum a_1*x_1 + ... + a_n*x_n + c |
nvars | pointer to number of variables and values in vars and vals array |
constant | pointer to constant c in linear sum a_1*x_1 + ... + a_n*x_n + c |
Definition at line 67 of file matrix.c.
References assert(), NULL, nvars, scalars, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPgetProbvarLinearSum(), SCIPreallocBufferArray, TRUE, and vars.
Referenced by addConstraint().
|
static |
add one row to the constraint matrix
scip | SCIP data structure |
matrix | constraint matrix |
vars | variables of this row |
vals | coefficients of this row |
nvars | number of variables of this row |
lhs | left hand side |
rhs | right hand side |
maxnnonzsmem | maximal number of fillable elements |
rowadded | flag indicating if constraint was added to matrix |
Definition at line 102 of file matrix.c.
References assert(), FALSE, SCIP_Matrix::isrhsinfinite, SCIP_Matrix::lhs, SCIP_Matrix::ndownlocks, SCIP_Matrix::nnonzs, SCIP_Matrix::nrows, NULL, SCIP_Matrix::nuplocks, nvars, SCIP_Matrix::rhs, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_Bool, SCIP_OKAY, SCIP_Real, SCIPinfinity(), SCIPisInfinity(), SCIPisZero(), SCIPvarGetProbindex(), TRUE, SCIP_Matrix::vars, and vars.
Referenced by addConstraint().
|
static |
add one constraint to matrix
scip | current scip instance |
matrix | constraint matrix |
vars | variables of this constraint |
vals | variable coefficients of this constraint |
nvars | number of variables |
lhs | left hand side |
rhs | right hand side |
maxnnonzsmem | maximal number of fillable elements |
rowadded | flag indicating of row was added to matrix |
Definition at line 220 of file matrix.c.
References addRow(), assert(), FALSE, getActiveVariables(), NULL, nvars, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPduplicateBufferArray, SCIPfreeBufferArray, SCIPisInfinity(), SCIPisLE(), and vars.
Referenced by SCIPmatrixCreate().
|
static |
transform row major format into column major format
scip | current scip instance |
matrix | constraint matrix |
Definition at line 297 of file matrix.c.
References assert(), BMSclearMemoryArray, SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatcnt, SCIP_Matrix::colmatind, SCIP_Matrix::colmatval, i, SCIP_Matrix::ncols, SCIP_Matrix::nrows, NULL, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, and SCIPfreeBufferArray.
Referenced by SCIPmatrixCreate().
|
static |
calculate min/max activity per row
scip | current scip instance |
matrix | constraint matrix |
Definition at line 364 of file matrix.c.
References assert(), SCIP_Matrix::lb, SCIP_Matrix::maxactivity, SCIP_Matrix::maxactivityneginf, SCIP_Matrix::maxactivityposinf, SCIP_Matrix::minactivity, SCIP_Matrix::minactivityneginf, SCIP_Matrix::minactivityposinf, SCIP_Matrix::ncols, SCIP_Matrix::nrows, NULL, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_OKAY, SCIP_Real, SCIPinfinity(), SCIPisInfinity(), SCIPisZero(), and SCIP_Matrix::ub.
Referenced by SCIPmatrixCreate().
SCIP_RETCODE SCIPmatrixCreate | ( | SCIP * | scip, |
SCIP_MATRIX ** | matrixptr, | ||
SCIP_Bool | onlyifcomplete, | ||
SCIP_Bool * | initialized, | ||
SCIP_Bool * | complete, | ||
SCIP_Bool * | infeasible, | ||
int * | naddconss, | ||
int * | ndelconss, | ||
int * | nchgcoefs, | ||
int * | nchgbds, | ||
int * | nfixedvars ) |
initialize matrix by copying all check constraints
scip | current scip instance |
matrixptr | pointer to constraint matrix object to be initialized |
onlyifcomplete | should matrix creation be skipped if matrix will not be complete? |
initialized | was the initialization successful? |
complete | are all constraint represented within the matrix? |
infeasible | pointer to return whether problem was detected to be infeasible during matrix creation |
naddconss | pointer to count number of added (linear) constraints during matrix creation |
ndelconss | pointer to count number of deleted specialized linear constraints during matrix creation |
nchgcoefs | pointer to count number of changed coefficients during matrix creation |
nchgbds | pointer to count number of changed bounds during matrix creation |
nfixedvars | pointer to count number of fixed variables during matrix creation |
Definition at line 454 of file matrix.c.
References addConstraint(), assert(), BMSclearMemoryArray, c, calcActivityBounds(), SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatcnt, SCIP_Matrix::colmatind, SCIP_Matrix::colmatval, SCIP_Matrix::cons, FALSE, i, SCIP_Matrix::isrhsinfinite, SCIP_Matrix::lb, SCIP_Matrix::lhs, SCIP_Matrix::maxactivity, SCIP_Matrix::maxactivityneginf, SCIP_Matrix::maxactivityposinf, SCIP_Matrix::minactivity, SCIP_Matrix::minactivityneginf, SCIP_Matrix::minactivityposinf, SCIP_Matrix::ncols, SCIP_Matrix::ndownlocks, SCIP_Matrix::nnonzs, SCIP_Matrix::nrows, NULL, SCIP_Matrix::nuplocks, nvars, SCIP_Matrix::rhs, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_Bool, SCIP_CALL, SCIP_ERROR, SCIP_LOCKTYPE_MODEL, SCIP_Longint, SCIP_OKAY, SCIP_Real, SCIP_SETPPCTYPE_COVERING, SCIP_SETPPCTYPE_PACKING, SCIP_SETPPCTYPE_PARTITIONING, SCIPallocBuffer, SCIPallocBufferArray, SCIPallocClearMemoryArray, SCIPcleanupConssKnapsack(), SCIPcleanupConssLinear(), SCIPcleanupConssLogicor(), SCIPcleanupConssSetppc(), SCIPcleanupConssVarbound(), SCIPconshdlrGetCheckConss(), SCIPconshdlrGetName(), SCIPconshdlrGetNCheckConss(), SCIPconsIsModifiable(), SCIPconsIsTransformed(), SCIPdebugMsg, SCIPdelCons(), SCIPduplicateBufferArray, SCIPfindConshdlr(), SCIPfreeBuffer, SCIPfreeBufferArray, SCIPfreeBufferArrayNull, SCIPfreeMemoryArray, SCIPgetBinvarsLinking(), SCIPgetCapacityKnapsack(), SCIPgetConshdlrs(), SCIPgetLhsLinear(), SCIPgetLhsVarbound(), SCIPgetNActivePricers(), SCIPgetNConshdlrs(), SCIPgetNConss(), SCIPgetNVars(), SCIPgetNVarsKnapsack(), SCIPgetNVarsLinear(), SCIPgetNVarsLogicor(), SCIPgetNVarsSetppc(), SCIPgetRhsLinear(), SCIPgetRhsVarbound(), SCIPgetTypeSetppc(), SCIPgetValsLinear(), SCIPgetValsLinking(), SCIPgetVars(), SCIPgetVarsKnapsack(), SCIPgetVarsLinear(), SCIPgetVarsLogicor(), SCIPgetVarsSetppc(), SCIPgetVarVarbound(), SCIPgetVbdcoefVarbound(), SCIPgetVbdvarVarbound(), SCIPgetWeightsKnapsack(), SCIPinfinity(), SCIPisStopped(), SCIPmatrixDownlockConflict(), SCIPmatrixUplockConflict(), SCIPreallocBufferArray, SCIPvarGetLbGlobal(), SCIPvarGetNLocksDownType(), SCIPvarGetNLocksUpType(), SCIPvarGetUbGlobal(), setColumnMajorFormat(), TRUE, SCIP_Matrix::ub, var, SCIP_Matrix::vars, and vars.
Referenced by SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and SCIP_DECL_PRESOLEXEC().
void SCIPmatrixFree | ( | SCIP * | scip, |
SCIP_MATRIX ** | matrix ) |
frees the constraint matrix
scip | current SCIP instance |
matrix | constraint matrix object |
Definition at line 1072 of file matrix.c.
References assert(), NULL, SCIPfreeBuffer, SCIPfreeBufferArray, SCIPfreeBufferArrayNull, and SCIPfreeMemoryArray.
Referenced by SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and SCIP_DECL_PRESOLEXEC().
void SCIPmatrixPrintRow | ( | SCIP * | scip, |
SCIP_MATRIX * | matrix, | ||
int | row ) |
print one row of the matrix
scip | current SCIP instance |
matrix | constraint matrix object |
row | row index |
Definition at line 1135 of file matrix.c.
References SCIP_Matrix::cons, SCIP_Matrix::lhs, SCIP_Matrix::rhs, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_Real, SCIP_UNUSED, SCIPconsGetName(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetUbGlobal(), and SCIP_Matrix::vars.
Referenced by cancelRow(), and compensateVarLock().
void SCIPmatrixRemoveColumnBounds | ( | SCIP * | scip, |
SCIP_MATRIX * | matrix, | ||
int | col ) |
removes the bounds of a column and updates the activities accordingly
scip | current scip instance |
matrix | constraint matrix |
col | column variable to remove bounds from |
Definition at line 1169 of file matrix.c.
References assert(), SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatcnt, SCIP_Matrix::colmatind, SCIP_Matrix::colmatval, i, SCIP_Matrix::lb, SCIP_Matrix::maxactivity, SCIP_Matrix::maxactivityneginf, SCIP_Matrix::maxactivityposinf, SCIP_Matrix::minactivity, SCIP_Matrix::minactivityneginf, SCIP_Matrix::minactivityposinf, SCIP_Real, SCIPinfinity(), SCIPisInfinity(), and SCIP_Matrix::ub.
Referenced by aggregation().
SCIP_RETCODE SCIPmatrixGetParallelRows | ( | SCIP * | scip, |
SCIP_MATRIX * | matrix, | ||
SCIP_Real * | scale, | ||
int * | pclass ) |
detect parallel rows of matrix. rhs/lhs are ignored.
scip | SCIP instance |
matrix | matrix containing the constraints |
scale | scale factors of rows |
pclass | parallel row classes |
Definition at line 1214 of file matrix.c.
References assert(), BMSclearMemoryArray, c, SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatcnt, SCIP_Matrix::colmatind, SCIP_Matrix::colmatval, i, SCIP_Matrix::ncols, SCIP_Matrix::nrows, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPfreeBufferArray, SCIPisEQ(), SCIPsortIntIntReal(), SCIPsortRealInt(), and TRUE.
SCIP_RETCODE SCIPmatrixGetParallelCols | ( | SCIP * | scip, |
SCIP_MATRIX * | matrix, | ||
SCIP_Real * | scale, | ||
int * | pclass, | ||
SCIP_Bool * | varineq ) |
detect parallel rows of matrix. obj coefficients are ignored.
scip | SCIP instance |
matrix | matrix containing the constraints |
scale | scale factors of cols |
pclass | parallel column classes |
varineq | indicating if variable is within an equation |
Definition at line 1370 of file matrix.c.
References assert(), BMSclearMemoryArray, i, SCIP_Matrix::isrhsinfinite, SCIP_Matrix::ncols, SCIP_Matrix::nrows, NULL, r, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPfreeBufferArray, SCIPisEQ(), SCIPsortIntIntReal(), SCIPsortRealInt(), and TRUE.
SCIP_Real * SCIPmatrixGetColValPtr | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get column based start pointer of values
matrix | matrix instance |
col | column index |
Definition at line 1568 of file matrix.c.
References assert(), SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatval, NULL, and SCIP_Real.
Referenced by calcMaxColActivity(), calcMinColActivity(), cancelCol(), dualBoundStrengthening(), findDominancePairs(), getDownlockRowIdx(), getImpliedBounds(), getImpliedBounds(), getMinColActWithoutRow(), getUplockRowIdx(), SCIP_DECL_PRESOLEXEC(), and SCIP_DECL_PRESOLEXEC().
int * SCIPmatrixGetColIdxPtr | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get column based start pointer of row indices
matrix | matrix instance |
col | column index |
Definition at line 1580 of file matrix.c.
References assert(), SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatind, and NULL.
Referenced by calcMaxColActivity(), calcMinColActivity(), cancelCol(), dualBoundStrengthening(), findDominancePairs(), findFixings(), findVarAggrRedVbcons(), getDownlockRowIdx(), getImpliedBounds(), getImpliedBounds(), getMinColActWithoutRow(), getUplockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and singletonColumnStuffing().
int SCIPmatrixGetColNNonzs | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get the number of non-zero entries of this column
matrix | matrix instance |
col | column index |
Definition at line 1592 of file matrix.c.
References assert(), SCIP_Matrix::colmatcnt, and NULL.
Referenced by calcMaxColActivity(), calcMinColActivity(), cancelCol(), compensateVarLock(), dualBoundStrengthening(), findDominancePairs(), findFixings(), findVarAggrRedVbcons(), getDownlockRowIdx(), getImpliedBounds(), getImpliedBounds(), getMinColActWithoutRow(), getUplockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and singletonColumnStuffing().
int SCIPmatrixGetNColumns | ( | SCIP_MATRIX * | matrix | ) |
get number of columns of the matrix
matrix | matrix instance |
Definition at line 1604 of file matrix.c.
References assert(), SCIP_Matrix::ncols, and NULL.
Referenced by applyLPboundTightening(), calcVarBoundsDominated(), calcVarBoundsDominating(), cancelCol(), compensateVarLock(), detectParallelCols(), dualBoundStrengthening(), findDownlockAggregations(), findUplockAggregations(), findVarAggrRedVbcons(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and singletonColumnStuffing().
SCIP_Real SCIPmatrixGetColUb | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get upper bound of column
matrix | matrix instance |
col | column index |
Definition at line 1614 of file matrix.c.
References assert(), NULL, SCIP_Real, and SCIP_Matrix::ub.
Referenced by findDownlockAggregations(), findUplockAggregations(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getImpliedBounds(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), and SCIP_DECL_PRESOLEXEC().
SCIP_Real SCIPmatrixGetColLb | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get lower bound of column
matrix | matrix instance |
col | column index |
Definition at line 1625 of file matrix.c.
References assert(), SCIP_Matrix::lb, NULL, and SCIP_Real.
Referenced by findDownlockAggregations(), findUplockAggregations(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getImpliedBounds(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), and SCIP_DECL_PRESOLEXEC().
int SCIPmatrixGetColNUplocks | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get number of uplocks of column
matrix | matrix instance |
col | column index |
Definition at line 1636 of file matrix.c.
References assert(), NULL, and SCIP_Matrix::nuplocks.
Referenced by cancelCol(), cancelRow(), compensateVarLock(), detectDominatingVlbs(), detectDominatingVubs(), findUplockAggregations(), getUplockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and singletonColumnStuffing().
int SCIPmatrixGetColNDownlocks | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get number of downlocks of column
matrix | matrix instance |
col | column index |
Definition at line 1648 of file matrix.c.
References assert(), SCIP_Matrix::ndownlocks, and NULL.
Referenced by cancelCol(), cancelRow(), compensateVarLock(), detectDominatingVlbs(), detectDominatingVubs(), findDownlockAggregations(), getDownlockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and singletonColumnStuffing().
SCIP_VAR * SCIPmatrixGetVar | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get variable pointer of column
matrix | matrix instance |
col | column index |
Definition at line 1660 of file matrix.c.
References assert(), NULL, and SCIP_Matrix::vars.
Referenced by calcVarBoundsDominated(), calcVarBoundsDominating(), cancelRow(), compensateVarLock(), detectDominatingVlbs(), detectDominatingVubs(), dualBoundStrengthening(), findDominancePairs(), findDownlockAggregations(), findUplockAggregations(), findVarAggrRedVbcons(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), isVlb(), isVub(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), singletonColumnStuffing(), and transformAndSolve().
const char * SCIPmatrixGetColName | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get name of column/variable
matrix | matrix instance |
col | column index |
Definition at line 1672 of file matrix.c.
References assert(), NULL, SCIPvarGetName(), and SCIP_Matrix::vars.
Referenced by transformAndSolve().
SCIP_Real * SCIPmatrixGetRowValPtr | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get row based start pointer of values
matrix | matrix instance |
row | row index |
Definition at line 1684 of file matrix.c.
References assert(), NULL, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatval, and SCIP_Real.
Referenced by applyLPboundTightening(), cancelRow(), compensateVarLock(), detectParallelCols(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), infinityCountUpdate(), isVlb(), isVub(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), singletonColumnStuffing(), and transformAndSolve().
int * SCIPmatrixGetRowIdxPtr | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get row based start pointer of column indices
matrix | matrix instance |
row | row index |
Definition at line 1696 of file matrix.c.
References assert(), NULL, SCIP_Matrix::rowmatbeg, and SCIP_Matrix::rowmatind.
Referenced by applyLPboundTightening(), cancelRow(), compensateVarLock(), detectParallelCols(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), infinityCountUpdate(), isVlb(), isVub(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), singletonColumnStuffing(), and transformAndSolve().
int SCIPmatrixGetRowNNonzs | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get number of non-zeros of this row
matrix | matrix instance |
row | row index |
Definition at line 1708 of file matrix.c.
References assert(), NULL, and SCIP_Matrix::rowmatcnt.
Referenced by applyLPboundTightening(), cancelCol(), cancelRow(), compensateVarLock(), detectParallelCols(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), infinityCountUpdate(), isVlb(), isVub(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), singletonColumnStuffing(), and transformAndSolve().
const char * SCIPmatrixGetRowName | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get name of row
matrix | matrix instance |
row | row index |
Definition at line 1720 of file matrix.c.
References assert(), SCIP_Matrix::cons, NULL, and SCIPconsGetName().
Referenced by applyLPboundTightening(), and cancelRow().
int SCIPmatrixGetNRows | ( | SCIP_MATRIX * | matrix | ) |
get number of rows of the matrix
matrix | matrix instance |
Definition at line 1732 of file matrix.c.
References assert(), SCIP_Matrix::nrows, and NULL.
Referenced by calcVarBoundsDominated(), calcVarBoundsDominating(), compensateVarLock(), detectParallelCols(), dualBoundStrengthening(), findVarAggrRedVbcons(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), isVlb(), isVub(), processHashlists(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and singletonColumnStuffing().
SCIP_Real SCIPmatrixGetRowLhs | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get left-hand-side of row
matrix | matrix instance |
row | row index |
Definition at line 1742 of file matrix.c.
References assert(), SCIP_Matrix::lhs, NULL, and SCIP_Real.
Referenced by calcVarBoundsDominated(), calcVarBoundsDominating(), cancelCol(), cancelRow(), compensateVarLock(), dualBoundStrengthening(), findDominancePairs(), findFixings(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getVarBoundsOfRow(), getVarBoundsOfRow(), isVlb(), isVub(), processHashlists(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), singletonColumnStuffing(), and transformAndSolve().
SCIP_Real SCIPmatrixGetRowRhs | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get right-hand-side of row
matrix | matrix instance |
row | row index |
Definition at line 1754 of file matrix.c.
References assert(), NULL, SCIP_Matrix::rhs, and SCIP_Real.
Referenced by calcVarBoundsDominated(), calcVarBoundsDominating(), cancelCol(), cancelRow(), compensateVarLock(), dualBoundStrengthening(), findDominancePairs(), findFixings(), getVarBoundsOfRow(), getVarBoundsOfRow(), processHashlists(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and transformAndSolve().
SCIP_Bool SCIPmatrixIsRowRhsInfinity | ( | SCIP_MATRIX * | matrix, |
int | row ) |
flag indicating if right-hand-side of row is infinity
matrix | matrix instance |
row | row index |
Definition at line 1766 of file matrix.c.
References assert(), SCIP_Matrix::isrhsinfinite, NULL, and SCIP_Bool.
Referenced by calcVarBoundsDominated(), calcVarBoundsDominating(), detectParallelCols(), dualBoundStrengthening(), findDominancePairs(), getDownlockRowIdx(), getUplockRowIdx(), isVlb(), isVub(), SCIP_DECL_PRESOLEXEC(), and singletonColumnStuffing().
int SCIPmatrixGetNNonzs | ( | SCIP_MATRIX * | matrix | ) |
get number of non-zeros of matrix
matrix | matrix instance |
Definition at line 1778 of file matrix.c.
References assert(), SCIP_Matrix::nnonzs, and NULL.
Referenced by SCIP_DECL_PRESOLEXEC().
SCIP_Real SCIPmatrixGetRowMinActivity | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get minimal activity of row
matrix | matrix instance |
row | row index |
Definition at line 1788 of file matrix.c.
References assert(), SCIP_Matrix::minactivity, NULL, and SCIP_Real.
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), and getMinMaxActivityResiduals().
SCIP_Real SCIPmatrixGetRowMaxActivity | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get maximal activity of row
matrix | matrix instance |
row | row index |
Definition at line 1800 of file matrix.c.
References assert(), SCIP_Matrix::maxactivity, NULL, and SCIP_Real.
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), and getMinMaxActivityResiduals().
int SCIPmatrixGetRowNMinActNegInf | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get number of negative infinities present within minimal activity
matrix | matrix instance |
row | row index |
Definition at line 1812 of file matrix.c.
References assert(), SCIP_Matrix::minactivityneginf, and NULL.
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), and getMinMaxActivityResiduals().
int SCIPmatrixGetRowNMinActPosInf | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get number of positive infinities present within minimal activity
matrix | matrix instance |
row | row index |
Definition at line 1824 of file matrix.c.
References assert(), SCIP_Matrix::minactivityposinf, and NULL.
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), and getMinMaxActivityResiduals().
int SCIPmatrixGetRowNMaxActNegInf | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get number of negative infinities present within maximal activity
matrix | matrix instance |
row | row index |
Definition at line 1836 of file matrix.c.
References assert(), SCIP_Matrix::maxactivityneginf, and NULL.
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), and getMinMaxActivityResiduals().
int SCIPmatrixGetRowNMaxActPosInf | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get number of positive infinities present within maximal activity
matrix | matrix instance |
row | row index |
Definition at line 1848 of file matrix.c.
References assert(), SCIP_Matrix::maxactivityposinf, and NULL.
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), and getMinMaxActivityResiduals().
SCIP_CONS * SCIPmatrixGetCons | ( | SCIP_MATRIX * | matrix, |
int | row ) |
get constraint pointer for constraint representing row
matrix | matrix instance |
row | row index |
Definition at line 1860 of file matrix.c.
References assert(), SCIP_Matrix::cons, and NULL.
Referenced by cancelRow(), detectDominatingVlbs(), detectDominatingVubs(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and SCIP_DECL_PRESOLEXEC().
SCIP_Bool SCIPmatrixUplockConflict | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get if conflicting uplocks of a specific variable present
matrix | matrix instance |
col | column index |
Definition at line 1872 of file matrix.c.
References assert(), NULL, SCIP_Matrix::nuplocks, SCIP_Bool, SCIP_LOCKTYPE_MODEL, SCIPvarGetNLocksUpType(), and SCIP_Matrix::vars.
Referenced by dualBoundStrengthening(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and SCIPmatrixCreate().
SCIP_Bool SCIPmatrixDownlockConflict | ( | SCIP_MATRIX * | matrix, |
int | col ) |
get if conflicting downlocks of a specific variable present
matrix | matrix instance |
col | column index |
Definition at line 1884 of file matrix.c.
References assert(), SCIP_Matrix::ndownlocks, NULL, SCIP_Bool, SCIP_LOCKTYPE_MODEL, SCIPvarGetNLocksDownType(), and SCIP_Matrix::vars.
Referenced by dualBoundStrengthening(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and SCIPmatrixCreate().