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_exactlinear.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_exact.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 "scip/rational.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 70 of file matrix.c.
References assert(), getActiveVariables(), NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPgetProbvarLinearSum(), SCIPreallocBufferArray, and vars.
Referenced by addConstraint(), addLinearConstraint(), addXorLinearization(), getActiveVariables(), getActiveVariables(), getActiveVariables(), getActiveVariables(), getActiveVariables(), getActiveVariables(), getActiveVariables(), getActiveVariables(), getActiveVariables(), getActiveVariables(), handleLinearCons(), printActiveVariables(), printAggregatedCons(), printAggregatedCons(), printAndCons(), printExpr(), printLinearCons(), printLinearCons(), printLinearCons(), printLinearCons(), printLinearCons(), printNonLinearCons(), printQuadraticCons(), printQuadraticCons(), printRow(), and printRow().
|
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 105 of file matrix.c.
References assert(), getActiveVariablesExact(), NULL, nvars, SCIP_CALL, SCIP_OKAY, SCIPbuffer(), SCIPgetProbvarLinearSumExact(), SCIPrationalReallocBufferArray(), SCIPreallocBufferArray, TRUE, and vars.
Referenced by addConstraintExact(), getActiveVariablesExact(), getActiveVariablesExact(), and printLinearConsExact().
|
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 142 of file matrix.c.
References addRow(), 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(), and addRow().
|
static |
add one row to the constraint matrix
| 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 260 of file matrix.c.
References addRowExact(), assert(), FALSE, SCIP_Matrix::isrhsinfinite, SCIP_MatrixValsExact::lhsexact, SCIP_Matrix::matrixvalsexact, SCIP_Matrix::ndownlocks, SCIP_Matrix::nnonzs, SCIP_Matrix::nrows, NULL, SCIP_Matrix::nuplocks, nvars, SCIP_MatrixValsExact::rhsexact, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_MatrixValsExact::rowmatvalexact, SCIP_Bool, SCIP_OKAY, SCIP_Real, SCIPrationalGetReal(), SCIPrationalIsInfinity(), SCIPrationalIsNegative(), SCIPrationalIsNegInfinity(), SCIPrationalIsPositive(), SCIPrationalIsZero(), SCIPrationalMultReal(), SCIPrationalNegate(), SCIPrationalSetInfinity(), SCIPrationalSetRational(), SCIPvarGetProbindex(), TRUE, SCIP_Matrix::vars, and vars.
Referenced by addConstraintExact(), and addRowExact().
|
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 379 of file matrix.c.
References addConstraint(), addRow(), assert(), FALSE, getActiveVariables(), NULL, nvars, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPduplicateBufferArray, SCIPfreeBufferArray, SCIPisInfinity(), SCIPisLE(), and vars.
Referenced by addConstraint(), and SCIPmatrixCreate().
|
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 456 of file matrix.c.
References addConstraintExact(), addRowExact(), assert(), FALSE, getActiveVariablesExact(), NULL, nvars, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPbuffer(), SCIPduplicateBufferArray, SCIPfreeBufferArray, SCIPrationalCopyBuffer(), SCIPrationalCopyBufferArray(), SCIPrationalCreateBuffer(), SCIPrationalCreateBufferArray(), SCIPrationalDiff(), SCIPrationalFreeBuffer(), SCIPrationalFreeBufferArray(), SCIPrationalIsInfinity(), SCIPrationalIsLE(), SCIPrationalIsNegInfinity(), SCIPrationalSetFraction(), and vars.
Referenced by addConstraintExact(), and SCIPmatrixCreate().
|
static |
transform row major format into column major format
| scip | current scip instance |
| matrix | constraint matrix |
Definition at line 541 of file matrix.c.
References assert(), BMSclearMemoryArray, SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatcnt, SCIP_Matrix::colmatind, SCIP_Matrix::colmatval, SCIP_MatrixValsExact::colmatvalexact, i, SCIP_Matrix::matrixvalsexact, SCIP_Matrix::ncols, SCIP_Matrix::nrows, NULL, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_MatrixValsExact::rowmatvalexact, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIPallocBufferArray, SCIPfreeBufferArray, SCIPisExact(), SCIPrationalSetRational(), and setColumnMajorFormat().
Referenced by SCIPmatrixCreate(), and setColumnMajorFormat().
|
static |
calculate min/max activity per row
| scip | current scip instance |
| matrix | constraint matrix |
Definition at line 613 of file matrix.c.
References assert(), calcActivityBounds(), 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(), SCIPisExact(), SCIPisInfinity(), SCIPisZero(), and SCIP_Matrix::ub.
Referenced by calcActivityBounds(), and 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 703 of file matrix.c.
References addConstraint(), addConstraintExact(), assert(), BMSclearMemoryArray, SCIP_MatrixValsExact::buffersize, SCIP_MatrixValsExact::buffersizenconss, c, calcActivityBounds(), SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatcnt, SCIP_Matrix::colmatind, SCIP_Matrix::colmatval, SCIP_MatrixValsExact::colmatvalexact, SCIP_Matrix::cons, FALSE, i, SCIP_Matrix::isrhsinfinite, SCIP_Matrix::lb, SCIP_MatrixValsExact::lbexact, SCIP_Matrix::lhs, SCIP_MatrixValsExact::lhsexact, SCIP_Matrix::matrixvalsexact, 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_MatrixValsExact::rhsexact, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatcnt, SCIP_Matrix::rowmatind, SCIP_Matrix::rowmatval, SCIP_MatrixValsExact::rowmatvalexact, 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, SCIPbuffer(), SCIPcleanupConssKnapsack(), SCIPcleanupConssLinear(), SCIPcleanupConssLogicor(), SCIPcleanupConssSetppc(), SCIPcleanupConssVarbound(), SCIPconshdlrGetCheckConss(), SCIPconshdlrGetName(), SCIPconshdlrGetNCheckConss(), SCIPconsIsModifiable(), SCIPconsIsTransformed(), SCIPdebugMsg, SCIPduplicateBufferArray, SCIPfreeBuffer, SCIPfreeBufferArray, SCIPfreeBufferArrayNull, SCIPfreeMemoryArray, SCIPgetBinvarsLinking(), SCIPgetCapacityKnapsack(), SCIPgetConshdlrs(), SCIPgetLhsExactLinear(), SCIPgetLhsLinear(), SCIPgetLhsVarbound(), SCIPgetNActivePricers(), SCIPgetNConshdlrs(), SCIPgetNConss(), SCIPgetNVars(), SCIPgetNVarsExactLinear(), SCIPgetNVarsKnapsack(), SCIPgetNVarsLinear(), SCIPgetNVarsLogicor(), SCIPgetNVarsSetppc(), SCIPgetRhsExactLinear(), SCIPgetRhsLinear(), SCIPgetRhsVarbound(), SCIPgetTypeSetppc(), SCIPgetValsExactLinear(), SCIPgetValsLinear(), SCIPgetValsLinking(), SCIPgetVars(), SCIPgetVarsExactLinear(), SCIPgetVarsKnapsack(), SCIPgetVarsLinear(), SCIPgetVarsLogicor(), SCIPgetVarsSetppc(), SCIPgetVarVarbound(), SCIPgetVbdcoefVarbound(), SCIPgetVbdvarVarbound(), SCIPgetWeightsKnapsack(), SCIPinfinity(), SCIPisExact(), SCIPisStopped(), SCIPmatrixCreate(), SCIPmatrixDownlockConflict(), SCIPmatrixUplockConflict(), SCIPrationalCreateBufferArray(), SCIPrationalFreeBufferArray(), SCIPreallocBufferArray, SCIPvarGetLbGlobal(), SCIPvarGetLbGlobalExact(), SCIPvarGetNLocksDownType(), SCIPvarGetNLocksUpType(), SCIPvarGetUbGlobal(), SCIPvarGetUbGlobalExact(), setColumnMajorFormat(), TRUE, SCIP_Matrix::ub, SCIP_MatrixValsExact::ubexact, 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(), SCIP_DECL_PRESOLEXEC(), and SCIPmatrixCreate().
| void SCIPmatrixFree | ( | SCIP * | scip, |
| SCIP_MATRIX ** | matrix ) |
frees the constraint matrix
| scip | current SCIP instance |
| matrix | constraint matrix object |
Definition at line 1348 of file matrix.c.
References assert(), NULL, SCIPbuffer(), SCIPfreeBuffer, SCIPfreeBufferArray, SCIPfreeBufferArrayNull, SCIPfreeMemoryArray, SCIPisExact(), SCIPmatrixFree(), and SCIPrationalFreeBufferArray().
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(), SCIP_DECL_PRESOLEXEC(), and SCIPmatrixFree().
| void SCIPmatrixPrintRow | ( | SCIP * | scip, |
| SCIP_MATRIX * | matrix, | ||
| int | row ) |
print one row of the matrix
print one row of the MIP matrix
| scip | current SCIP instance |
| matrix | constraint matrix object |
| row | row index |
Definition at line 1425 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(), SCIPmatrixPrintRow(), SCIPvarGetLbGlobal(), SCIPvarGetName(), SCIPvarGetUbGlobal(), and SCIP_Matrix::vars.
Referenced by cancelRow(), compensateVarLock(), and SCIPmatrixPrintRow().
| 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 1459 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(), SCIPmatrixRemoveColumnBounds(), and SCIP_Matrix::ub.
Referenced by aggregation(), and SCIPmatrixRemoveColumnBounds().
| SCIP_RETCODE SCIPmatrixGetParallelRows | ( | SCIP * | scip, |
| SCIP_MATRIX * | matrix, | ||
| SCIP_Real * | scale, | ||
| int * | pclass ) |
detect parallel rows of matrix. rhs/lhs are ignored.
detect parallel rows, rhs/lhs are ignored
| scip | SCIP instance |
| matrix | matrix containing the constraints |
| scale | scale factors of rows |
| pclass | parallel row classes |
Definition at line 1504 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(), SCIPmatrixGetParallelRows(), SCIPsortIntIntReal(), SCIPsortRealInt(), and TRUE.
Referenced by SCIPmatrixGetParallelRows().
| 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.
detect parallel columns, obj 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 1660 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(), SCIPmatrixGetParallelCols(), SCIPsortIntIntReal(), SCIPsortRealInt(), and TRUE.
Referenced by SCIPmatrixGetParallelCols().
| SCIP_Real * SCIPmatrixGetColValPtr | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get column based start pointer of values
| matrix | matrix instance |
| col | column index |
Definition at line 1861 of file matrix.c.
References assert(), SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatval, NULL, SCIP_Real, and SCIPmatrixGetColValPtr().
Referenced by calcMaxColActivity(), calcMinColActivity(), cancelCol(), dualBoundStrengthening(), findDominancePairs(), getDownlockRowIdx(), getImpliedBounds(), getImpliedBounds(), getMinColActWithoutRow(), getUplockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and SCIPmatrixGetColValPtr().
| int * SCIPmatrixGetColIdxPtr | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get column based start pointer of row indices
| matrix | matrix instance |
| col | column index |
Definition at line 1873 of file matrix.c.
References assert(), SCIP_Matrix::colmatbeg, SCIP_Matrix::colmatind, NULL, and SCIPmatrixGetColIdxPtr().
Referenced by calcMaxColActivity(), calcMinColActivity(), cancelCol(), dualBoundStrengthening(), findDominancePairs(), findFixings(), findVarAggrRedVbcons(), getDownlockRowIdx(), getImpliedBounds(), getImpliedBounds(), getMinColActWithoutRow(), getUplockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixGetColIdxPtr(), 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 1885 of file matrix.c.
References assert(), SCIP_Matrix::colmatcnt, NULL, and SCIPmatrixGetColNNonzs().
Referenced by calcMaxColActivity(), calcMinColActivity(), cancelCol(), compensateVarLock(), dualBoundStrengthening(), findDominancePairs(), findFixings(), findVarAggrRedVbcons(), getDownlockRowIdx(), getImpliedBounds(), getImpliedBounds(), getMinColActWithoutRow(), getUplockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixGetColNNonzs(), and singletonColumnStuffing().
| int SCIPmatrixGetNColumns | ( | SCIP_MATRIX * | matrix | ) |
get number of columns of the matrix
| matrix | matrix instance |
Definition at line 1897 of file matrix.c.
References assert(), SCIP_Matrix::ncols, NULL, and SCIPmatrixGetNColumns().
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(), SCIPmatrixGetNColumns(), and singletonColumnStuffing().
| SCIP_Real SCIPmatrixGetColUb | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get upper bound of column
| matrix | matrix instance |
| col | column index |
Definition at line 1907 of file matrix.c.
References assert(), NULL, SCIP_Real, SCIPmatrixGetColUb(), and SCIP_Matrix::ub.
Referenced by findDownlockAggregations(), findUplockAggregations(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getImpliedBounds(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), SCIP_DECL_PRESOLEXEC(), and SCIPmatrixGetColUb().
| SCIP_Real SCIPmatrixGetColLb | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get lower bound of column
| matrix | matrix instance |
| col | column index |
Definition at line 1918 of file matrix.c.
References assert(), SCIP_Matrix::lb, NULL, SCIP_Real, and SCIPmatrixGetColLb().
Referenced by findDownlockAggregations(), findUplockAggregations(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getImpliedBounds(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), SCIP_DECL_PRESOLEXEC(), and SCIPmatrixGetColLb().
| int SCIPmatrixGetColNUplocks | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get number of uplocks of column
| matrix | matrix instance |
| col | column index |
Definition at line 1929 of file matrix.c.
References assert(), NULL, SCIP_Matrix::nuplocks, and SCIPmatrixGetColNUplocks().
Referenced by cancelCol(), cancelRow(), compensateVarLock(), detectDominatingVlbs(), detectDominatingVubs(), findUplockAggregations(), getUplockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixGetColNUplocks(), and singletonColumnStuffing().
| int SCIPmatrixGetColNDownlocks | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get number of downlocks of column
| matrix | matrix instance |
| col | column index |
Definition at line 1941 of file matrix.c.
References assert(), SCIP_Matrix::ndownlocks, NULL, and SCIPmatrixGetColNDownlocks().
Referenced by cancelCol(), cancelRow(), compensateVarLock(), detectDominatingVlbs(), detectDominatingVubs(), findDownlockAggregations(), getDownlockRowIdx(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixGetColNDownlocks(), and singletonColumnStuffing().
| SCIP_VAR * SCIPmatrixGetVar | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get variable pointer of column
| matrix | matrix instance |
| col | column index |
Definition at line 1953 of file matrix.c.
References assert(), NULL, SCIPmatrixGetVar(), 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(), SCIPmatrixGetVar(), 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 1965 of file matrix.c.
References assert(), NULL, SCIPmatrixGetColName(), SCIPvarGetName(), and SCIP_Matrix::vars.
Referenced by SCIPmatrixGetColName(), and 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 1977 of file matrix.c.
References assert(), NULL, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatval, SCIP_Real, and SCIPmatrixGetRowValPtr().
Referenced by applyLPboundTightening(), cancelRow(), compensateVarLock(), detectParallelCols(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), infinityCountUpdate(), isVlb(), isVub(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixGetRowValPtr(), singletonColumnStuffing(), and transformAndSolve().
| SCIP_RATIONAL ** SCIPmatrixGetRowValPtrExact | ( | SCIP_MATRIX * | matrix, |
| int | row ) |
get row based start pointer of values
| matrix | matrix instance |
| row | row index |
Definition at line 1989 of file matrix.c.
References assert(), SCIP_Matrix::matrixvalsexact, NULL, SCIP_Matrix::rowmatbeg, SCIP_MatrixValsExact::rowmatvalexact, and SCIPmatrixGetRowValPtrExact().
Referenced by SCIPmatrixGetRowValPtrExact().
| int * SCIPmatrixGetRowIdxPtr | ( | SCIP_MATRIX * | matrix, |
| int | row ) |
get row based start pointer of column indices
| matrix | matrix instance |
| row | row index |
Definition at line 2001 of file matrix.c.
References assert(), NULL, SCIP_Matrix::rowmatbeg, SCIP_Matrix::rowmatind, and SCIPmatrixGetRowIdxPtr().
Referenced by applyLPboundTightening(), cancelRow(), compensateVarLock(), detectParallelCols(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getMaxActivitySingleRowWithoutCol(), getMinActivitySingleRowWithoutCol(), getMinMaxActivityResiduals(), infinityCountUpdate(), isVlb(), isVub(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixGetRowIdxPtr(), 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 2013 of file matrix.c.
References assert(), NULL, SCIP_Matrix::rowmatcnt, and SCIPmatrixGetRowNNonzs().
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(), SCIPmatrixGetRowNNonzs(), singletonColumnStuffing(), and transformAndSolve().
| const char * SCIPmatrixGetRowName | ( | SCIP_MATRIX * | matrix, |
| int | row ) |
get name of row
| matrix | matrix instance |
| row | row index |
Definition at line 2025 of file matrix.c.
References assert(), SCIP_Matrix::cons, NULL, SCIPconsGetName(), and SCIPmatrixGetRowName().
Referenced by applyLPboundTightening(), cancelRow(), and SCIPmatrixGetRowName().
| int SCIPmatrixGetNRows | ( | SCIP_MATRIX * | matrix | ) |
get number of rows of the matrix
| matrix | matrix instance |
Definition at line 2037 of file matrix.c.
References assert(), SCIP_Matrix::nrows, NULL, and SCIPmatrixGetNRows().
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(), SCIPmatrixGetNRows(), 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 2047 of file matrix.c.
References assert(), SCIP_Matrix::lhs, NULL, SCIP_Real, and SCIPmatrixGetRowLhs().
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(), SCIPmatrixGetRowLhs(), 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 2059 of file matrix.c.
References assert(), NULL, SCIP_Matrix::rhs, SCIP_Real, and SCIPmatrixGetRowRhs().
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(), SCIPmatrixGetRowRhs(), and transformAndSolve().
| SCIP_RATIONAL * SCIPmatrixGetRowLhsExact | ( | SCIP_MATRIX * | matrix, |
| int | row ) |
get left-hand-side of row
| matrix | matrix instance |
| row | row index |
Definition at line 2071 of file matrix.c.
References assert(), SCIP_MatrixValsExact::lhsexact, SCIP_Matrix::matrixvalsexact, NULL, and SCIPmatrixGetRowLhsExact().
Referenced by SCIPmatrixGetRowLhsExact().
| SCIP_RATIONAL * SCIPmatrixGetRowRhsExact | ( | SCIP_MATRIX * | matrix, |
| int | row ) |
get right-hand-side of row
| matrix | matrix instance |
| row | row index |
Definition at line 2083 of file matrix.c.
References assert(), SCIP_Matrix::matrixvalsexact, NULL, SCIP_MatrixValsExact::rhsexact, and SCIPmatrixGetRowRhsExact().
Referenced by SCIPmatrixGetRowRhsExact().
| 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 2095 of file matrix.c.
References assert(), SCIP_Matrix::isrhsinfinite, NULL, SCIP_Bool, and SCIPmatrixIsRowRhsInfinity().
Referenced by calcVarBoundsDominated(), calcVarBoundsDominating(), detectParallelCols(), dualBoundStrengthening(), findDominancePairs(), getDownlockRowIdx(), getUplockRowIdx(), isVlb(), isVub(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixIsRowRhsInfinity(), and singletonColumnStuffing().
| int SCIPmatrixGetNNonzs | ( | SCIP_MATRIX * | matrix | ) |
get number of non-zeros of matrix
| matrix | matrix instance |
Definition at line 2107 of file matrix.c.
References assert(), SCIP_Matrix::nnonzs, NULL, and SCIPmatrixGetNNonzs().
Referenced by SCIP_DECL_PRESOLEXEC(), and SCIPmatrixGetNNonzs().
| SCIP_Real SCIPmatrixGetRowMinActivity | ( | SCIP_MATRIX * | matrix, |
| int | row ) |
get minimal activity of row
| matrix | matrix instance |
| row | row index |
Definition at line 2117 of file matrix.c.
References assert(), SCIP_Matrix::minactivity, NULL, SCIP_Real, and SCIPmatrixGetRowMinActivity().
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getMinMaxActivityResiduals(), and SCIPmatrixGetRowMinActivity().
| SCIP_Real SCIPmatrixGetRowMaxActivity | ( | SCIP_MATRIX * | matrix, |
| int | row ) |
get maximal activity of row
| matrix | matrix instance |
| row | row index |
Definition at line 2129 of file matrix.c.
References assert(), SCIP_Matrix::maxactivity, NULL, SCIP_Real, and SCIPmatrixGetRowMaxActivity().
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getBinVarIdxInDownlockRow(), getBinVarIdxInUplockRow(), getMinMaxActivityResiduals(), and SCIPmatrixGetRowMaxActivity().
| 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 2141 of file matrix.c.
References assert(), SCIP_Matrix::minactivityneginf, NULL, and SCIPmatrixGetRowNMinActNegInf().
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getMinMaxActivityResiduals(), and SCIPmatrixGetRowNMinActNegInf().
| 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 2153 of file matrix.c.
References assert(), SCIP_Matrix::minactivityposinf, NULL, and SCIPmatrixGetRowNMinActPosInf().
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getMinMaxActivityResiduals(), and SCIPmatrixGetRowNMinActPosInf().
| 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 2165 of file matrix.c.
References assert(), SCIP_Matrix::maxactivityneginf, NULL, and SCIPmatrixGetRowNMaxActNegInf().
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getMinMaxActivityResiduals(), and SCIPmatrixGetRowNMaxActNegInf().
| 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 2177 of file matrix.c.
References assert(), SCIP_Matrix::maxactivityposinf, NULL, and SCIPmatrixGetRowNMaxActPosInf().
Referenced by findDominancePairs(), getActivityResidualsLowerBound(), getActivityResidualsUpperBound(), getMinMaxActivityResiduals(), and SCIPmatrixGetRowNMaxActPosInf().
| SCIP_CONS * SCIPmatrixGetCons | ( | SCIP_MATRIX * | matrix, |
| int | row ) |
get constraint pointer for constraint representing row
| matrix | matrix instance |
| row | row index |
Definition at line 2189 of file matrix.c.
References assert(), SCIP_Matrix::cons, NULL, and SCIPmatrixGetCons().
Referenced by cancelRow(), detectDominatingVlbs(), detectDominatingVubs(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), and SCIPmatrixGetCons().
| SCIP_Bool SCIPmatrixUplockConflict | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get if conflicting uplocks of a specific variable present
get if conflicting uplocks of variable present
| matrix | matrix instance |
| col | column index |
Definition at line 2201 of file matrix.c.
References assert(), NULL, SCIP_Matrix::nuplocks, SCIP_Bool, SCIP_LOCKTYPE_MODEL, SCIPmatrixUplockConflict(), SCIPvarGetNLocksUpType(), and SCIP_Matrix::vars.
Referenced by dualBoundStrengthening(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixCreate(), and SCIPmatrixUplockConflict().
| SCIP_Bool SCIPmatrixDownlockConflict | ( | SCIP_MATRIX * | matrix, |
| int | col ) |
get if conflicting downlocks of a specific variable present
get if conflicting downlocks of variable present
| matrix | matrix instance |
| col | column index |
Definition at line 2213 of file matrix.c.
References assert(), SCIP_Matrix::ndownlocks, NULL, SCIP_Bool, SCIP_LOCKTYPE_MODEL, SCIPmatrixDownlockConflict(), SCIPvarGetNLocksDownType(), and SCIP_Matrix::vars.
Referenced by dualBoundStrengthening(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIP_DECL_PRESOLEXEC(), SCIPmatrixCreate(), and SCIPmatrixDownlockConflict().