33#ifndef __SCIP_PUB_LP_H__
34#define __SCIP_PUB_LP_H__
224#define SCIPcolGetObj(col) (col)->obj
225#define SCIPcolGetLb(col) (col)->lb
226#define SCIPcolGetUb(col) (col)->ub
227#define SCIPcolGetBestBound(col) ((col)->obj >= 0.0 ? (col)->lb : (col)->ub)
228#define SCIPcolGetPrimsol(col) ((col)->lppos >= 0 ? (col)->primsol : 0.0)
229#define SCIPcolGetMinPrimsol(col) ((col)->minprimsol)
230#define SCIPcolGetMaxPrimsol(col) ((col)->maxprimsol)
231#define SCIPcolGetBasisStatus(col) ((SCIP_BASESTAT)(col)->basisstatus)
232#define SCIPcolGetVar(col) (col)->var
233#define SCIPcolGetIndex(col) (col)->index
234#define SCIPcolIsIntegral(col) (col)->integral
235#define SCIPcolIsRemovable(col) (col)->removable
236#define SCIPcolGetLPPos(col) (col)->lppos
237#define SCIPcolGetLPDepth(col) (col)->lpdepth
238#define SCIPcolIsInLP(col) ((col)->lppos >= 0)
239#define SCIPcolGetNNonz(col) (col)->len
240#define SCIPcolGetNLPNonz(col) (col)->nlprows
241#define SCIPcolGetRows(col) (col)->rows
242#define SCIPcolGetVals(col) (col)->vals
243#define SCIPcolGetStrongbranchNode(col) (col)->sbnode
244#define SCIPcolGetNStrongbranchs(col) (col)->nsbcalls
245#define SCIPcolGetAge(col) (col)->age
246#define SCIPboundtypeOpposite(boundtype) \
247 ((boundtype) == SCIP_BOUNDTYPE_LOWER ? SCIP_BOUNDTYPE_UPPER : SCIP_BOUNDTYPE_LOWER)
512#define SCIProwGetNNonz(row) (row)->len
513#define SCIProwGetNLPNonz(row) (row)->nlpcols
514#define SCIProwGetCols(row) (row)->cols
515#define SCIProwGetVals(row) (row)->vals
516#define SCIProwGetConstant(row) (row)->constant
517#define SCIProwGetNorm(row) sqrt((row)->sqrnorm)
518#define SCIProwGetSumNorm(row) (row)->sumnorm
519#define SCIProwGetLhs(row) (row)->lhs
520#define SCIProwGetRhs(row) (row)->rhs
521#define SCIProwGetDualsol(row) ((row)->lppos >= 0 ? (row)->dualsol : 0.0)
522#define SCIProwGetDualfarkas(row) ((row)->lppos >= 0 ? (row)->dualfarkas : 0.0)
523#define SCIProwGetBasisStatus(row) ((SCIP_BASESTAT) (row)->basisstatus)
524#define SCIProwGetName(row) (row)->name
525#define SCIProwGetIndex(row) (row)->index
526#define SCIProwGetAge(row) (row)->age
527#define SCIProwGetRank(row) (row)->rank
528#define SCIProwIsIntegral(row) (row)->integral
529#define SCIProwIsLocal(row) (row)->local
530#define SCIProwIsModifiable(row) (row)->modifiable
531#define SCIProwIsRemovable(row) (row)->removable
532#define SCIProwGetOrigintype(row) (row)->origintype
533#define SCIProwGetOriginCons(row) ((SCIP_CONS*) ((SCIP_ROWORIGINTYPE) row->origintype == SCIP_ROWORIGINTYPE_CONS ? (row)->origin : NULL))
534#define SCIProwGetOriginSepa(row) ((SCIP_SEPA*) ((SCIP_ROWORIGINTYPE) row->origintype == SCIP_ROWORIGINTYPE_SEPA ? (row)->origin : NULL))
535#define SCIProwIsInGlobalCutpool(row) (row)->inglobalcutpool
536#define SCIProwGetLPPos(row) (row)->lppos
537#define SCIProwGetLPDepth(row) (row)->lpdepth
538#define SCIProwIsInLP(row) ((row)->lppos >= 0)
539#define SCIProwGetActiveLPCount(row) ((row)->activeinlpcounter)
540#define SCIProwGetNLPsAfterCreation(row) ((row)->nlpsaftercreation)
541#define SCIProwChgRank(row, cutrank) ((row)->rank = (cutrank))
common defines and data types used in all packages of SCIP
SCIP_Real SCIPcolGetMinPrimsol(SCIP_COL *col)
int SCIPcolGetLPPos(SCIP_COL *col)
int SCIPcolGetVarProbindex(SCIP_COL *col)
SCIP_Bool SCIPcolIsRemovable(SCIP_COL *col)
SCIP_VAR * SCIPcolGetVar(SCIP_COL *col)
SCIP_Bool SCIPcolIsIntegral(SCIP_COL *col)
SCIP_Real SCIPcolGetObj(SCIP_COL *col)
int SCIPcolGetNNonz(SCIP_COL *col)
SCIP_Real * SCIPcolGetVals(SCIP_COL *col)
SCIP_ROW ** SCIPcolGetRows(SCIP_COL *col)
void SCIPcolSort(SCIP_COL *col)
int SCIPcolGetIndex(SCIP_COL *col)
SCIP_Real SCIPcolGetBestBound(SCIP_COL *col)
SCIP_Real SCIPcolGetLb(SCIP_COL *col)
SCIP_Real SCIPcolGetPrimsol(SCIP_COL *col)
SCIP_Real SCIPcolGetUb(SCIP_COL *col)
SCIP_Longint SCIPcolGetStrongbranchNode(SCIP_COL *col)
int SCIPcolGetNLPNonz(SCIP_COL *col)
int SCIPcolGetNStrongbranchs(SCIP_COL *col)
int SCIPcolGetAge(SCIP_COL *col)
SCIP_Bool SCIPcolIsInLP(SCIP_COL *col)
int SCIPcolGetLPDepth(SCIP_COL *col)
SCIP_BASESTAT SCIPcolGetBasisStatus(SCIP_COL *col)
SCIP_BOUNDTYPE SCIPboundtypeOpposite(SCIP_BOUNDTYPE boundtype)
SCIP_Real SCIPcolGetMaxPrimsol(SCIP_COL *col)
SCIP_Bool SCIProwIsIntegral(SCIP_ROW *row)
void SCIProwSort(SCIP_ROW *row)
SCIP_Real SCIProwGetLhs(SCIP_ROW *row)
SCIP_Bool SCIProwIsModifiable(SCIP_ROW *row)
SCIP_Longint SCIProwGetActiveLPCount(SCIP_ROW *row)
SCIP_Real SCIProwGetOrthogonality(SCIP_ROW *row1, SCIP_ROW *row2, char orthofunc)
SCIP_Real SCIProwGetScalarProduct(SCIP_ROW *row1, SCIP_ROW *row2)
int SCIProwGetLPDepth(SCIP_ROW *row)
SCIP_Real SCIProwGetParallelism(SCIP_ROW *row1, SCIP_ROW *row2, char orthofunc)
SCIP_CONS * SCIProwGetOriginCons(SCIP_ROW *row)
int SCIProwGetNNonz(SCIP_ROW *row)
SCIP_COL ** SCIProwGetCols(SCIP_ROW *row)
SCIP_Bool SCIProwIsInGlobalCutpool(SCIP_ROW *row)
SCIP_Real SCIProwGetRhs(SCIP_ROW *row)
int SCIProwGetAge(SCIP_ROW *row)
int SCIProwGetNLPNonz(SCIP_ROW *row)
SCIP_Real SCIProwGetNorm(SCIP_ROW *row)
int SCIProwGetLPPos(SCIP_ROW *row)
SCIP_Bool SCIProwIsLocal(SCIP_ROW *row)
SCIP_CONSHDLR * SCIProwGetOriginConshdlr(SCIP_ROW *row)
SCIP_Longint SCIProwGetNLPsAfterCreation(SCIP_ROW *row)
void SCIProwLock(SCIP_ROW *row)
SCIP_Bool SCIProwIsRemovable(SCIP_ROW *row)
const char * SCIProwGetName(SCIP_ROW *row)
SCIP_SEPA * SCIProwGetOriginSepa(SCIP_ROW *row)
void SCIProwUnlock(SCIP_ROW *row)
SCIP_Real SCIProwGetSumNorm(SCIP_ROW *row)
int SCIProwGetRank(SCIP_ROW *row)
SCIP_Real SCIProwGetDualfarkas(SCIP_ROW *row)
int SCIProwGetIndex(SCIP_ROW *row)
void SCIProwChgRank(SCIP_ROW *row, int rank)
SCIP_Real SCIProwGetConstant(SCIP_ROW *row)
SCIP_Bool SCIProwIsInLP(SCIP_ROW *row)
SCIP_Real SCIProwGetDualsol(SCIP_ROW *row)
SCIP_Real * SCIProwGetVals(SCIP_ROW *row)
SCIP_ROWORIGINTYPE SCIProwGetOrigintype(SCIP_ROW *row)
SCIP_BASESTAT SCIProwGetBasisStatus(SCIP_ROW *row)
data structures for LP management
type definitions for constraints and constraint handlers
struct SCIP_Cons SCIP_CONS
struct SCIP_Conshdlr SCIP_CONSHDLR
type definitions for LP management
enum SCIP_RowOriginType SCIP_ROWORIGINTYPE
enum SCIP_BoundType SCIP_BOUNDTYPE
type definitions for specific LP solvers interface
enum SCIP_BaseStat SCIP_BASESTAT
type definitions for miscellaneous datastructures
#define SCIP_DECL_SORTPTRCOMP(x)
type definitions for separators
struct SCIP_Sepa SCIP_SEPA
type definitions for problem variables