SCIP Doxygen Documentation
Loading...
Searching...
No Matches

Detailed Description

methods for constraints and constraint handlers

Author
Tobias Achterberg
Timo Berthold

Definition in file cons.c.

#include <assert.h>
#include "scip/def.h"
#include "scip/set.h"
#include "scip/stat.h"
#include "scip/clock.h"
#include "scip/var.h"
#include "scip/prob.h"
#include "scip/tree.h"
#include "scip/scip.h"
#include "scip/sepastore.h"
#include "scip/cons.h"
#include "scip/branch.h"
#include "scip/reopt.h"
#include "scip/pub_misc.h"
#include "scip/struct_cons.h"

Go to the source code of this file.

Macros

#define AGERESETAVG_INIT   1000.0
#define AGERESETAVG_MIN   100.0
#define AGERESETAVG_DECAY   0.0005
#define AGERESETAVG_AGELIMIT   2.0
#define AGERESETAVG_OBSOLETEAGE   1.8
#define checkConssArrays(conshdlr)

Functions

static SCIP_RETCODE conshdlrEnsureConssMem (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)
static SCIP_RETCODE conshdlrEnsureInitconssMem (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)
static SCIP_RETCODE conshdlrEnsureSepaconssMem (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)
static SCIP_RETCODE conshdlrEnsureEnfoconssMem (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)
static SCIP_RETCODE conshdlrEnsureCheckconssMem (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)
static SCIP_RETCODE conshdlrEnsurePropconssMem (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)
static SCIP_RETCODE conshdlrEnsureUpdateconssMem (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, int num)
static SCIP_Bool conshdlrAreUpdatesDelayed (SCIP_CONSHDLR *conshdlr)
static SCIP_Real conshdlrGetAgeresetavg (SCIP_CONSHDLR *conshdlr)
static void conshdlrUpdateAgeresetavg (SCIP_CONSHDLR *conshdlr, SCIP_Real age)
static SCIP_Bool consExceedsAgelimit (SCIP_CONS *cons, SCIP_SET *set)
static SCIP_Bool consExceedsObsoleteage (SCIP_CONS *cons, SCIP_SET *set)
static SCIP_RETCODE conshdlrMarkConsObsolete (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrMarkConsUseful (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static void conshdlrMarkConsPropagate (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static void conshdlrUnmarkConsPropagate (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrAddCons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)
static void conshdlrDelCons (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrAddInitcons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)
static void conshdlrDelInitcons (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrAddSepacons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)
static void conshdlrDelSepacons (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrAddEnfocons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)
static void conshdlrDelEnfocons (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrAddCheckcons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)
static void conshdlrDelCheckcons (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrAddPropcons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)
static void conshdlrDelPropcons (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrEnableConsSeparation (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrDisableConsSeparation (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrEnableConsPropagation (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrDisableConsPropagation (SCIP_CONSHDLR *conshdlr, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrEnableCons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrDisableCons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrActivateCons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons, int depth, SCIP_Bool focusnode)
static SCIP_RETCODE conshdlrDeactivateCons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons)
static SCIP_RETCODE conshdlrProcessUpdates (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
static void conshdlrDelayUpdates (SCIP_CONSHDLR *conshdlr)
static SCIP_RETCODE conshdlrForceUpdates (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
static SCIP_RETCODE conshdlrAddUpdateCons (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_CONS *cons)
 SCIP_DECL_SORTPTRCOMP (SCIPconshdlrCompSepa)
 SCIP_DECL_SORTPTRCOMP (SCIPconshdlrCompEnfo)
 SCIP_DECL_SORTPTRCOMP (SCIPconshdlrCompCheck)
 SCIP_DECL_SORTPTRCOMP (SCIPconsCompCheck)
SCIP_RETCODE SCIPconshdlrCopyInclude (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_Bool *valid)
static SCIP_RETCODE doConshdlrCreate (SCIP_CONSHDLR **conshdlr, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int sepapriority, int enfopriority, int checkpriority, int sepafreq, int propfreq, int eagerfreq, int maxprerounds, SCIP_Bool delaysepa, SCIP_Bool delayprop, SCIP_Bool needscons, SCIP_PROPTIMING proptiming, SCIP_PRESOLTIMING presoltiming, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), SCIP_DECL_CONSFREE((*consfree)), SCIP_DECL_CONSINIT((*consinit)), SCIP_DECL_CONSEXIT((*consexit)), SCIP_DECL_CONSINITPRE((*consinitpre)), SCIP_DECL_CONSEXITPRE((*consexitpre)), SCIP_DECL_CONSINITSOL((*consinitsol)), SCIP_DECL_CONSEXITSOL((*consexitsol)), SCIP_DECL_CONSDELETE((*consdelete)), SCIP_DECL_CONSTRANS((*constrans)), SCIP_DECL_CONSINITLP((*consinitlp)), SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), SCIP_DECL_CONSENFOLP((*consenfolp)), SCIP_DECL_CONSENFORELAX((*consenforelax)), SCIP_DECL_CONSENFOPS((*consenfops)), SCIP_DECL_CONSCHECK((*conscheck)), SCIP_DECL_CONSPROP((*consprop)), SCIP_DECL_CONSPRESOL((*conspresol)), SCIP_DECL_CONSRESPROP((*consresprop)), SCIP_DECL_CONSLOCK((*conslock)), SCIP_DECL_CONSACTIVE((*consactive)), SCIP_DECL_CONSDEACTIVE((*consdeactive)), SCIP_DECL_CONSENABLE((*consenable)), SCIP_DECL_CONSDISABLE((*consdisable)), SCIP_DECL_CONSDELVARS((*consdelvars)), SCIP_DECL_CONSPRINT((*consprint)), SCIP_DECL_CONSCOPY((*conscopy)), SCIP_DECL_CONSPARSE((*consparse)), SCIP_DECL_CONSGETVARS((*consgetvars)), SCIP_DECL_CONSGETNVARS((*consgetnvars)), SCIP_DECL_CONSGETDIVEBDCHGS((*consgetdivebdchgs)), SCIP_DECL_CONSGETPERMSYMGRAPH((*consgetpermsymgraph)), SCIP_DECL_CONSGETSIGNEDPERMSYMGRAPH((*consgetsignedpermsymgraph)), SCIP_CONSHDLRDATA *conshdlrdata)
SCIP_RETCODE SCIPconshdlrCreate (SCIP_CONSHDLR **conshdlr, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, BMS_BLKMEM *blkmem, const char *name, const char *desc, int sepapriority, int enfopriority, int checkpriority, int sepafreq, int propfreq, int eagerfreq, int maxprerounds, SCIP_Bool delaysepa, SCIP_Bool delayprop, SCIP_Bool needscons, SCIP_PROPTIMING proptiming, SCIP_PRESOLTIMING presoltiming, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)), SCIP_DECL_CONSFREE((*consfree)), SCIP_DECL_CONSINIT((*consinit)), SCIP_DECL_CONSEXIT((*consexit)), SCIP_DECL_CONSINITPRE((*consinitpre)), SCIP_DECL_CONSEXITPRE((*consexitpre)), SCIP_DECL_CONSINITSOL((*consinitsol)), SCIP_DECL_CONSEXITSOL((*consexitsol)), SCIP_DECL_CONSDELETE((*consdelete)), SCIP_DECL_CONSTRANS((*constrans)), SCIP_DECL_CONSINITLP((*consinitlp)), SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), SCIP_DECL_CONSENFOLP((*consenfolp)), SCIP_DECL_CONSENFORELAX((*consenforelax)), SCIP_DECL_CONSENFOPS((*consenfops)), SCIP_DECL_CONSCHECK((*conscheck)), SCIP_DECL_CONSPROP((*consprop)), SCIP_DECL_CONSPRESOL((*conspresol)), SCIP_DECL_CONSRESPROP((*consresprop)), SCIP_DECL_CONSLOCK((*conslock)), SCIP_DECL_CONSACTIVE((*consactive)), SCIP_DECL_CONSDEACTIVE((*consdeactive)), SCIP_DECL_CONSENABLE((*consenable)), SCIP_DECL_CONSDISABLE((*consdisable)), SCIP_DECL_CONSDELVARS((*consdelvars)), SCIP_DECL_CONSPRINT((*consprint)), SCIP_DECL_CONSCOPY((*conscopy)), SCIP_DECL_CONSPARSE((*consparse)), SCIP_DECL_CONSGETVARS((*consgetvars)), SCIP_DECL_CONSGETNVARS((*consgetnvars)), SCIP_DECL_CONSGETDIVEBDCHGS((*consgetdivebdchgs)), SCIP_DECL_CONSGETPERMSYMGRAPH((*consgetpermsymgraph)), SCIP_DECL_CONSGETSIGNEDPERMSYMGRAPH((*consgetsignedpermsymgraph)), SCIP_CONSHDLRDATA *conshdlrdata)
SCIP_RETCODE SCIPconshdlrFree (SCIP_CONSHDLR **conshdlr, SCIP_SET *set)
SCIP_RETCODE SCIPconshdlrInit (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconshdlrExit (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconshdlrInitpre (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconshdlrExitpre (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconshdlrInitsol (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconshdlrExitsol (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_Bool restart)
SCIP_RETCODE SCIPconshdlrInitLP (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_Bool initkeptconss, SCIP_Bool *cutoff)
SCIP_RETCODE SCIPconshdlrSeparateLP (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_SEPASTORE *sepastore, int depth, SCIP_Bool execdelayed, SCIP_RESULT *result)
SCIP_RETCODE SCIPconshdlrSeparateSol (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_SEPASTORE *sepastore, SCIP_SOL *sol, int depth, SCIP_Bool execdelayed, SCIP_RESULT *result)
SCIP_RETCODE SCIPconshdlrEnforceRelaxSol (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_SEPASTORE *sepastore, SCIP_SOL *relaxsol, SCIP_Bool solinfeasible, SCIP_RESULT *result)
SCIP_RETCODE SCIPconshdlrEnforceLPSol (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_SEPASTORE *sepastore, SCIP_Bool solinfeasible, SCIP_RESULT *result)
SCIP_RETCODE SCIPconshdlrGetDiveBoundChanges (SCIP_CONSHDLR *conshdlr, SCIP_SET *set, SCIP_DIVESET *diveset, SCIP_SOL *sol, SCIP_Bool *success, SCIP_Bool *infeasible)
SCIP_RETCODE SCIPconshdlrEnforcePseudoSol (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_TREE *tree, SCIP_BRANCHCAND *branchcand, SCIP_Bool solinfeasible, SCIP_Bool objinfeasible, SCIP_Bool forced, SCIP_RESULT *result)
SCIP_RETCODE SCIPconshdlrCheck (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_SOL *sol, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool printreason, SCIP_Bool completely, SCIP_RESULT *result)
SCIP_RETCODE SCIPconshdlrPropagate (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, int depth, SCIP_Bool fullpropagation, SCIP_Bool execdelayed, SCIP_Bool instrongbranching, SCIP_PROPTIMING proptiming, SCIP_RESULT *result)
SCIP_RETCODE SCIPconshdlrPresolve (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PRESOLTIMING timing, int nrounds, int *nfixedvars, int *naggrvars, int *nchgvartypes, int *nchgbds, int *naddholes, int *ndelconss, int *naddconss, int *nupgdconss, int *nchgcoefs, int *nchgsides, SCIP_RESULT *result)
SCIP_RETCODE SCIPconshdlrDelVars (SCIP_CONSHDLR *conshdlr, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconshdlrLockVars (SCIP_CONSHDLR *conshdlr, SCIP_SET *set)
SCIP_RETCODE SCIPconshdlrUnlockVars (SCIP_CONSHDLR *conshdlr, SCIP_SET *set)
const char * SCIPconshdlrGetName (SCIP_CONSHDLR *conshdlr)
const char * SCIPconshdlrGetDesc (SCIP_CONSHDLR *conshdlr)
SCIP_CONSHDLRDATASCIPconshdlrGetData (SCIP_CONSHDLR *conshdlr)
void SCIPconshdlrSetData (SCIP_CONSHDLR *conshdlr, SCIP_CONSHDLRDATA *conshdlrdata)
void SCIPconshdlrSetSepa (SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSSEPALP((*conssepalp)), SCIP_DECL_CONSSEPASOL((*conssepasol)), int sepafreq, int sepapriority, SCIP_Bool delaysepa)
void SCIPconshdlrSetProp (SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPROP((*consprop)), int propfreq, SCIP_Bool delayprop, SCIP_PROPTIMING timingmask)
void SCIPconshdlrSetEnforelax (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetCopy (SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)),)
void SCIPconshdlrSetFree (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetInit (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetExit (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetInitsol (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetExitsol (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetInitpre (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetExitpre (SCIP_CONSHDLR *conshdlr,)
SCIP_RETCODE SCIPconshdlrSetPresol (SCIP_CONSHDLR *conshdlr, SCIP_DECL_CONSPRESOL((*conspresol)), int maxprerounds, SCIP_PRESOLTIMING presoltiming)
void SCIPconshdlrSetDelete (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetTrans (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetInitlp (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetResprop (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetActive (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetDeactive (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetEnable (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetDisable (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetDelvars (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetPrint (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetParse (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetGetVars (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetGetNVars (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetGetDiveBdChgs (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetGetPermsymGraph (SCIP_CONSHDLR *conshdlr,)
void SCIPconshdlrSetGetSignedPermsymGraph (SCIP_CONSHDLR *conshdlr,)
SCIP_CONS ** SCIPconshdlrGetConss (SCIP_CONSHDLR *conshdlr)
SCIP_CONS ** SCIPconshdlrGetEnfoConss (SCIP_CONSHDLR *conshdlr)
SCIP_CONS ** SCIPconshdlrGetCheckConss (SCIP_CONSHDLR *conshdlr)
SCIP_CONS ** SCIPconshdlrGetUpdateConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNEnfoConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNCheckConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNActiveConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNEnabledConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNUpdateConss (SCIP_CONSHDLR *conshdlr)
void SCIPconshdlrEnableOrDisableClocks (SCIP_CONSHDLR *conshdlr, SCIP_Bool enable)
SCIP_Real SCIPconshdlrGetSetupTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetPresolTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetSepaTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetEnfoLPTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetEnfoPSTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetEnfoRelaxTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetPropTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetStrongBranchPropTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetCheckTime (SCIP_CONSHDLR *conshdlr)
SCIP_Real SCIPconshdlrGetRespropTime (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNSepaCalls (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNEnfoLPCalls (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNEnfoPSCalls (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNEnfoRelaxCalls (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNPropCalls (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNCheckCalls (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNRespropCalls (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNCutoffs (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNCutsFound (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNCutsApplied (SCIP_CONSHDLR *conshdlr)
void SCIPconshdlrIncNAppliedCuts (SCIP_CONSHDLR *conshdlr)
void SCIPconshdlrIncNCutsFound (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNConssFound (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNDomredsFound (SCIP_CONSHDLR *conshdlr)
SCIP_Longint SCIPconshdlrGetNChildren (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetMaxNActiveConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetStartNActiveConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNFixedVars (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNAggrVars (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNChgVarTypes (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNChgBds (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNAddHoles (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNDelConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNAddConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNUpgdConss (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNChgCoefs (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNChgSides (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetNPresolCalls (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetSepaPriority (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetEnfoPriority (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetCheckPriority (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetSepaFreq (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetPropFreq (SCIP_CONSHDLR *conshdlr)
int SCIPconshdlrGetEagerFreq (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrNeedsCons (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrDoesPresolve (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrIsSeparationDelayed (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrIsPropagationDelayed (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrWasLPSeparationDelayed (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrWasSolSeparationDelayed (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrWasPropagationDelayed (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrIsInitialized (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrIsClonable (SCIP_CONSHDLR *conshdlr)
SCIP_PROPTIMING SCIPconshdlrGetPropTiming (SCIP_CONSHDLR *conshdlr)
void SCIPconshdlrSetPropTiming (SCIP_CONSHDLR *conshdlr, SCIP_PROPTIMING proptiming)
SCIP_PRESOLTIMING SCIPconshdlrGetPresolTiming (SCIP_CONSHDLR *conshdlr)
void SCIPconshdlrSetPresolTiming (SCIP_CONSHDLR *conshdlr, SCIP_PRESOLTIMING presoltiming)
SCIP_Bool SCIPconshdlrSupportsPermsymDetection (SCIP_CONSHDLR *conshdlr)
SCIP_Bool SCIPconshdlrSupportsSignedPermsymDetection (SCIP_CONSHDLR *conshdlr)
static SCIP_RETCODE conssetchgCreate (SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem)
static SCIP_RETCODE conssetchgRelease (SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set)
SCIP_RETCODE SCIPconssetchgFree (SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set)
static SCIP_RETCODE conssetchgEnsureAddedconssSize (SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, int num)
static SCIP_RETCODE conssetchgEnsureDisabledconssSize (SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, int num)
SCIP_RETCODE SCIPconssetchgAddAddedCons (SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_CONS *cons, int depth, SCIP_Bool focusnode, SCIP_Bool active)
SCIP_RETCODE SCIPconssetchgAddDisabledCons (SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_CONS *cons)
static SCIP_RETCODE conssetchgDelAddedCons (SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, int arraypos)
static SCIP_RETCODE conssetchgDelDisabledCons (SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, int arraypos)
void SCIPconssetchgGetAddedConsData (SCIP_CONSSETCHG *conssetchg, SCIP_CONS ***conss, int *nconss)
SCIP_RETCODE SCIPconssetchgApply (SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, int depth, SCIP_Bool focusnode)
SCIP_RETCODE SCIPconssetchgUndo (SCIP_CONSSETCHG *conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconssetchgMakeGlobal (SCIP_CONSSETCHG **conssetchg, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_REOPT *reopt)
SCIP_RETCODE SCIPconsCreate (SCIP_CONS **cons, BMS_BLKMEM *blkmem, SCIP_SET *set, const char *name, SCIP_CONSHDLR *conshdlr, SCIP_CONSDATA *consdata, SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode, SCIP_Bool original, SCIP_Bool deleteconsdata)
SCIP_RETCODE SCIPconsCopy (SCIP_CONS **cons, SCIP_SET *set, const char *name, SCIP *sourcescip, SCIP_CONSHDLR *sourceconshdlr, SCIP_CONS *sourcecons, SCIP_HASHMAP *varmap, SCIP_HASHMAP *consmap, SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode, SCIP_Bool global, SCIP_Bool *valid)
SCIP_RETCODE SCIPconsParse (SCIP_CONS **cons, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, const char *str, SCIP_Bool initial, SCIP_Bool separate, SCIP_Bool enforce, SCIP_Bool check, SCIP_Bool propagate, SCIP_Bool local, SCIP_Bool modifiable, SCIP_Bool dynamic, SCIP_Bool removable, SCIP_Bool stickingatnode, SCIP_Bool *success)
SCIP_RETCODE SCIPconsChgName (SCIP_CONS *cons, BMS_BLKMEM *blkmem, const char *name)
SCIP_RETCODE SCIPconsFree (SCIP_CONS **cons, BMS_BLKMEM *blkmem, SCIP_SET *set)
void SCIPconsCapture (SCIP_CONS *cons)
SCIP_RETCODE SCIPconsRelease (SCIP_CONS **cons, BMS_BLKMEM *blkmem, SCIP_SET *set)
SCIP_RETCODE SCIPconsPrint (SCIP_CONS *cons, SCIP_SET *set, SCIP_MESSAGEHDLR *messagehdlr, FILE *file)
SCIP_RETCODE SCIPconsGetVars (SCIP_CONS *cons, SCIP_SET *set, SCIP_VAR **vars, int varssize, SCIP_Bool *success)
SCIP_RETCODE SCIPconsGetNVars (SCIP_CONS *cons, SCIP_SET *set, int *nvars, SCIP_Bool *success)
SCIP_RETCODE SCIPconsGetPermsymGraph (SCIP_CONS *cons, SCIP_SET *set, SYM_GRAPH *graph, SCIP_Bool *success)
SCIP_RETCODE SCIPconsGetSignedPermsymGraph (SCIP_CONS *cons, SCIP_SET *set, SYM_GRAPH *graph, SCIP_Bool *success)
SCIP_RETCODE SCIPconsDelete (SCIP_CONS *cons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_REOPT *reopt)
SCIP_RETCODE SCIPconsTransform (SCIP_CONS *origcons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_CONS **transcons)
SCIP_RETCODE SCIPconsSetInitial (SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat, SCIP_Bool initial)
SCIP_RETCODE SCIPconsSetSeparated (SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool separate)
SCIP_RETCODE SCIPconsSetEnforced (SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool enforce)
SCIP_RETCODE SCIPconsSetChecked (SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool check)
SCIP_RETCODE SCIPconsSetPropagated (SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool propagate)
void SCIPconsSetLocal (SCIP_CONS *cons, SCIP_Bool local)
void SCIPconsSetModifiable (SCIP_CONS *cons, SCIP_Bool modifiable)
void SCIPconsSetDynamic (SCIP_CONS *cons, SCIP_Bool dynamic)
void SCIPconsSetRemovable (SCIP_CONS *cons, SCIP_Bool removable)
void SCIPconsSetStickingAtNode (SCIP_CONS *cons, SCIP_Bool stickingatnode)
void SCIPconsSetNamePointer (SCIP_CONS *cons, const char *name)
SCIP_CONSSCIPconsGetTransformed (SCIP_CONS *cons)
SCIP_RETCODE SCIPconsActivate (SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat, int depth, SCIP_Bool focusnode)
SCIP_RETCODE SCIPconsDeactivate (SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconsEnable (SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconsDisable (SCIP_CONS *cons, SCIP_SET *set, SCIP_STAT *stat)
SCIP_RETCODE SCIPconsEnableSeparation (SCIP_CONS *cons, SCIP_SET *set)
SCIP_RETCODE SCIPconsDisableSeparation (SCIP_CONS *cons, SCIP_SET *set)
SCIP_RETCODE SCIPconsEnablePropagation (SCIP_CONS *cons, SCIP_SET *set)
SCIP_RETCODE SCIPconsDisablePropagation (SCIP_CONS *cons, SCIP_SET *set)
void SCIPconsMarkConflict (SCIP_CONS *cons)
SCIP_RETCODE SCIPconsMarkPropagate (SCIP_CONS *cons, SCIP_SET *set)
SCIP_RETCODE SCIPconsUnmarkPropagate (SCIP_CONS *cons, SCIP_SET *set)
SCIP_RETCODE SCIPconsAddAge (SCIP_CONS *cons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_Real deltaage, SCIP_REOPT *reopt)
SCIP_RETCODE SCIPconsIncAge (SCIP_CONS *cons, BMS_BLKMEM *blkmem, SCIP_SET *set, SCIP_STAT *stat, SCIP_PROB *prob, SCIP_REOPT *reopt)
SCIP_RETCODE SCIPconsResetAge (SCIP_CONS *cons, SCIP_SET *set)
SCIP_RETCODE SCIPconsResolvePropagation (SCIP_CONS *cons, SCIP_SET *set, SCIP_VAR *infervar, int inferinfo, SCIP_BOUNDTYPE inferboundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsAddLocks (SCIP_CONS *cons, SCIP_SET *set, SCIP_LOCKTYPE locktype, int nlockspos, int nlocksneg)
SCIP_RETCODE SCIPconsCheck (SCIP_CONS *cons, SCIP_SET *set, SCIP_SOL *sol, SCIP_Bool checkintegrality, SCIP_Bool checklprows, SCIP_Bool printreason, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsEnfops (SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool solinfeasible, SCIP_Bool objinfeasible, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsEnfolp (SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool solinfeasible, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsEnforelax (SCIP_CONS *cons, SCIP_SET *set, SCIP_SOL *sol, SCIP_Bool solinfeasible, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsInitlp (SCIP_CONS *cons, SCIP_SET *set, SCIP_Bool *infeasible)
SCIP_RETCODE SCIPconsSepalp (SCIP_CONS *cons, SCIP_SET *set, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsSepasol (SCIP_CONS *cons, SCIP_SET *set, SCIP_SOL *sol, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsProp (SCIP_CONS *cons, SCIP_SET *set, SCIP_PROPTIMING proptiming, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsResprop (SCIP_CONS *cons, SCIP_SET *set, SCIP_VAR *infervar, int inferinfo, SCIP_BOUNDTYPE boundtype, SCIP_BDCHGIDX *bdchgidx, SCIP_Real relaxedbd, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsPresol (SCIP_CONS *cons, SCIP_SET *set, int nrounds, SCIP_PRESOLTIMING timing, int nnewfixedvars, int nnewaggrvars, int nnewchgvartypes, int nnewchgbds, int nnewholes, int nnewdelconss, int nnewaddconss, int nnewupgdconss, int nnewchgcoefs, int nnewchgsides, int *nfixedvars, int *naggrvars, int *nchgvartypes, int *nchgbds, int *naddholes, int *ndelconss, int *naddconss, int *nupgdconss, int *nchgcoefs, int *nchgsides, SCIP_RESULT *result)
SCIP_RETCODE SCIPconsActive (SCIP_CONS *cons, SCIP_SET *set)
SCIP_RETCODE SCIPconsDeactive (SCIP_CONS *cons, SCIP_SET *set)
 SCIP_DECL_HASHGETKEY (SCIPhashGetKeyCons)
static SCIP_RETCODE ensurePropagationStorage (SCIP_SET *set, SCIP_CONSHDLR *conshdlr, int num)
SCIP_RETCODE SCIPconshdlrsStorePropagationStatus (SCIP_SET *set, SCIP_CONSHDLR **conshdlrs, int nconshdlrs)
SCIP_RETCODE SCIPconshdlrsResetPropagationStatus (SCIP_SET *set, BMS_BLKMEM *blkmem, SCIP_CONSHDLR **conshdlrs, int nconshdlrs)
SCIP_RETCODE SCIPlinConsStatsCreate (SCIP *scip, SCIP_LINCONSSTATS **linconsstats)
void SCIPlinConsStatsFree (SCIP *scip, SCIP_LINCONSSTATS **linconsstats)
void SCIPlinConsStatsReset (SCIP_LINCONSSTATS *linconsstats)
int SCIPlinConsStatsGetTypeCount (SCIP_LINCONSSTATS *linconsstats, SCIP_LINCONSTYPE linconstype)
int SCIPlinConsStatsGetSum (SCIP_LINCONSSTATS *linconsstats)
void SCIPlinConsStatsIncTypeCount (SCIP_LINCONSSTATS *linconsstats, SCIP_LINCONSTYPE linconstype, int increment)
void SCIPprintLinConsStats (SCIP *scip, FILE *file, SCIP_LINCONSSTATS *linconsstats)
const char * SCIPconsGetName (SCIP_CONS *cons)
int SCIPconsGetPos (SCIP_CONS *cons)
SCIP_CONSHDLRSCIPconsGetHdlr (SCIP_CONS *cons)
SCIP_CONSDATASCIPconsGetData (SCIP_CONS *cons)
int SCIPconsGetNUses (SCIP_CONS *cons)
int SCIPconsGetActiveDepth (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsActive (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsUpdatedeactivate (SCIP_CONS *cons)
int SCIPconsGetValidDepth (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsEnabled (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsSeparationEnabled (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsPropagationEnabled (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsDeleted (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsObsolete (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsConflict (SCIP_CONS *cons)
SCIP_Real SCIPconsGetAge (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsInitial (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsSeparated (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsEnforced (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsChecked (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsMarkedPropagate (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsPropagated (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsGlobal (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsLocal (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsModifiable (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsDynamic (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsRemovable (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsStickingAtNode (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsInProb (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsOriginal (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsTransformed (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsLockedPos (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsLockedNeg (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsLocked (SCIP_CONS *cons)
int SCIPconsGetNLocksPos (SCIP_CONS *cons)
int SCIPconsGetNLocksNeg (SCIP_CONS *cons)
SCIP_Bool SCIPconsIsLockedTypePos (SCIP_CONS *cons, SCIP_LOCKTYPE locktype)
SCIP_Bool SCIPconsIsLockedTypeNeg (SCIP_CONS *cons, SCIP_LOCKTYPE locktype)
SCIP_Bool SCIPconsIsLockedType (SCIP_CONS *cons, SCIP_LOCKTYPE locktype)
int SCIPconsGetNLocksTypePos (SCIP_CONS *cons, SCIP_LOCKTYPE locktype)
int SCIPconsGetNLocksTypeNeg (SCIP_CONS *cons, SCIP_LOCKTYPE locktype)
SCIP_Bool SCIPconsIsAdded (SCIP_CONS *cons)
void SCIPconsAddUpgradeLocks (SCIP_CONS *cons, int nlocks)
int SCIPconsGetNUpgradeLocks (SCIP_CONS *cons)

Macro Definition Documentation

◆ AGERESETAVG_INIT

#define AGERESETAVG_INIT   1000.0

initial value of the exponentially decaying weighted sum for ages

Definition at line 55 of file cons.c.

Referenced by doConshdlrCreate(), and SCIPconshdlrInit().

◆ AGERESETAVG_MIN

#define AGERESETAVG_MIN   100.0

minimal value to use for weighted sum of ages

Definition at line 56 of file cons.c.

Referenced by conshdlrGetAgeresetavg().

◆ AGERESETAVG_DECAY

#define AGERESETAVG_DECAY   0.0005

weight of a new addend in the exponentially decyaing sum

Definition at line 57 of file cons.c.

Referenced by conshdlrUpdateAgeresetavg().

◆ AGERESETAVG_AGELIMIT

#define AGERESETAVG_AGELIMIT   2.0

in dynamic setting, a constraint is deleted if its age exceeds the average reset age by this factor

Definition at line 58 of file cons.c.

Referenced by consExceedsAgelimit().

◆ AGERESETAVG_OBSOLETEAGE

#define AGERESETAVG_OBSOLETEAGE   1.8

in dynamic setting, a constraint is marked obsolete if its age exceeds the average reset age by this factor

Definition at line 60 of file cons.c.

Referenced by consExceedsObsoleteage().

◆ checkConssArrays

Function Documentation

◆ conshdlrEnsureConssMem()

SCIP_RETCODE conshdlrEnsureConssMem ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
int num )
static

resizes conss array to be able to store at least num constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings
numminimal number of slots in array

Definition at line 74 of file cons.c.

References assert(), BMSreallocMemoryArray, SCIP_Conshdlr::conss, SCIP_Conshdlr::consssize, NULL, SCIP_ALLOC, SCIP_OKAY, and SCIPsetCalcMemGrowSize().

Referenced by conshdlrAddCons().

◆ conshdlrEnsureInitconssMem()

SCIP_RETCODE conshdlrEnsureInitconssMem ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
int num )
static

resizes initconss array to be able to store at least num constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings
numminimal number of slots in array

Definition at line 98 of file cons.c.

References assert(), BMSreallocMemoryArray, SCIP_Conshdlr::initconss, SCIP_Conshdlr::initconsssize, NULL, SCIP_ALLOC, SCIP_OKAY, and SCIPsetCalcMemGrowSize().

Referenced by conshdlrAddInitcons().

◆ conshdlrEnsureSepaconssMem()

SCIP_RETCODE conshdlrEnsureSepaconssMem ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
int num )
static

resizes sepaconss array to be able to store at least num constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings
numminimal number of slots in array

Definition at line 122 of file cons.c.

References assert(), BMSreallocMemoryArray, NULL, SCIP_ALLOC, SCIP_OKAY, SCIPsetCalcMemGrowSize(), SCIP_Conshdlr::sepaconss, and SCIP_Conshdlr::sepaconsssize.

Referenced by conshdlrAddSepacons().

◆ conshdlrEnsureEnfoconssMem()

SCIP_RETCODE conshdlrEnsureEnfoconssMem ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
int num )
static

resizes enfoconss array to be able to store at least num constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings
numminimal number of slots in array

Definition at line 146 of file cons.c.

References assert(), BMSreallocMemoryArray, SCIP_Conshdlr::enfoconss, SCIP_Conshdlr::enfoconsssize, NULL, SCIP_ALLOC, SCIP_OKAY, and SCIPsetCalcMemGrowSize().

Referenced by conshdlrAddEnfocons().

◆ conshdlrEnsureCheckconssMem()

SCIP_RETCODE conshdlrEnsureCheckconssMem ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
int num )
static

resizes checkconss array to be able to store at least num constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings
numminimal number of slots in array

Definition at line 170 of file cons.c.

References assert(), BMSreallocMemoryArray, SCIP_Conshdlr::checkconss, SCIP_Conshdlr::checkconsssize, NULL, SCIP_ALLOC, SCIP_OKAY, and SCIPsetCalcMemGrowSize().

Referenced by conshdlrAddCheckcons().

◆ conshdlrEnsurePropconssMem()

SCIP_RETCODE conshdlrEnsurePropconssMem ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
int num )
static

resizes propconss array to be able to store at least num constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings
numminimal number of slots in array

Definition at line 194 of file cons.c.

References assert(), BMSreallocMemoryArray, NULL, SCIP_Conshdlr::propconss, SCIP_Conshdlr::propconsssize, SCIP_ALLOC, SCIP_OKAY, and SCIPsetCalcMemGrowSize().

Referenced by conshdlrAddPropcons().

◆ conshdlrEnsureUpdateconssMem()

SCIP_RETCODE conshdlrEnsureUpdateconssMem ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
int num )
static

resizes updateconss array to be able to store at least num constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings
numminimal number of slots in array

Definition at line 218 of file cons.c.

References assert(), BMSreallocMemoryArray, NULL, SCIP_ALLOC, SCIP_OKAY, SCIPsetCalcMemGrowSize(), SCIP_Conshdlr::updateconss, and SCIP_Conshdlr::updateconsssize.

Referenced by conshdlrAddUpdateCons().

◆ conshdlrAreUpdatesDelayed()

◆ conshdlrGetAgeresetavg()

SCIP_Real conshdlrGetAgeresetavg ( SCIP_CONSHDLR * conshdlr)
static

returns the exponentially decaying weighted age average for age resets

Parameters
conshdlrconstraint handler

Definition at line 332 of file cons.c.

References SCIP_Conshdlr::ageresetavg, AGERESETAVG_MIN, assert(), MAX, NULL, and SCIP_Real.

Referenced by consExceedsAgelimit(), and consExceedsObsoleteage().

◆ conshdlrUpdateAgeresetavg()

void conshdlrUpdateAgeresetavg ( SCIP_CONSHDLR * conshdlr,
SCIP_Real age )
static

updates the exponentially decaying weighted age average for age resets after a constraint age was reset

Parameters
conshdlrconstraint handler
ageage of the constraint that is reset to zero

Definition at line 343 of file cons.c.

References SCIP_Conshdlr::ageresetavg, AGERESETAVG_DECAY, assert(), NULL, and SCIP_Real.

Referenced by SCIPconsResetAge().

◆ consExceedsAgelimit()

SCIP_Bool consExceedsAgelimit ( SCIP_CONS * cons,
SCIP_SET * set )
static

returns whether the constraint's age exceeds the age limit

Parameters
consconstraint to check
setglobal SCIP settings

Definition at line 356 of file cons.c.

References SCIP_Cons::age, AGERESETAVG_AGELIMIT, assert(), SCIP_Cons::conshdlr, conshdlrGetAgeresetavg(), SCIP_Cons::dynamic, NULL, and SCIP_Bool.

Referenced by SCIPconsAddAge().

◆ consExceedsObsoleteage()

SCIP_Bool consExceedsObsoleteage ( SCIP_CONS * cons,
SCIP_SET * set )
static

returns whether the constraint's age exceeds the obsolete age limit

Parameters
consconstraint to check
setglobal SCIP settings

Definition at line 371 of file cons.c.

References SCIP_Cons::age, AGERESETAVG_OBSOLETEAGE, assert(), SCIP_Cons::conshdlr, conshdlrGetAgeresetavg(), SCIP_Cons::dynamic, NULL, and SCIP_Bool.

Referenced by conshdlrProcessUpdates(), and SCIPconsAddAge().

◆ conshdlrMarkConsObsolete()

SCIP_RETCODE conshdlrMarkConsObsolete ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

marks constraint to be obsolete; it will be moved to the last part of the constraint arrays, such that it is checked, enforced, separated, and propagated after the useful constraints

Parameters
conshdlrconstraint handler
consconstraint to be marked obsolete

Definition at line 388 of file cons.c.

References SCIP_Cons::active, assert(), SCIP_Cons::check, SCIP_Conshdlr::checkconss, checkConssArrays, SCIP_Cons::checkconsspos, conshdlrAreUpdatesDelayed(), SCIP_Cons::enabled, SCIP_Conshdlr::enfoconss, SCIP_Cons::enfoconsspos, SCIP_Cons::enforce, SCIP_Conshdlr::lastenfolpdomchgcount, SCIP_Conshdlr::lastenfolplpcount, SCIP_Conshdlr::lastenfolpnode, SCIP_Conshdlr::lastenfopsdomchgcount, SCIP_Conshdlr::lastenfopsnode, SCIP_Conshdlr::lastenforelaxdomchgcount, SCIP_Conshdlr::lastenforelaxrelaxcount, SCIP_Conshdlr::lastnusefulenfoconss, SCIP_Conshdlr::lastnusefulpropconss, SCIP_Conshdlr::lastnusefulsepaconss, SCIP_Cons::markpropagate, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::nenfoconss, SCIP_Conshdlr::nmarkedpropconss, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, SCIP_Cons::obsolete, SCIP_Cons::original, SCIP_Cons::propagate, SCIP_Conshdlr::propconss, SCIP_Cons::propconsspos, SCIP_Cons::propenabled, SCIP_OKAY, SCIP_Conshdlr::sepaconss, SCIP_Cons::sepaconsspos, SCIP_Cons::sepaenabled, SCIP_Cons::separate, and TRUE.

Referenced by conshdlrProcessUpdates(), and SCIPconsAddAge().

◆ conshdlrMarkConsUseful()

◆ conshdlrMarkConsPropagate()

void conshdlrMarkConsPropagate ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

marks constraint to be propagated in the next propagation round;

Note
the propagation array is divided into three parts in contrast to the other constraint arrays; the first part contains constraints which were marked to be propagated (independently of its age) the second part contains the useful (non-obsolete) constraints which are not marked to be propagated finally, the third part contains obsolete constraints which are not marked to be propagated
if a constraint gets marked for propagation we put it into the first part regardless of its age
Parameters
conshdlrconstraint handler
consconstraint to be marked obsolete

Definition at line 623 of file cons.c.

References assert(), checkConssArrays, SCIP_Cons::enabled, SCIP_Cons::markpropagate, SCIP_Conshdlr::nmarkedpropconss, SCIP_Conshdlr::npropconss, NULL, SCIP_Conshdlr::nusefulpropconss, SCIP_Cons::obsolete, SCIP_Cons::original, SCIP_Cons::propagate, SCIP_Conshdlr::propconss, SCIP_Cons::propconsspos, SCIP_Cons::propenabled, and TRUE.

Referenced by conshdlrAddPropcons(), conshdlrProcessUpdates(), and SCIPconsMarkPropagate().

◆ conshdlrUnmarkConsPropagate()

void conshdlrUnmarkConsPropagate ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

unmarks constraint to be propagated in the next propagation round;

Note
the propagation array is divided into three parts in contrast to the other constraint arrays; the first part contains constraints which were marked to be propagated (independently of its age) the second part contains the useful (non-obsolete) constraints which are not marked to be propagated finally, the third part contains obsolete constraints which are not marked to be propagated
if a constraint gets unmarked for propagation, it is put into the right part depending on its age
Parameters
conshdlrconstraint handler
consconstraint to be marked obsolete

Definition at line 698 of file cons.c.

References assert(), checkConssArrays, SCIP_Cons::enabled, FALSE, SCIP_Cons::markpropagate, SCIP_Conshdlr::nmarkedpropconss, SCIP_Conshdlr::npropconss, NULL, SCIP_Conshdlr::nusefulpropconss, SCIP_Cons::obsolete, SCIP_Cons::original, SCIP_Cons::propagate, SCIP_Conshdlr::propconss, SCIP_Cons::propconsspos, and SCIP_Cons::propenabled.

Referenced by conshdlrDelPropcons(), conshdlrProcessUpdates(), and SCIPconsUnmarkPropagate().

◆ conshdlrAddCons()

SCIP_RETCODE conshdlrAddCons ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
SCIP_CONS * cons )
static

adds constraint to the conss array of constraint handler

Parameters
conshdlrconstraint handler
setglobal SCIP settings
consconstraint to add

Definition at line 770 of file cons.c.

References SCIP_Cons::active, assert(), SCIP_Cons::conshdlr, conshdlrEnsureConssMem(), SCIP_Conshdlr::conss, SCIP_Cons::consspos, SCIP_Conshdlr::nconss, NULL, SCIP_Cons::original, SCIP_Cons::scip, SCIP_CALL, and SCIP_OKAY.

Referenced by conshdlrProcessUpdates(), and SCIPconsCreate().

◆ conshdlrDelCons()

void conshdlrDelCons ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

deletes constraint from the conss array of constraint handler

Parameters
conshdlrconstraint handler
consconstraint to remove

Definition at line 796 of file cons.c.

References SCIP_Cons::active, assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::conss, SCIP_Cons::consspos, SCIP_Conshdlr::nactiveconss, SCIP_Conshdlr::nconss, NULL, and SCIP_Cons::original.

Referenced by SCIPconsFree().

◆ conshdlrAddInitcons()

SCIP_RETCODE conshdlrAddInitcons ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_CONS * cons )
static

adds constraint to the initconss array of constraint handler

Parameters
conshdlrconstraint handler
setglobal SCIP settings
statdynamic problem statistics
consconstraint to add

Definition at line 816 of file cons.c.

References SCIP_Cons::active, assert(), checkConssArrays, SCIP_Cons::conshdlr, conshdlrEnsureInitconssMem(), SCIP_Conshdlr::initconss, SCIP_Cons::initconsspos, SCIP_Cons::initial, SCIP_Conshdlr::ninitconss, SCIP_Stat::ninitconssadded, SCIP_Conshdlr::ninitconsskept, NULL, SCIP_Cons::original, SCIP_CALL, and SCIP_OKAY.

Referenced by conshdlrActivateCons(), SCIPconshdlrInitLP(), SCIPconshdlrInitpre(), and SCIPconsSetInitial().

◆ conshdlrDelInitcons()

void conshdlrDelInitcons ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

deletes constraint from the initconss array of constraint handler

Parameters
conshdlrconstraint handler
consconstraint to remove

Definition at line 852 of file cons.c.

References assert(), checkConssArrays, SCIP_Cons::conshdlr, SCIP_Conshdlr::initconss, SCIP_Cons::initconsspos, SCIP_Conshdlr::ninitconss, SCIP_Conshdlr::ninitconsskept, NULL, and SCIP_Cons::original.

Referenced by conshdlrDeactivateCons(), and SCIPconsSetInitial().

◆ conshdlrAddSepacons()

◆ conshdlrDelSepacons()

void conshdlrDelSepacons ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

◆ conshdlrAddEnfocons()

◆ conshdlrDelEnfocons()

void conshdlrDelEnfocons ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

deletes constraint from the enfoconss array of constraint handler

Parameters
conshdlrconstraint handler
consconstraint to remove

Definition at line 1034 of file cons.c.

References assert(), checkConssArrays, SCIP_Cons::conshdlr, SCIP_Conshdlr::enfoconss, SCIP_Cons::enfoconsspos, SCIP_Cons::enforce, SCIP_Conshdlr::lastnusefulenfoconss, SCIP_Conshdlr::nenfoconss, NULL, SCIP_Conshdlr::nusefulenfoconss, SCIP_Cons::obsolete, and SCIP_Cons::original.

Referenced by conshdlrDisableCons(), and SCIPconsSetEnforced().

◆ conshdlrAddCheckcons()

SCIP_RETCODE conshdlrAddCheckcons ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
SCIP_CONS * cons )
static

adds constraint to the checkconss array of constraint handler

Parameters
conshdlrconstraint handler
setglobal SCIP settings
consconstraint to add

Definition at line 1086 of file cons.c.

References SCIP_Cons::active, assert(), SCIP_Cons::check, SCIP_Conshdlr::checkconss, checkConssArrays, SCIP_Cons::checkconsspos, SCIP_Cons::conshdlr, conshdlrEnsureCheckconssMem(), SCIP_Conshdlr::ncheckconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Cons::obsolete, SCIP_Cons::original, SCIP_Cons::scip, SCIP_CALL, and SCIP_OKAY.

Referenced by conshdlrActivateCons(), and SCIPconsSetChecked().

◆ conshdlrDelCheckcons()

void conshdlrDelCheckcons ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

deletes constraint from the checkconss array of constraint handler

Parameters
conshdlrconstraint handler
consconstraint to add

Definition at line 1130 of file cons.c.

References SCIP_Cons::active, assert(), SCIP_Cons::check, SCIP_Conshdlr::checkconss, checkConssArrays, SCIP_Cons::checkconsspos, SCIP_Cons::conshdlr, SCIP_Conshdlr::ncheckconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Cons::obsolete, and SCIP_Cons::original.

Referenced by conshdlrDeactivateCons(), and SCIPconsSetChecked().

◆ conshdlrAddPropcons()

◆ conshdlrDelPropcons()

◆ conshdlrEnableConsSeparation()

SCIP_RETCODE conshdlrEnableConsSeparation ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
SCIP_CONS * cons )
static

◆ conshdlrDisableConsSeparation()

SCIP_RETCODE conshdlrDisableConsSeparation ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

◆ conshdlrEnableConsPropagation()

SCIP_RETCODE conshdlrEnableConsPropagation ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
SCIP_CONS * cons )
static

◆ conshdlrDisableConsPropagation()

SCIP_RETCODE conshdlrDisableConsPropagation ( SCIP_CONSHDLR * conshdlr,
SCIP_CONS * cons )
static

◆ conshdlrEnableCons()

◆ conshdlrDisableCons()

◆ conshdlrActivateCons()

SCIP_RETCODE conshdlrActivateCons ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_CONS * cons,
int depth,
SCIP_Bool focusnode )
static

◆ conshdlrDeactivateCons()

◆ conshdlrProcessUpdates()

SCIP_RETCODE conshdlrProcessUpdates ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )
static

processes all delayed updates of constraints: recently (de)activated constraints will be (de)activated; recently en/disabled constraints will be en/disabled; recent obsolete non-check constraints will be globally deleted; recent obsolete check constraints will be moved to the last positions in the sepa-, enfo-, check-, and prop-arrays; recent useful constraints will be moved to the first positions in the sepa-, enfo-, check-, and prop-arrays; constraints which were recently marked to be propagated are moved to the first positions in the prop-array; no longer used constraints will be freed and removed from the conss array

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics

Definition at line 1689 of file cons.c.

References SCIP_Cons::active, SCIP_Cons::activedepth, assert(), SCIP_Cons::consdata, consExceedsObsoleteage(), SCIP_Cons::conshdlr, conshdlrActivateCons(), conshdlrAddCons(), conshdlrAreUpdatesDelayed(), conshdlrDeactivateCons(), conshdlrDisableCons(), conshdlrDisableConsPropagation(), conshdlrDisableConsSeparation(), conshdlrEnableCons(), conshdlrEnableConsPropagation(), conshdlrEnableConsSeparation(), conshdlrMarkConsObsolete(), conshdlrMarkConsPropagate(), conshdlrMarkConsUseful(), conshdlrUnmarkConsPropagate(), SCIP_Cons::enabled, FALSE, i, SCIP_Cons::name, SCIP_Conshdlr::name, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::nenfoconss, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nupdateconss, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, SCIP_Cons::nuses, SCIP_Cons::obsolete, SCIP_Cons::propenabled, SCIP_CALL, SCIP_OKAY, SCIPconsRelease(), SCIPsetDebugMsg, SCIP_Cons::sepaenabled, SCIP_Cons::update, SCIP_Cons::updateactfocus, SCIP_Cons::updateactivate, SCIP_Conshdlr::updateconss, SCIP_Cons::updatedeactivate, SCIP_Cons::updatedisable, SCIP_Cons::updateenable, SCIP_Cons::updatefree, SCIP_Cons::updateinsert, SCIP_Cons::updatemarkpropagate, SCIP_Cons::updateobsolete, SCIP_Cons::updatepropdisable, SCIP_Cons::updatepropenable, SCIP_Cons::updatesepadisable, SCIP_Cons::updatesepaenable, and SCIP_Cons::updateunmarkpropagate.

Referenced by conshdlrForceUpdates().

◆ conshdlrDelayUpdates()

◆ conshdlrForceUpdates()

SCIP_RETCODE conshdlrForceUpdates ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )
static

◆ conshdlrAddUpdateCons()

◆ SCIPconshdlrCopyInclude()

SCIP_RETCODE SCIPconshdlrCopyInclude ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
SCIP_Bool * valid )

copies the given constraint handler to a new scip

Parameters
conshdlrconstraint handler
setSCIP_SET of SCIP to copy to
validwas the copying process valid?

Definition at line 1980 of file cons.c.

References assert(), NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPconshdlrGetName(), SCIPsetDebugMsg, and valid.

Referenced by SCIPsetCopyPlugins().

◆ doConshdlrCreate()

SCIP_RETCODE doConshdlrCreate ( SCIP_CONSHDLR ** conshdlr,
SCIP_SET * set,
SCIP_MESSAGEHDLR * messagehdlr,
BMS_BLKMEM * blkmem,
const char * name,
const char * desc,
int sepapriority,
int enfopriority,
int checkpriority,
int sepafreq,
int propfreq,
int eagerfreq,
int maxprerounds,
SCIP_Bool delaysepa,
SCIP_Bool delayprop,
SCIP_Bool needscons,
SCIP_PROPTIMING proptiming,
SCIP_PRESOLTIMING presoltiming,
SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)) ,
SCIP_DECL_CONSFREE((*consfree)) ,
SCIP_DECL_CONSINIT((*consinit)) ,
SCIP_DECL_CONSEXIT((*consexit)) ,
SCIP_DECL_CONSINITPRE((*consinitpre)) ,
SCIP_DECL_CONSEXITPRE((*consexitpre)) ,
SCIP_DECL_CONSINITSOL((*consinitsol)) ,
SCIP_DECL_CONSEXITSOL((*consexitsol)) ,
SCIP_DECL_CONSDELETE((*consdelete)) ,
SCIP_DECL_CONSTRANS((*constrans)) ,
SCIP_DECL_CONSINITLP((*consinitlp)) ,
SCIP_DECL_CONSSEPALP((*conssepalp)) ,
SCIP_DECL_CONSSEPASOL((*conssepasol)) ,
SCIP_DECL_CONSENFOLP((*consenfolp)) ,
SCIP_DECL_CONSENFORELAX((*consenforelax)) ,
SCIP_DECL_CONSENFOPS((*consenfops)) ,
SCIP_DECL_CONSCHECK((*conscheck)) ,
SCIP_DECL_CONSPROP((*consprop)) ,
SCIP_DECL_CONSPRESOL((*conspresol)) ,
SCIP_DECL_CONSRESPROP((*consresprop)) ,
SCIP_DECL_CONSLOCK((*conslock)) ,
SCIP_DECL_CONSACTIVE((*consactive)) ,
SCIP_DECL_CONSDEACTIVE((*consdeactive)) ,
SCIP_DECL_CONSENABLE((*consenable)) ,
SCIP_DECL_CONSDISABLE((*consdisable)) ,
SCIP_DECL_CONSDELVARS((*consdelvars)) ,
SCIP_DECL_CONSPRINT((*consprint)) ,
SCIP_DECL_CONSCOPY((*conscopy)) ,
SCIP_DECL_CONSPARSE((*consparse)) ,
SCIP_DECL_CONSGETVARS((*consgetvars)) ,
SCIP_DECL_CONSGETNVARS((*consgetnvars)) ,
SCIP_DECL_CONSGETDIVEBDCHGS((*consgetdivebdchgs)) ,
SCIP_DECL_CONSGETPERMSYMGRAPH((*consgetpermsymgraph)) ,
SCIP_DECL_CONSGETSIGNEDPERMSYMGRAPH((*consgetsignedpermsymgraph)) ,
SCIP_CONSHDLRDATA * conshdlrdata )
static

internal method for creating a constraint handler

Parameters
conshdlrpointer to constraint handler data structure
setglobal SCIP settings
messagehdlrmessage handler
blkmemblock memory for parameter settings
namename of constraint handler
descdescription of constraint handler
sepaprioritypriority of the constraint handler for separation
enfoprioritypriority of the constraint handler for constraint enforcing
checkprioritypriority of the constraint handler for checking feasibility (and propagation)
sepafreqfrequency for separating cuts; zero means to separate only in the root node
propfreqfrequency for propagating domains; zero means only preprocessing propagation
eagerfreqfrequency for using all instead of only the useful constraints in separation, propagation and enforcement, -1 for no eager evaluations, 0 for first only
maxpreroundsmaximal number of presolving rounds the constraint handler participates in (-1: no limit)
delaysepashould separation method be delayed, if other separators found cuts?
delaypropshould propagation method be delayed, if other propagators found reductions?
needsconsshould the constraint handler be skipped, if no constraints are available?
proptimingpositions in the node solving loop where propagation method of constraint handlers should be executed
presoltimingtiming mask of the constraint handler's presolving method
conshdlrdataconstraint handler data

Definition at line 2002 of file cons.c.

References AGERESETAVG_INIT, assert(), BMSallocMemory, BMSclearMemory, BMSduplicateMemoryArray, FALSE, NULL, paramname, SCIP_ALLOC, SCIP_Bool, SCIP_CALL, SCIP_CLOCKTYPE_DEFAULT, SCIP_DECL_CONSACTIVE, SCIP_DECL_CONSCHECK, SCIP_DECL_CONSCOPY, SCIP_DECL_CONSDELETE, SCIP_DECL_CONSDELVARS, SCIP_DECL_CONSDISABLE, SCIP_DECL_CONSENABLE, SCIP_DECL_CONSENFOLP, SCIP_DECL_CONSENFOPS, SCIP_DECL_CONSENFORELAX, SCIP_DECL_CONSEXIT, SCIP_DECL_CONSEXITPRE, SCIP_DECL_CONSEXITSOL, SCIP_DECL_CONSFREE, SCIP_DECL_CONSGETVARS, SCIP_DECL_CONSINIT, SCIP_DECL_CONSINITLP, SCIP_DECL_CONSINITPRE, SCIP_DECL_CONSINITSOL, SCIP_DECL_CONSLOCK, SCIP_DECL_CONSPARSE, SCIP_DECL_CONSPRESOL, SCIP_DECL_CONSPRINT, SCIP_DECL_CONSPROP, SCIP_DECL_CONSRESPROP, SCIP_DECL_CONSSEPALP, SCIP_DECL_CONSSEPASOL, SCIP_DECL_CONSTRANS, SCIP_DIDNOTRUN, SCIP_MAXSTRLEN, SCIP_MAXTREEDEPTH, SCIP_OKAY, SCIP_PARAMETERWRONGVAL, SCIP_PRESOLTIMING_EXHAUSTIVE, SCIP_PRESOLTIMING_FAST, SCIP_PRESOLTIMING_FINAL, SCIP_PRESOLTIMING_MAX, SCIP_PRESOLTIMING_MEDIUM, SCIP_PROPTIMING_AFTERLPLOOP, SCIP_PROPTIMING_ALWAYS, SCIP_PROPTIMING_BEFORELP, SCIP_PROPTIMING_DURINGLPLOOP, SCIPclockCreate(), SCIPmessagePrintError(), SCIPsetAddBoolParam(), SCIPsetAddIntParam(), SCIPsnprintf(), and TRUE.

Referenced by SCIPconshdlrCreate().

◆ SCIPconshdlrCreate()

SCIP_RETCODE SCIPconshdlrCreate ( SCIP_CONSHDLR ** conshdlr,
SCIP_SET * set,
SCIP_MESSAGEHDLR * messagehdlr,
BMS_BLKMEM * blkmem,
const char * name,
const char * desc,
int sepapriority,
int enfopriority,
int checkpriority,
int sepafreq,
int propfreq,
int eagerfreq,
int maxprerounds,
SCIP_Bool delaysepa,
SCIP_Bool delayprop,
SCIP_Bool needscons,
SCIP_PROPTIMING proptiming,
SCIP_PRESOLTIMING presoltiming,
SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy)) ,
SCIP_DECL_CONSFREE((*consfree)) ,
SCIP_DECL_CONSINIT((*consinit)) ,
SCIP_DECL_CONSEXIT((*consexit)) ,
SCIP_DECL_CONSINITPRE((*consinitpre)) ,
SCIP_DECL_CONSEXITPRE((*consexitpre)) ,
SCIP_DECL_CONSINITSOL((*consinitsol)) ,
SCIP_DECL_CONSEXITSOL((*consexitsol)) ,
SCIP_DECL_CONSDELETE((*consdelete)) ,
SCIP_DECL_CONSTRANS((*constrans)) ,
SCIP_DECL_CONSINITLP((*consinitlp)) ,
SCIP_DECL_CONSSEPALP((*conssepalp)) ,
SCIP_DECL_CONSSEPASOL((*conssepasol)) ,
SCIP_DECL_CONSENFOLP((*consenfolp)) ,
SCIP_DECL_CONSENFORELAX((*consenforelax)) ,
SCIP_DECL_CONSENFOPS((*consenfops)) ,
SCIP_DECL_CONSCHECK((*conscheck)) ,
SCIP_DECL_CONSPROP((*consprop)) ,
SCIP_DECL_CONSPRESOL((*conspresol)) ,
SCIP_DECL_CONSRESPROP((*consresprop)) ,
SCIP_DECL_CONSLOCK((*conslock)) ,
SCIP_DECL_CONSACTIVE((*consactive)) ,
SCIP_DECL_CONSDEACTIVE((*consdeactive)) ,
SCIP_DECL_CONSENABLE((*consenable)) ,
SCIP_DECL_CONSDISABLE((*consdisable)) ,
SCIP_DECL_CONSDELVARS((*consdelvars)) ,
SCIP_DECL_CONSPRINT((*consprint)) ,
SCIP_DECL_CONSCOPY((*conscopy)) ,
SCIP_DECL_CONSPARSE((*consparse)) ,
SCIP_DECL_CONSGETVARS((*consgetvars)) ,
SCIP_DECL_CONSGETNVARS((*consgetnvars)) ,
SCIP_DECL_CONSGETDIVEBDCHGS((*consgetdivebdchgs)) ,
SCIP_DECL_CONSGETPERMSYMGRAPH((*consgetpermsymgraph)) ,
SCIP_DECL_CONSGETSIGNEDPERMSYMGRAPH((*consgetsignedpermsymgraph)) ,
SCIP_CONSHDLRDATA * conshdlrdata )

creates a constraint handler

Parameters
conshdlrpointer to constraint handler data structure
setglobal SCIP settings
messagehdlrmessage handler
blkmemblock memory for parameter settings
namename of constraint handler
descdescription of constraint handler
sepaprioritypriority of the constraint handler for separation
enfoprioritypriority of the constraint handler for constraint enforcing
checkprioritypriority of the constraint handler for checking feasibility (and propagation)
sepafreqfrequency for separating cuts; zero means to separate only in the root node
propfreqfrequency for propagating domains; zero means only preprocessing propagation
eagerfreqfrequency for using all instead of only the useful constraints in separation, propagation and enforcement, -1 for no eager evaluations, 0 for first only
maxpreroundsmaximal number of presolving rounds the constraint handler participates in (-1: no limit)
delaysepashould separation method be delayed, if other separators found cuts?
delaypropshould propagation method be delayed, if other propagators found reductions?
needsconsshould the constraint handler be skipped, if no constraints are available?
proptimingpositions in the node solving loop where propagation method of constraint handlers should be executed
presoltimingtiming mask of the constraint handler's presolving method
conshdlrdataconstraint handler data

Definition at line 2286 of file cons.c.

References assert(), doConshdlrCreate(), NULL, SCIP_Bool, SCIP_CALL_FINALLY, SCIP_DECL_CONSACTIVE, SCIP_DECL_CONSCHECK, SCIP_DECL_CONSCOPY, SCIP_DECL_CONSDELETE, SCIP_DECL_CONSDELVARS, SCIP_DECL_CONSDISABLE, SCIP_DECL_CONSENABLE, SCIP_DECL_CONSENFOLP, SCIP_DECL_CONSENFOPS, SCIP_DECL_CONSENFORELAX, SCIP_DECL_CONSEXIT, SCIP_DECL_CONSEXITPRE, SCIP_DECL_CONSEXITSOL, SCIP_DECL_CONSFREE, SCIP_DECL_CONSGETVARS, SCIP_DECL_CONSINIT, SCIP_DECL_CONSINITLP, SCIP_DECL_CONSINITPRE, SCIP_DECL_CONSINITSOL, SCIP_DECL_CONSLOCK, SCIP_DECL_CONSPARSE, SCIP_DECL_CONSPRESOL, SCIP_DECL_CONSPRINT, SCIP_DECL_CONSPROP, SCIP_DECL_CONSRESPROP, SCIP_DECL_CONSSEPALP, SCIP_DECL_CONSSEPASOL, SCIP_DECL_CONSTRANS, SCIP_OKAY, and SCIPconshdlrFree().

Referenced by SCIPincludeConshdlr(), and SCIPincludeConshdlrBasic().

◆ SCIPconshdlrFree()

SCIP_RETCODE SCIPconshdlrFree ( SCIP_CONSHDLR ** conshdlr,
SCIP_SET * set )

calls destructor and frees memory of constraint handler

Parameters
conshdlrpointer to constraint handler data structure
setglobal SCIP settings

Definition at line 2366 of file cons.c.

References assert(), BMSfreeMemory, BMSfreeMemoryArrayNull, NULL, SCIP_CALL, SCIP_OKAY, and SCIPclockFree().

Referenced by SCIPconshdlrCreate().

◆ SCIPconshdlrInit()

SCIP_RETCODE SCIPconshdlrInit ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )

calls initialization method of constraint handler

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics

Definition at line 2411 of file cons.c.

References SCIP_Conshdlr::ageresetavg, AGERESETAVG_INIT, assert(), SCIP_Conshdlr::checktime, conshdlrAreUpdatesDelayed(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::conss, SCIP_Conshdlr::enfolptime, SCIP_Conshdlr::enfopstime, SCIP_Conshdlr::enforelaxtime, FALSE, SCIP_Conshdlr::initialized, SCIP_Conshdlr::lastenfolpdomchgcount, SCIP_Conshdlr::lastenfolplpcount, SCIP_Conshdlr::lastenfolpnode, SCIP_Conshdlr::lastenfolpresult, SCIP_Conshdlr::lastenfopsdomchgcount, SCIP_Conshdlr::lastenfopsnode, SCIP_Conshdlr::lastenfopsresult, SCIP_Conshdlr::lastenforelaxdomchgcount, SCIP_Conshdlr::lastenforelaxrelaxcount, SCIP_Conshdlr::lastnaddconss, SCIP_Conshdlr::lastnaddholes, SCIP_Conshdlr::lastnaggrvars, SCIP_Conshdlr::lastnchgbds, SCIP_Conshdlr::lastnchgcoefs, SCIP_Conshdlr::lastnchgsides, SCIP_Conshdlr::lastnchgvartypes, SCIP_Conshdlr::lastndelconss, SCIP_Conshdlr::lastnfixedvars, SCIP_Conshdlr::lastnupgdconss, SCIP_Conshdlr::lastnusefulenfoconss, SCIP_Conshdlr::lastnusefulpropconss, SCIP_Conshdlr::lastnusefulsepaconss, SCIP_Conshdlr::lastpropdomchgcount, SCIP_Conshdlr::lastsepalpcount, SCIP_Conshdlr::maxnactiveconss, SCIP_Conshdlr::nactiveconss, SCIP_Conshdlr::naddconss, SCIP_Conshdlr::naddholes, SCIP_Conshdlr::naggrvars, SCIP_Conshdlr::name, SCIP_Conshdlr::ncheckcalls, SCIP_Conshdlr::nchgbds, SCIP_Conshdlr::nchgcoefs, SCIP_Conshdlr::nchgsides, SCIP_Conshdlr::nchgvartypes, SCIP_Conshdlr::nchildren, SCIP_Conshdlr::nconss, SCIP_Conshdlr::nconssfound, SCIP_Conshdlr::ncutoffs, SCIP_Conshdlr::ncutsapplied, SCIP_Conshdlr::ncutsfound, SCIP_Conshdlr::ndelconss, SCIP_Conshdlr::ndomredsfound, SCIP_Conshdlr::nenfolpcalls, SCIP_Conshdlr::nenfopscalls, SCIP_Conshdlr::nenforelaxcalls, SCIP_Conshdlr::nfixedvars, SCIP_Conshdlr::npresolcalls, SCIP_Conshdlr::npropcalls, SCIP_Conshdlr::nrespropcalls, SCIP_Conshdlr::nsepacalls, NULL, SCIP_Conshdlr::nupgdconss, SCIP_Conshdlr::presoltime, SCIP_Conshdlr::proptime, SCIP_Conshdlr::propwasdelayed, SCIP_Conshdlr::resproptime, SCIP_Conshdlr::sbproptime, SCIP_CALL, SCIP_DIDNOTRUN, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockReset(), SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIP_Conshdlr::sepalpwasdelayed, SCIP_Conshdlr::sepasolwasdelayed, SCIP_Conshdlr::sepatime, SCIP_Conshdlr::setuptime, SCIP_Conshdlr::startnactiveconss, and TRUE.

◆ SCIPconshdlrExit()

SCIP_RETCODE SCIPconshdlrExit ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )

calls exit method of constraint handler

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics

Definition at line 2524 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::conss, FALSE, SCIP_Conshdlr::initialized, SCIP_Conshdlr::name, SCIP_Conshdlr::nconss, NULL, SCIP_CALL, SCIP_INVALIDCALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIP_Conshdlr::setuptime.

◆ SCIPconshdlrInitpre()

SCIP_RETCODE SCIPconshdlrInitpre ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )

informs constraint handler that the presolving process is being started

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics

Definition at line 2567 of file cons.c.

References SCIP_Cons::addarraypos, assert(), c, conshdlrAddInitcons(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::conss, SCIP_Cons::deleted, FALSE, SCIP_Cons::initconsspos, SCIP_Cons::initial, SCIP_Conshdlr::lastenfolpdomchgcount, SCIP_Conshdlr::lastenfolplpcount, SCIP_Conshdlr::lastenfolpnode, SCIP_Conshdlr::lastenfolpresult, SCIP_Conshdlr::lastenfopsdomchgcount, SCIP_Conshdlr::lastenfopsnode, SCIP_Conshdlr::lastenfopsresult, SCIP_Conshdlr::lastenforelaxdomchgcount, SCIP_Conshdlr::lastenforelaxrelaxcount, SCIP_Conshdlr::lastenforelaxresult, SCIP_Conshdlr::lastnaddconss, SCIP_Conshdlr::lastnaddholes, SCIP_Conshdlr::lastnaggrvars, SCIP_Conshdlr::lastnchgbds, SCIP_Conshdlr::lastnchgcoefs, SCIP_Conshdlr::lastnchgsides, SCIP_Conshdlr::lastnchgvartypes, SCIP_Conshdlr::lastndelconss, SCIP_Conshdlr::lastnfixedvars, SCIP_Conshdlr::lastnupgdconss, SCIP_Conshdlr::lastnusefulenfoconss, SCIP_Conshdlr::lastnusefulpropconss, SCIP_Conshdlr::lastnusefulsepaconss, SCIP_Conshdlr::lastpropdomchgcount, SCIP_Conshdlr::lastsepalpcount, SCIP_Conshdlr::maxnactiveconss, SCIP_Conshdlr::nactiveconss, SCIP_Conshdlr::nconss, SCIP_Stat::nruns, NULL, SCIP_Conshdlr::propwasdelayed, SCIP_CALL, SCIP_DIDNOTRUN, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIP_Conshdlr::setuptime, and SCIP_Conshdlr::startnactiveconss.

◆ SCIPconshdlrExitpre()

SCIP_RETCODE SCIPconshdlrExitpre ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )

informs constraint handler that the presolving is finished

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics

Definition at line 2653 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::conss, SCIP_Conshdlr::maxnactiveconss, SCIP_Conshdlr::nactiveconss, SCIP_Conshdlr::nconss, NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIP_Conshdlr::setuptime, and SCIP_Conshdlr::startnactiveconss.

◆ SCIPconshdlrInitsol()

SCIP_RETCODE SCIPconshdlrInitsol ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )

informs constraint handler that the branch and bound process is being started

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics

Definition at line 2693 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::conss, FALSE, SCIP_Conshdlr::nconss, NULL, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIP_Conshdlr::sepalpwasdelayed, SCIP_Conshdlr::sepasolwasdelayed, and SCIP_Conshdlr::setuptime.

◆ SCIPconshdlrExitsol()

SCIP_RETCODE SCIPconshdlrExitsol ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_Bool restart )

informs constraint handler that the branch and bound process data is being freed

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
restartwas this exit solve call triggered by a restart?

Definition at line 2733 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::conss, SCIP_Conshdlr::nconss, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), and SCIP_Conshdlr::setuptime.

◆ SCIPconshdlrInitLP()

SCIP_RETCODE SCIPconshdlrInitLP ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_TREE * tree,
SCIP_Bool initkeptconss,
SCIP_Bool * cutoff )

calls LP initialization method of constraint handler to separate all initial active constraints

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
treebranch and bound tree
initkeptconssAlso initialize constraints which are valid at a more global node, but were not activated there? Should be FALSE for repeated calls at one node or if the current focusnode is a child of the former one
cutoffpointer to store whether infeasibility was detected while building the LP

Definition at line 2770 of file cons.c.

References assert(), BMSfreeMemoryArrayNull, c, conshdlrAddInitcons(), conshdlrDelayUpdates(), conshdlrForceUpdates(), cutoff, FALSE, SCIP_Conshdlr::initconss, SCIP_Cons::initconsspos, SCIP_Conshdlr::initconsssize, SCIP_Conshdlr::name, SCIP_Conshdlr::needscons, SCIP_Conshdlr::ninitconss, SCIP_Conshdlr::ninitconsskept, SCIP_Stat::nnodes, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPconsGetActiveDepth(), SCIPconsIsActive(), SCIPsetDebugMsg, SCIPtreeGetCurrentDepth(), SCIPtreeProbing(), and SCIP_Conshdlr::sepatime.

Referenced by SCIPinitConssLP().

◆ SCIPconshdlrSeparateLP()

SCIP_RETCODE SCIPconshdlrSeparateLP ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_SEPASTORE * sepastore,
int depth,
SCIP_Bool execdelayed,
SCIP_RESULT * result )

calls separator method of constraint handler to separate LP solution

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
sepastoreseparation storage
depthdepth of current node
execdelayedexecute separation method even if it is marked to be delayed
resultpointer to store the result of the callback method

Definition at line 2877 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::delaysepa, depth, SCIP_Conshdlr::duringsepa, SCIP_Conshdlr::eagerfreq, FALSE, SCIP_Conshdlr::lastnusefulsepaconss, SCIP_Conshdlr::lastsepalpcount, SCIP_Stat::lpcount, MAX, MIN, SCIP_Stat::nactiveconss, SCIP_Conshdlr::name, SCIP_Stat::nboundchgs, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::nconssfound, SCIP_Conshdlr::ncutoffs, SCIP_Conshdlr::ncutsfound, SCIP_Conshdlr::ndomredsfound, SCIP_Conshdlr::needscons, SCIP_Conshdlr::nenfoconss, SCIP_Stat::nholechgs, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepacalls, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, result, SCIP_Bool, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_NEWROUND, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPsepastoreGetNCuts(), SCIPsetDebugMsg, SCIP_Conshdlr::sepaconss, SCIP_Conshdlr::sepafreq, SCIP_Conshdlr::sepalpwasdelayed, SCIP_Conshdlr::sepatime, and TRUE.

Referenced by separationRoundLP().

◆ SCIPconshdlrSeparateSol()

SCIP_RETCODE SCIPconshdlrSeparateSol ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_SEPASTORE * sepastore,
SCIP_SOL * sol,
int depth,
SCIP_Bool execdelayed,
SCIP_RESULT * result )

calls separator method of constraint handler to separate given primal solution

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
sepastoreseparation storage
solprimal solution that should be separated
depthdepth of current node
execdelayedexecute separation method even if it is marked to be delayed
resultpointer to store the result of the callback method

Definition at line 3034 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::delaysepa, depth, SCIP_Conshdlr::duringsepa, SCIP_Conshdlr::eagerfreq, FALSE, MAX, SCIP_Stat::nactiveconss, SCIP_Conshdlr::name, SCIP_Stat::nboundchgs, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::nconssfound, SCIP_Conshdlr::ncutoffs, SCIP_Conshdlr::ncutsfound, SCIP_Conshdlr::ndomredsfound, SCIP_Conshdlr::needscons, SCIP_Conshdlr::nenfoconss, SCIP_Stat::nholechgs, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepacalls, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, result, SCIP_Bool, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_NEWROUND, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPsepastoreGetNCuts(), SCIPsetDebugMsg, SCIP_Conshdlr::sepaconss, SCIP_Conshdlr::sepafreq, SCIP_Conshdlr::sepasolwasdelayed, SCIP_Conshdlr::sepatime, sol, and TRUE.

Referenced by separationRoundSol().

◆ SCIPconshdlrEnforceRelaxSol()

SCIP_RETCODE SCIPconshdlrEnforceRelaxSol ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_TREE * tree,
SCIP_SEPASTORE * sepastore,
SCIP_SOL * relaxsol,
SCIP_Bool solinfeasible,
SCIP_RESULT * result )

calls enforcing method of constraint handler for a relaxation solution for all constraints added after last conshdlrResetEnfo() call

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
treebranch and bound tree
sepastoreseparation storage
relaxsolsolution to be enforced
solinfeasiblewas the solution already found out to be infeasible?
resultpointer to store the result of the callback method

Definition at line 3163 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Stat::domchgcount, SCIP_Conshdlr::eagerfreq, SCIP_Conshdlr::enfoconss, SCIP_Conshdlr::enforelaxtime, FALSE, SCIP_Conshdlr::lastenfopsdomchgcount, SCIP_Conshdlr::lastenfopsnode, SCIP_Conshdlr::lastenforelaxdomchgcount, SCIP_Conshdlr::lastenforelaxnode, SCIP_Conshdlr::lastenforelaxrelaxcount, SCIP_Conshdlr::lastenforelaxresult, SCIP_Conshdlr::lastnusefulenfoconss, MAX, SCIP_Stat::nactiveconss, SCIP_Conshdlr::name, SCIP_Stat::nboundchgs, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::nchildren, SCIP_Tree::nchildren, SCIP_Conshdlr::nconssfound, SCIP_Conshdlr::ncutoffs, SCIP_Conshdlr::ncutsfound, SCIP_Conshdlr::ndomredsfound, SCIP_Conshdlr::needscons, SCIP_Conshdlr::nenfoconss, SCIP_Conshdlr::nenforelaxcalls, SCIP_Stat::nholechgs, SCIP_Stat::nnodes, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, SCIP_Stat::relaxcount, result, SCIP_Bool, SCIP_BRANCHED, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DIDNOTRUN, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIP_SOLVELP, SCIPclockStart(), SCIPclockStop(), SCIPdebugMessage, SCIPerrorMessage, SCIPsepastoreGetNCuts(), and TRUE.

Referenced by enforceConstraints().

◆ SCIPconshdlrEnforceLPSol()

SCIP_RETCODE SCIPconshdlrEnforceLPSol ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_TREE * tree,
SCIP_SEPASTORE * sepastore,
SCIP_Bool solinfeasible,
SCIP_RESULT * result )

calls enforcing method of constraint handler for LP solution for all constraints added after last conshdlrResetEnfo() call

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
treebranch and bound tree
sepastoreseparation storage
solinfeasiblewas the solution already found out to be infeasible?
resultpointer to store the result of the callback method

Definition at line 3351 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Stat::domchgcount, SCIP_Conshdlr::eagerfreq, SCIP_Conshdlr::enfoconss, SCIP_Conshdlr::enfolptime, FALSE, SCIP_Conshdlr::lastenfolpdomchgcount, SCIP_Conshdlr::lastenfolplpcount, SCIP_Conshdlr::lastenfolpnode, SCIP_Conshdlr::lastenfolpresult, SCIP_Conshdlr::lastnusefulenfoconss, SCIP_Stat::lpcount, MAX, SCIP_Stat::nactiveconss, SCIP_Conshdlr::name, SCIP_Stat::nboundchgs, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::nchildren, SCIP_Tree::nchildren, SCIP_Conshdlr::nconssfound, SCIP_Conshdlr::ncutoffs, SCIP_Conshdlr::ncutsfound, SCIP_Conshdlr::ndomredsfound, SCIP_Conshdlr::needscons, SCIP_Conshdlr::nenfoconss, SCIP_Conshdlr::nenfolpcalls, SCIP_Stat::nholechgs, SCIP_Stat::nnodes, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, result, SCIP_Bool, SCIP_BRANCHED, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIP_SOLVELP, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPsepastoreGetNCuts(), SCIPsetDebugMsg, and TRUE.

Referenced by enforceConstraints().

◆ SCIPconshdlrGetDiveBoundChanges()

SCIP_RETCODE SCIPconshdlrGetDiveBoundChanges ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set,
SCIP_DIVESET * diveset,
SCIP_SOL * sol,
SCIP_Bool * success,
SCIP_Bool * infeasible )

calls diving solution enforcement callback of constraint handler, if it exists

Parameters
conshdlrconstraint handler
setglobal SCIP settings
divesetdiving settings to control scoring
solcurrent solution of diving mode
successpointer to store whether constraint handler successfully found a variable
infeasiblepointer to store whether the current node was detected to be infeasible

Definition at line 3529 of file cons.c.

References assert(), diveset, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, and sol.

Referenced by SCIPgetDiveBoundChanges().

◆ SCIPconshdlrEnforcePseudoSol()

SCIP_RETCODE SCIPconshdlrEnforcePseudoSol ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_TREE * tree,
SCIP_BRANCHCAND * branchcand,
SCIP_Bool solinfeasible,
SCIP_Bool objinfeasible,
SCIP_Bool forced,
SCIP_RESULT * result )

calls enforcing method of constraint handler for pseudo solution for all constraints added after last conshdlrResetEnfo() call

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
treebranch and bound tree
branchcandbranching candidate storage
solinfeasiblewas the solution already found out to be infeasible?
objinfeasibleis the solution infeasible anyway due to violating lower objective bound?
forcedshould enforcement of pseudo solution be forced?
resultpointer to store the result of the callback method

Definition at line 3556 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Stat::domchgcount, SCIP_Conshdlr::eagerfreq, SCIP_Conshdlr::enfoconss, SCIP_Conshdlr::enfopstime, FALSE, SCIP_Conshdlr::lastenfopsdomchgcount, SCIP_Conshdlr::lastenfopsnode, SCIP_Conshdlr::lastenfopsresult, SCIP_Conshdlr::lastnusefulenfoconss, SCIP_Conshdlr::name, SCIP_Stat::nboundchgs, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::nchildren, SCIP_Tree::nchildren, SCIP_Conshdlr::ncutoffs, SCIP_Conshdlr::ndomredsfound, SCIP_Conshdlr::needscons, SCIP_Conshdlr::nenfoconss, SCIP_Conshdlr::nenfopscalls, SCIP_Stat::nholechgs, SCIP_Stat::nnodes, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, result, SCIP_Bool, SCIP_BRANCHED, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DIDNOTRUN, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SOLVELP, SCIPbranchcandGetNPseudoCands(), SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPsetDebugMsg, and TRUE.

Referenced by enforceConstraints().

◆ SCIPconshdlrCheck()

SCIP_RETCODE SCIPconshdlrCheck ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_SOL * sol,
SCIP_Bool checkintegrality,
SCIP_Bool checklprows,
SCIP_Bool printreason,
SCIP_Bool completely,
SCIP_RESULT * result )

calls feasibility check method of constraint handler

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
solprimal CIP solution
checkintegralityHas integrality to be checked?
checklprowsDo constraints represented by rows in the current LP have to be checked?
printreasonShould the reason for the violation be printed?
completelyShould all violations be checked?
resultpointer to store the result of the callback method

Definition at line 3760 of file cons.c.

References assert(), SCIP_Conshdlr::checkconss, SCIP_Conshdlr::checktime, conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::name, SCIP_Conshdlr::ncheckcalls, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::needscons, SCIP_Conshdlr::nenfoconss, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, result, SCIP_Bool, SCIP_CALL, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_INVALIDRESULT, SCIP_OKAY, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPsetDebugMsg, and sol.

Referenced by SCIPsolCheck(), and SCIPsolCheckOrig().

◆ SCIPconshdlrPropagate()

SCIP_RETCODE SCIPconshdlrPropagate ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
int depth,
SCIP_Bool fullpropagation,
SCIP_Bool execdelayed,
SCIP_Bool instrongbranching,
SCIP_PROPTIMING proptiming,
SCIP_RESULT * result )

calls propagation method of constraint handler

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
depthdepth of current node
fullpropagationshould all constraints be propagated (or only new ones)?
execdelayedexecute propagation method even if it is marked to be delayed
instrongbranchingare we currently doing strong branching?
proptimingcurrent point in the node solving process
resultpointer to store the result of the callback method

Definition at line 3822 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::delayprop, depth, SCIP_Stat::domchgcount, SCIP_Conshdlr::duringprop, SCIP_Conshdlr::eagerfreq, FALSE, SCIP_Conshdlr::lastnusefulpropconss, SCIP_Conshdlr::lastpropdomchgcount, MIN, SCIP_Conshdlr::name, SCIP_Stat::nboundchgs, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::ncutoffs, SCIP_Conshdlr::ndomredsfound, SCIP_Conshdlr::needscons, SCIP_Conshdlr::nenfoconss, SCIP_Stat::nholechgs, SCIP_Conshdlr::nmarkedpropconss, SCIP_Stat::nprobboundchgs, SCIP_Stat::nprobholechgs, SCIP_Conshdlr::npropcalls, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, SCIP_Conshdlr::propconss, SCIP_Conshdlr::propfreq, SCIP_Conshdlr::proptime, SCIP_Conshdlr::propwasdelayed, result, SCIP_Conshdlr::sbproptime, SCIP_Bool, SCIP_CALL, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DELAYNODE, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_Longint, SCIP_OKAY, SCIP_REDUCEDDOM, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPsetDebugMsg, and TRUE.

Referenced by propagationRound().

◆ SCIPconshdlrPresolve()

SCIP_RETCODE SCIPconshdlrPresolve ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_PRESOLTIMING timing,
int nrounds,
int * nfixedvars,
int * naggrvars,
int * nchgvartypes,
int * nchgbds,
int * naddholes,
int * ndelconss,
int * naddconss,
int * nupgdconss,
int * nchgcoefs,
int * nchgsides,
SCIP_RESULT * result )

calls presolving method of constraint handler

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
timingcurrent presolving timing
nroundsnumber of presolving rounds already done
nfixedvarspointer to total number of variables fixed of all presolvers
naggrvarspointer to total number of variables aggregated of all presolvers
nchgvartypespointer to total number of variable type changes of all presolvers
nchgbdspointer to total number of variable bounds tightened of all presolvers
naddholespointer to total number of domain holes added of all presolvers
ndelconsspointer to total number of deleted constraints of all presolvers
naddconsspointer to total number of added constraints of all presolvers
nupgdconsspointer to total number of upgraded constraints of all presolvers
nchgcoefspointer to total number of changed coefficients of all presolvers
nchgsidespointer to total number of changed left/right hand sides of all presolvers
resultpointer to store the result of the callback method

Definition at line 3993 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::conss, SCIP_Conshdlr::lastnaddconss, SCIP_Conshdlr::lastnaddholes, SCIP_Conshdlr::lastnaggrvars, SCIP_Conshdlr::lastnchgbds, SCIP_Conshdlr::lastnchgcoefs, SCIP_Conshdlr::lastnchgsides, SCIP_Conshdlr::lastnchgvartypes, SCIP_Conshdlr::lastndelconss, SCIP_Conshdlr::lastnfixedvars, SCIP_Conshdlr::lastnupgdconss, SCIP_Conshdlr::maxprerounds, SCIP_Conshdlr::nactiveconss, SCIP_Conshdlr::naddconss, SCIP_Conshdlr::naddholes, SCIP_Conshdlr::naggrvars, SCIP_Conshdlr::name, SCIP_Conshdlr::ncheckconss, SCIP_Conshdlr::nchgbds, SCIP_Conshdlr::nchgcoefs, SCIP_Conshdlr::nchgsides, SCIP_Conshdlr::nchgvartypes, SCIP_Conshdlr::ndelconss, SCIP_Conshdlr::needscons, SCIP_Conshdlr::nenfoconss, SCIP_Conshdlr::nfixedvars, SCIP_Conshdlr::npresolcalls, SCIP_Conshdlr::npropconss, SCIP_Conshdlr::nsepaconss, NULL, SCIP_Conshdlr::nupgdconss, SCIP_Conshdlr::nusefulcheckconss, SCIP_Conshdlr::nusefulenfoconss, SCIP_Conshdlr::nusefulpropconss, SCIP_Conshdlr::nusefulsepaconss, SCIP_Conshdlr::presoltime, SCIP_Conshdlr::presoltiming, result, SCIP_CALL, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_SUCCESS, SCIP_UNBOUNDED, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, and SCIPsetDebugMsg.

Referenced by presolveRound().

◆ SCIPconshdlrDelVars()

SCIP_RETCODE SCIPconshdlrDelVars ( SCIP_CONSHDLR * conshdlr,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )

calls variable deletion method of constraint handler

Parameters
conshdlrconstraint handler
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics

Definition at line 4136 of file cons.c.

References assert(), conshdlrDelayUpdates(), conshdlrForceUpdates(), SCIP_Conshdlr::conss, SCIP_Conshdlr::name, SCIP_Conshdlr::nconss, NULL, SCIP_CALL, SCIP_OKAY, and SCIPsetDebugMsg.

Referenced by SCIPprobPerformVarDeletions().

◆ SCIPconshdlrLockVars()

SCIP_RETCODE SCIPconshdlrLockVars ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set )

locks rounding of variables involved in the given constraint constraint handler that doesn't need constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings

Definition at line 4167 of file cons.c.

References assert(), SCIP_Conshdlr::needscons, NULL, SCIP_CALL, SCIP_LOCKTYPE_MODEL, and SCIP_OKAY.

Referenced by SCIPprobTransform().

◆ SCIPconshdlrUnlockVars()

SCIP_RETCODE SCIPconshdlrUnlockVars ( SCIP_CONSHDLR * conshdlr,
SCIP_SET * set )

unlocks rounding of variables involved in the given constraint constraint handler that doesn't need constraints

Parameters
conshdlrconstraint handler
setglobal SCIP settings

Definition at line 4182 of file cons.c.

References assert(), SCIP_Conshdlr::needscons, NULL, SCIP_CALL, SCIP_LOCKTYPE_MODEL, and SCIP_OKAY.

Referenced by SCIPprobFree().

◆ SCIPconshdlrSetCopy()

void SCIPconshdlrSetCopy ( SCIP_CONSHDLR * conshdlr,
SCIP_DECL_CONSHDLRCOPY((*conshdlrcopy))  )

sets copy method of both the constraint handler and each associated constraint

Parameters
conshdlrconstraint handler

Definition at line 4289 of file cons.c.

References assert(), SCIP_Conshdlr::needscons, NULL, and SCIP_DECL_CONSCOPY.

Referenced by SCIPsetConshdlrCopy().

◆ SCIPconshdlrSetFree()

void SCIPconshdlrSetFree ( SCIP_CONSHDLR * conshdlr)

sets destructor method of constraint handler

Parameters
conshdlrconstraint handler destructor of constraint handler

Definition at line 4304 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSFREE.

Referenced by SCIPsetConshdlrFree().

◆ SCIPconshdlrSetInit()

void SCIPconshdlrSetInit ( SCIP_CONSHDLR * conshdlr)

sets initialization method of constraint handler

Parameters
conshdlrconstraint handler initialize constraint handler

Definition at line 4315 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSINIT.

Referenced by SCIPsetConshdlrInit().

◆ SCIPconshdlrSetExit()

void SCIPconshdlrSetExit ( SCIP_CONSHDLR * conshdlr)

sets deinitialization method of constraint handler

Parameters
conshdlrconstraint handler deinitialize constraint handler

Definition at line 4326 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSEXIT.

Referenced by SCIPsetConshdlrExit().

◆ SCIPconshdlrSetInitsol()

void SCIPconshdlrSetInitsol ( SCIP_CONSHDLR * conshdlr)

sets solving process initialization method of constraint handler

Parameters
conshdlrconstraint handler solving process initialization method of constraint handler

Definition at line 4337 of file cons.c.

References assert(), and NULL.

Referenced by SCIPsetConshdlrInitsol().

◆ SCIPconshdlrSetExitsol()

void SCIPconshdlrSetExitsol ( SCIP_CONSHDLR * conshdlr)

sets solving process deinitialization method of constraint handler

Parameters
conshdlrconstraint handler solving process deinitialization method of constraint handler

Definition at line 4348 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSEXITSOL.

Referenced by SCIPsetConshdlrExitsol().

◆ SCIPconshdlrSetInitpre()

void SCIPconshdlrSetInitpre ( SCIP_CONSHDLR * conshdlr)

sets preprocessing initialization method of constraint handler

Parameters
conshdlrconstraint handler preprocessing initialization method of constraint handler

Definition at line 4359 of file cons.c.

References assert(), and NULL.

Referenced by SCIPsetConshdlrInitpre().

◆ SCIPconshdlrSetExitpre()

void SCIPconshdlrSetExitpre ( SCIP_CONSHDLR * conshdlr)

sets preprocessing deinitialization method of constraint handler

Parameters
conshdlrconstraint handler preprocessing deinitialization method of constraint handler

Definition at line 4370 of file cons.c.

References assert(), and NULL.

Referenced by SCIPsetConshdlrExitpre().

◆ SCIPconshdlrSetPresol()

SCIP_RETCODE SCIPconshdlrSetPresol ( SCIP_CONSHDLR * conshdlr,
SCIP_DECL_CONSPRESOL((*conspresol)) ,
int maxprerounds,
SCIP_PRESOLTIMING presoltiming )

sets presolving method of constraint handler

Parameters
conshdlrconstraint handler
maxpreroundsmaximal number of presolving rounds the constraint handler participates in (-1: no limit)
presoltimingtiming mask of the constraint handler's presolving method

Definition at line 4381 of file cons.c.

References assert(), SCIP_Conshdlr::maxprerounds, SCIP_Conshdlr::name, NULL, SCIP_Conshdlr::presoltiming, SCIP_DECL_CONSPRESOL, SCIP_OKAY, SCIP_PARAMETERWRONGVAL, SCIP_PRESOLTIMING_MAX, and SCIPmessagePrintError().

Referenced by SCIPsetConshdlrPresol().

◆ SCIPconshdlrSetDelete()

void SCIPconshdlrSetDelete ( SCIP_CONSHDLR * conshdlr)

sets method of constraint handler to free specific constraint data

Parameters
conshdlrconstraint handler free specific constraint data

Definition at line 4410 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSDELETE.

Referenced by SCIPsetConshdlrDelete().

◆ SCIPconshdlrSetTrans()

void SCIPconshdlrSetTrans ( SCIP_CONSHDLR * conshdlr)

sets method of constraint handler to transform constraint data into data belonging to the transformed problem

Parameters
conshdlrconstraint handler transform constraint data into data belonging to the transformed problem

Definition at line 4421 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSTRANS.

Referenced by SCIPsetConshdlrTrans().

◆ SCIPconshdlrSetInitlp()

void SCIPconshdlrSetInitlp ( SCIP_CONSHDLR * conshdlr)

sets method of constraint handler to initialize LP with relaxations of "initial" constraints

Parameters
conshdlrconstraint handler initialize LP with relaxations of "initial" constraints

Definition at line 4432 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSINITLP.

Referenced by SCIPsetConshdlrInitlp().

◆ SCIPconshdlrSetResprop()

void SCIPconshdlrSetResprop ( SCIP_CONSHDLR * conshdlr)

sets propagation conflict resolving method of constraint handler

Parameters
conshdlrconstraint handler propagation conflict resolving method

Definition at line 4443 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSRESPROP.

Referenced by SCIPsetConshdlrResprop().

◆ SCIPconshdlrSetActive()

void SCIPconshdlrSetActive ( SCIP_CONSHDLR * conshdlr)

sets activation notification method of constraint handler

Parameters
conshdlrconstraint handler activation notification method

Definition at line 4454 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSACTIVE.

Referenced by SCIPsetConshdlrActive().

◆ SCIPconshdlrSetDeactive()

void SCIPconshdlrSetDeactive ( SCIP_CONSHDLR * conshdlr)

sets deactivation notification method of constraint handler

Parameters
conshdlrconstraint handler deactivation notification method

Definition at line 4465 of file cons.c.

References assert(), and NULL.

Referenced by SCIPsetConshdlrDeactive().

◆ SCIPconshdlrSetEnable()

void SCIPconshdlrSetEnable ( SCIP_CONSHDLR * conshdlr)

sets enabling notification method of constraint handler

Parameters
conshdlrconstraint handler enabling notification method

Definition at line 4476 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSENABLE.

Referenced by SCIPsetConshdlrEnable().

◆ SCIPconshdlrSetDisable()

void SCIPconshdlrSetDisable ( SCIP_CONSHDLR * conshdlr)

sets disabling notification method of constraint handler

Parameters
conshdlrconstraint handler disabling notification method

Definition at line 4487 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSDISABLE.

Referenced by SCIPsetConshdlrDisable().

◆ SCIPconshdlrSetDelvars()

void SCIPconshdlrSetDelvars ( SCIP_CONSHDLR * conshdlr)

sets variable deletion method of constraint handler

Parameters
conshdlrconstraint handler variable deletion method

Definition at line 4498 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSDELVARS.

Referenced by SCIPsetConshdlrDelvars().

◆ SCIPconshdlrSetPrint()

void SCIPconshdlrSetPrint ( SCIP_CONSHDLR * conshdlr)

sets constraint display method of constraint handler

Parameters
conshdlrconstraint handler constraint display method

Definition at line 4509 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSPRINT.

Referenced by SCIPsetConshdlrPrint().

◆ SCIPconshdlrSetParse()

void SCIPconshdlrSetParse ( SCIP_CONSHDLR * conshdlr)

sets constraint parsing method of constraint handler

Parameters
conshdlrconstraint handler constraint parsing method

Definition at line 4520 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSPARSE.

Referenced by SCIPsetConshdlrParse().

◆ SCIPconshdlrSetGetVars()

void SCIPconshdlrSetGetVars ( SCIP_CONSHDLR * conshdlr)

sets constraint variable getter method of constraint handler

Parameters
conshdlrconstraint handler constraint variable getter method

Definition at line 4531 of file cons.c.

References assert(), NULL, and SCIP_DECL_CONSGETVARS.

Referenced by SCIPsetConshdlrGetVars().

◆ SCIPconshdlrSetGetNVars()

void SCIPconshdlrSetGetNVars ( SCIP_CONSHDLR * conshdlr)

sets constraint variable number getter method of constraint handler

Parameters
conshdlrconstraint handler constraint variable number getter method

Definition at line 4542 of file cons.c.

References assert(), and NULL.

Referenced by SCIPsetConshdlrGetNVars().

◆ SCIPconshdlrSetGetDiveBdChgs()

void SCIPconshdlrSetGetDiveBdChgs ( SCIP_CONSHDLR * conshdlr)

sets diving enforcement method of constraint handler

Parameters
conshdlrconstraint handler constraint handler diving solution enforcement method

Definition at line 4553 of file cons.c.

References assert(), and NULL.

Referenced by SCIPsetConshdlrGetDiveBdChgs().

◆ SCIPconshdlrSetGetPermsymGraph()

void SCIPconshdlrSetGetPermsymGraph ( SCIP_CONSHDLR * conshdlr)

sets permutation symmetry detection graph getter method of constraint handler

Parameters
conshdlrconstraint handler constraint permutation symmetry detection graph getter method

Definition at line 4564 of file cons.c.

References assert(), and NULL.

Referenced by SCIPsetConshdlrGetPermsymGraph().

◆ SCIPconshdlrSetGetSignedPermsymGraph()

void SCIPconshdlrSetGetSignedPermsymGraph ( SCIP_CONSHDLR * conshdlr)

sets signed permutation symmetry detection graph getter method of constraint handler

Parameters
conshdlrconstraint handler constraint permutation symmetry detection graph getter method

Definition at line 4576 of file cons.c.

References assert(), and NULL.

Referenced by SCIPsetConshdlrGetSignedPermsymGraph().

◆ SCIPconshdlrEnableOrDisableClocks()

void SCIPconshdlrEnableOrDisableClocks ( SCIP_CONSHDLR * conshdlr,
SCIP_Bool enable )

enables or disables all clocks of conshdlr, depending on the value of the flag

Parameters
conshdlrthe constraint handler for which all clocks should be enabled or disabled
enableshould the clocks of the constraint handler be enabled?

Definition at line 4700 of file cons.c.

References assert(), SCIP_Conshdlr::checktime, SCIP_Conshdlr::enfolptime, SCIP_Conshdlr::enfopstime, SCIP_Conshdlr::enforelaxtime, NULL, SCIP_Conshdlr::presoltime, SCIP_Conshdlr::proptime, SCIP_Conshdlr::resproptime, SCIP_Conshdlr::sbproptime, SCIP_Bool, SCIPclockEnableOrDisable(), SCIP_Conshdlr::sepatime, and SCIP_Conshdlr::setuptime.

◆ SCIPconshdlrIncNAppliedCuts()

void SCIPconshdlrIncNAppliedCuts ( SCIP_CONSHDLR * conshdlr)

increase count of applied cuts

Parameters
conshdlrconstraint handler

Definition at line 4920 of file cons.c.

References assert(), SCIP_Conshdlr::ncutsapplied, and NULL.

Referenced by sepastoreApplyCut().

◆ SCIPconshdlrIncNCutsFound()

void SCIPconshdlrIncNCutsFound ( SCIP_CONSHDLR * conshdlr)

increase count of found cuts

Parameters
conshdlrconstraint handler

Definition at line 4930 of file cons.c.

References assert(), SCIP_Conshdlr::ncutsfound, and NULL.

Referenced by SCIPcutpoolSeparate().

◆ conssetchgCreate()

SCIP_RETCODE conssetchgCreate ( SCIP_CONSSETCHG ** conssetchg,
BMS_BLKMEM * blkmem )
static

creates empty constraint set change data

Parameters
conssetchgpointer to constraint set change data
blkmemblock memory

Definition at line 5318 of file cons.c.

References assert(), BMSallocBlockMemory, NULL, SCIP_ALLOC, and SCIP_OKAY.

Referenced by SCIPconssetchgAddAddedCons(), and SCIPconssetchgAddDisabledCons().

◆ conssetchgRelease()

SCIP_RETCODE conssetchgRelease ( SCIP_CONSSETCHG * conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set )
static

releases all constraints of the constraint set change data

Parameters
conssetchgconstraint set change data
blkmemblock memory
setglobal SCIP settings

Definition at line 5339 of file cons.c.

References SCIP_ConsSetChg::addedconss, assert(), SCIP_ConsSetChg::disabledconss, i, SCIP_ConsSetChg::naddedconss, SCIP_ConsSetChg::ndisabledconss, NULL, SCIP_CALL, SCIP_OKAY, and SCIPconsRelease().

Referenced by SCIPconssetchgFree().

◆ SCIPconssetchgFree()

SCIP_RETCODE SCIPconssetchgFree ( SCIP_CONSSETCHG ** conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set )

frees constraint set change data and releases all included constraints

Parameters
conssetchgpointer to constraint set change
blkmemblock memory
setglobal SCIP settings

Definition at line 5369 of file cons.c.

References assert(), BMSfreeBlockMemory, BMSfreeBlockMemoryArrayNull, conssetchgRelease(), NULL, SCIP_CALL, and SCIP_OKAY.

Referenced by SCIPconssetchgMakeGlobal(), and SCIPnodeFree().

◆ conssetchgEnsureAddedconssSize()

SCIP_RETCODE conssetchgEnsureAddedconssSize ( SCIP_CONSSETCHG * conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
int num )
static

ensures, that addedconss array can store at least num entries

Parameters
conssetchgconstraint set change data structure
blkmemblock memory
setglobal SCIP settings
numminimum number of entries to store

Definition at line 5394 of file cons.c.

References SCIP_ConsSetChg::addedconss, SCIP_ConsSetChg::addedconsssize, assert(), BMSreallocBlockMemoryArray, NULL, SCIP_ALLOC, SCIP_OKAY, and SCIPsetCalcMemGrowSize().

Referenced by SCIPconssetchgAddAddedCons().

◆ conssetchgEnsureDisabledconssSize()

SCIP_RETCODE conssetchgEnsureDisabledconssSize ( SCIP_CONSSETCHG * conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
int num )
static

ensures, that disabledconss array can store at least num entries

Parameters
conssetchgconstraint set change data structure
blkmemblock memory
setglobal SCIP settings
numminimum number of entries to store

Definition at line 5418 of file cons.c.

References assert(), BMSreallocBlockMemoryArray, SCIP_ConsSetChg::disabledconss, SCIP_ConsSetChg::disabledconsssize, NULL, SCIP_ALLOC, SCIP_OKAY, and SCIPsetCalcMemGrowSize().

Referenced by SCIPconssetchgAddDisabledCons().

◆ SCIPconssetchgAddAddedCons()

SCIP_RETCODE SCIPconssetchgAddAddedCons ( SCIP_CONSSETCHG ** conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_CONS * cons,
int depth,
SCIP_Bool focusnode,
SCIP_Bool active )

adds constraint addition to constraint set changes, and captures constraint; activates constraint if the constraint set change data is currently active

Parameters
conssetchgpointer to constraint set change data structure
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
consadded constraint
depthdepth of constraint set change's node
focusnodedoes the constraint set change belong to the focus node?
activeis the constraint set change currently active?

Definition at line 5443 of file cons.c.

References active, SCIP_Cons::addarraypos, SCIP_Cons::addconssetchg, assert(), conssetchgCreate(), conssetchgEnsureAddedconssSize(), SCIP_Cons::deleted, depth, FALSE, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPconsActivate(), SCIPconsCapture(), and SCIPconsIsActive().

Referenced by SCIPnodeAddCons().

◆ SCIPconssetchgAddDisabledCons()

SCIP_RETCODE SCIPconssetchgAddDisabledCons ( SCIP_CONSSETCHG ** conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_CONS * cons )

adds constraint disabling to constraint set changes, and captures constraint

Parameters
conssetchgpointer to constraint set change data structure
blkmemblock memory
setglobal SCIP settings
consdisabled constraint

Definition at line 5489 of file cons.c.

References assert(), conssetchgCreate(), conssetchgEnsureDisabledconssSize(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPconsCapture().

Referenced by SCIPnodeDelCons().

◆ conssetchgDelAddedCons()

SCIP_RETCODE conssetchgDelAddedCons ( SCIP_CONSSETCHG * conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
int arraypos )
static

deactivates, deletes, and releases constraint from the addedconss array of the constraint set change data

Parameters
conssetchgconstraint set change to delete constraint from
blkmemblock memory
setglobal SCIP settings
arrayposposition of constraint in disabledconss array

Definition at line 5518 of file cons.c.

References SCIP_Cons::addarraypos, SCIP_Cons::addconssetchg, SCIP_ConsSetChg::addedconss, assert(), SCIP_ConsSetChg::naddedconss, SCIP_Cons::name, NULL, SCIP_CALL, SCIP_OKAY, SCIPconsRelease(), and SCIPsetDebugMsg.

Referenced by SCIPconsDelete(), SCIPconssetchgApply(), and SCIPconssetchgMakeGlobal().

◆ conssetchgDelDisabledCons()

SCIP_RETCODE conssetchgDelDisabledCons ( SCIP_CONSSETCHG * conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
int arraypos )
static

deletes and releases deactivated constraint from the disabledconss array of the constraint set change data

Parameters
conssetchgconstraint set change to apply
blkmemblock memory
setglobal SCIP settings
arrayposposition of constraint in disabledconss array

Definition at line 5564 of file cons.c.

References assert(), SCIP_ConsSetChg::disabledconss, SCIP_Cons::name, SCIP_ConsSetChg::ndisabledconss, NULL, SCIP_CALL, SCIP_OKAY, SCIPconsRelease(), and SCIPsetDebugMsg.

Referenced by SCIPconssetchgApply(), SCIPconssetchgMakeGlobal(), and SCIPconssetchgUndo().

◆ SCIPconssetchgApply()

SCIP_RETCODE SCIPconssetchgApply ( SCIP_CONSSETCHG * conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
int depth,
SCIP_Bool focusnode )

applies constraint set change

Parameters
conssetchgconstraint set change to apply
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
depthdepth of constraint set change's node
focusnodedoes the constraint set change belong to the focus node?

Definition at line 5607 of file cons.c.

References SCIP_Cons::active, SCIP_Cons::addarraypos, SCIP_Cons::addconssetchg, SCIP_ConsSetChg::addedconss, assert(), SCIP_Cons::conshdlr, conssetchgDelAddedCons(), conssetchgDelDisabledCons(), SCIP_Cons::deleted, depth, SCIP_ConsSetChg::disabledconss, SCIP_Cons::enabled, i, SCIP_ConsSetChg::naddedconss, SCIP_Cons::name, SCIP_Conshdlr::name, SCIP_ConsSetChg::ndisabledconss, NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPconsActivate(), SCIPconsDisable(), SCIPsetDebugMsg, and SCIP_Cons::update.

Referenced by nodeActivate().

◆ SCIPconssetchgUndo()

SCIP_RETCODE SCIPconssetchgUndo ( SCIP_CONSSETCHG * conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat )

◆ SCIPconssetchgMakeGlobal()

SCIP_RETCODE SCIPconssetchgMakeGlobal ( SCIP_CONSSETCHG ** conssetchg,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_PROB * prob,
SCIP_REOPT * reopt )

applies constraint set change to the global problem and deletes the constraint set change data

Parameters
conssetchgpointer to constraint set change data
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
probproblem data
reoptreoptimization data

Definition at line 5780 of file cons.c.

References assert(), conssetchgDelAddedCons(), conssetchgDelDisabledCons(), SCIP_Cons::deleted, i, SCIP_ConsSetChg::naddedconss, NULL, SCIP_CALL, SCIP_OKAY, SCIPconsCapture(), SCIPconsDelete(), SCIPconsIsStickingAtNode(), SCIPconsRelease(), SCIPconssetchgFree(), SCIPprobAddCons(), SCIPsetDebugMsg, and SCIP_Cons::update.

Referenced by treeSwitchPath().

◆ SCIPconsCreate()

SCIP_RETCODE SCIPconsCreate ( SCIP_CONS ** cons,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
const char * name,
SCIP_CONSHDLR * conshdlr,
SCIP_CONSDATA * consdata,
SCIP_Bool initial,
SCIP_Bool separate,
SCIP_Bool enforce,
SCIP_Bool check,
SCIP_Bool propagate,
SCIP_Bool local,
SCIP_Bool modifiable,
SCIP_Bool dynamic,
SCIP_Bool removable,
SCIP_Bool stickingatnode,
SCIP_Bool original,
SCIP_Bool deleteconsdata )

creates and captures a constraint, and inserts it into the conss array of its constraint handler

Warning
If a constraint is marked to be checked for feasibility but not to be enforced, a LP or pseudo solution may be declared feasible even if it violates this particular constraint. This constellation should only be used, if no LP or pseudo solution can violate the constraint – e.g. if a local constraint is redundant due to the variable's local bounds.
Parameters
conspointer to constraint
blkmemblock memory
setglobal SCIP settings
namename of constraint
conshdlrconstraint handler for this constraint
consdatadata for this specific constraint
initialshould the LP relaxation of constraint be in the initial LP? Usually set to TRUE. Set to FALSE for 'lazy constraints'.
separateshould the constraint be separated during LP processing? Usually set to TRUE.
enforceshould the constraint be enforced during node processing? TRUE for model constraints, FALSE for additional, redundant constraints.
checkshould the constraint be checked for feasibility? TRUE for model constraints, FALSE for additional, redundant constraints.
propagateshould the constraint be propagated during node processing? Usually set to TRUE.
localis constraint only valid locally? Usually set to FALSE. Has to be set to TRUE, e.g., for branching constraints.
modifiableis constraint modifiable (subject to column generation)? Usually set to FALSE. In column generation applications, set to TRUE if pricing adds coefficients to this constraint.
dynamicis constraint subject to aging? Usually set to FALSE. Set to TRUE for own cuts which are separated as constraints.
removableshould the relaxation be removed from the LP due to aging or cleanup? Usually set to FALSE. Set to TRUE for 'lazy constraints' and 'user cuts'.
stickingatnodeshould the constraint always be kept at the node where it was added, even if it may be moved to a more global node? Usually set to FALSE. Set to TRUE to for constraints that represent node data.
originalis constraint belonging to the original problem?
deleteconsdatahas the constraint data to be deleted if constraint is freed?

Definition at line 5876 of file cons.c.

References assert(), BMSallocBlockMemory, BMSduplicateBlockMemoryArray, checkConssArrays, conshdlrAddCons(), conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), FALSE, i, NLOCKTYPES, NULL, propagate, SCIP_ALLOC, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPconsCapture(), SCIPsetDebugMsg, and TRUE.

Referenced by SCIPconsTransform(), and SCIPcreateCons().

◆ SCIPconsCopy()

SCIP_RETCODE SCIPconsCopy ( SCIP_CONS ** cons,
SCIP_SET * set,
const char * name,
SCIP * sourcescip,
SCIP_CONSHDLR * sourceconshdlr,
SCIP_CONS * sourcecons,
SCIP_HASHMAP * varmap,
SCIP_HASHMAP * consmap,
SCIP_Bool initial,
SCIP_Bool separate,
SCIP_Bool enforce,
SCIP_Bool check,
SCIP_Bool propagate,
SCIP_Bool local,
SCIP_Bool modifiable,
SCIP_Bool dynamic,
SCIP_Bool removable,
SCIP_Bool stickingatnode,
SCIP_Bool global,
SCIP_Bool * valid )

copies source constraint of source SCIP into the target constraint for the target SCIP, using the variable map for mapping the variables of the source SCIP to the variables of the target SCIP; if the copying process was successful a constraint is created and captured;

Warning
If a constraint is marked to be checked for feasibility but not to be enforced, an LP or pseudo solution may be declared feasible even if it violates this particular constraint. This constellation should only be used, if no LP or pseudo solution can violate the constraint – e.g. if a local constraint is redundant due to the variable's local bounds.
Parameters
conspointer to store the created target constraint
setglobal SCIP settings of the target SCIP
namename of constraint, or NULL if the name of the source constraint should be used
sourcescipsource SCIP data structure
sourceconshdlrsource constraint handler for this constraint
sourceconssource constraint of the source SCIP
varmapa SCIP_HASHMAP mapping variables of the source SCIP to corresponding variables of the target SCIP
consmapa hashmap to store the mapping of source constraints to the corresponding target constraints, must not be NULL!
initialshould the LP relaxation of constraint be in the initial LP?
separateshould the constraint be separated during LP processing?
enforceshould the constraint be enforced during node processing?
checkshould the constraint be checked for feasibility?
propagateshould the constraint be propagated during node processing?
localis constraint only valid locally?
modifiableis constraint modifiable (subject to column generation)?
dynamicis constraint subject to aging?
removableshould the relaxation be removed from the LP due to aging or cleanup?
stickingatnodeshould the constraint always be kept at the node where it was added, even if it may be moved to a more global node?
globalcreate a global or a local copy?
validpointer to store whether the copying was valid or not

Definition at line 6018 of file cons.c.

References assert(), FALSE, NULL, propagate, SCIP_Bool, SCIP_CALL, SCIP_OKAY, and valid.

Referenced by SCIPgetConsCopy().

◆ SCIPconsParse()

SCIP_RETCODE SCIPconsParse ( SCIP_CONS ** cons,
SCIP_SET * set,
SCIP_MESSAGEHDLR * messagehdlr,
const char * str,
SCIP_Bool initial,
SCIP_Bool separate,
SCIP_Bool enforce,
SCIP_Bool check,
SCIP_Bool propagate,
SCIP_Bool local,
SCIP_Bool modifiable,
SCIP_Bool dynamic,
SCIP_Bool removable,
SCIP_Bool stickingatnode,
SCIP_Bool * success )

parses constraint information (in cip format) out of a string; if the parsing process was successful a constraint is created, captured, and inserted into the conss array of its constraint handler.

Warning
If a constraint is marked to be checked for feasibility but not to be enforced, an LP or pseudo solution may be declared feasible even if it violates this particular constraint. This constellation should only be used, if no LP or pseudo solution can violate the constraint – e.g. if a local constraint is redundant due to the variable's local bounds.
Parameters
conspointer to constraint
setglobal SCIP settings
messagehdlrmessage handler of target SCIP
strstring to parse for constraint
initialshould the LP relaxation of constraint be in the initial LP? Usually set to TRUE. Set to FALSE for 'lazy constraints'.
separateshould the constraint be separated during LP processing? Usually set to TRUE.
enforceshould the constraint be enforced during node processing? TRUE for model constraints, FALSE for additional, redundant constraints.
checkshould the constraint be checked for feasibility? TRUE for model constraints, FALSE for additional, redundant constraints.
propagateshould the constraint be propagated during node processing? Usually set to TRUE.
localis constraint only valid locally? Usually set to FALSE. Has to be set to TRUE, e.g., for branching constraints.
modifiableis constraint modifiable (subject to column generation)? Usually set to FALSE. In column generation applications, set to TRUE if pricing adds coefficients to this constraint.
dynamicis constraint subject to aging? Usually set to FALSE. Set to TRUE for own cuts which are separated as constraints.
removableshould the relaxation be removed from the LP due to aging or cleanup? Usually set to FALSE. Set to TRUE for 'lazy constraints' and 'user cuts'.
stickingatnodeshould the constraint always be kept at the node where it was added, even if it may be moved to a more global node? Usually set to FALSE. Set to TRUE to for constraints that represent node data.
successpointer store if the paring process was successful

Definition at line 6074 of file cons.c.

References assert(), FALSE, NULL, propagate, SCIP_Bool, SCIP_CALL, SCIP_MAXSTRLEN, SCIP_OKAY, SCIPmessagePrintWarning(), SCIPsetDebugMsg, SCIPsetFindConshdlr(), SCIPskipSpace(), and SCIPstrCopySection().

Referenced by SCIPparseCons().

◆ SCIPconsChgName()

SCIP_RETCODE SCIPconsChgName ( SCIP_CONS * cons,
BMS_BLKMEM * blkmem,
const char * name )

change name of given constraint

Parameters
consproblem constraint
blkmemblock memory buffer
namenew name of constraint

Definition at line 6179 of file cons.c.

References assert(), BMSduplicateBlockMemoryArray, BMSfreeBlockMemoryArray, SCIP_Cons::name, NULL, SCIP_ALLOC, and SCIP_OKAY.

Referenced by SCIPchgConsName().

◆ SCIPconsFree()

SCIP_RETCODE SCIPconsFree ( SCIP_CONS ** cons,
BMS_BLKMEM * blkmem,
SCIP_SET * set )

frees a constraint and removes it from the conss array of its constraint handler

Parameters
consconstraint to free
blkmemblock memory buffer
setglobal SCIP settings

Definition at line 6199 of file cons.c.

References assert(), BMSfreeBlockMemory, BMSfreeBlockMemoryArray, checkConssArrays, SCIP_Cons::consdata, conshdlrDelCons(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPsetDebugMsg.

Referenced by SCIPconsRelease().

◆ SCIPconsCapture()

◆ SCIPconsRelease()

◆ SCIPconsPrint()

SCIP_RETCODE SCIPconsPrint ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_MESSAGEHDLR * messagehdlr,
FILE * file )

outputs constraint information to file stream

Parameters
consconstraint to print
setglobal SCIP settings
messagehdlrmessage handler
fileoutput file (or NULL for standard output)

Definition at line 6306 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Cons::name, SCIP_Conshdlr::name, NULL, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, and SCIPmessageFPrintInfo().

Referenced by SCIPprintCons().

◆ SCIPconsGetVars()

SCIP_RETCODE SCIPconsGetVars ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_VAR ** vars,
int varssize,
SCIP_Bool * success )

method to collect the variables of a constraint

If the number of variables is greater than the available slots in the variable array, nothing happens except that the success point is set to FALSE. With the method SCIPconsGetNVars() it is possible to get the number of variables a constraint has in its scope.

Note
The success pointer indicates if all variables were copied into the vars arrray.
It might be that a constraint handler does not support this functionality, in that case the success pointer is set to FALSE.
Parameters
consconstraint to get variables for
setglobal SCIP settings
varsarray to store the involved variable of the constraint
varssizeavailable slots in vars array which is needed to check if the array is large enough
successpointer to store whether the variables are successfully copied

Definition at line 6345 of file cons.c.

References assert(), SCIP_Cons::conshdlr, FALSE, NULL, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, SCIP_OKAY, and vars.

Referenced by SCIPgetConsVars().

◆ SCIPconsGetNVars()

SCIP_RETCODE SCIPconsGetNVars ( SCIP_CONS * cons,
SCIP_SET * set,
int * nvars,
SCIP_Bool * success )

method to collect the number of variables of a constraint

Note
The success pointer indicates if the contraint handler was able to return the number of variables
It might be that a constraint handler does not support this functionality, in that case the success pointer is set to FALSE
Parameters
consconstraint to get number of variables for
setglobal SCIP settings
nvarspointer to store the number of variables
successpointer to store whether the constraint successfully returned the number of variables

Definition at line 6381 of file cons.c.

References assert(), SCIP_Cons::conshdlr, FALSE, NULL, nvars, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, and SCIP_OKAY.

Referenced by calcNonZeros(), delPosDualray(), delPosDualsol(), saveConsBounddisjuction(), saveConsLinear(), SCIPconflictstoreAddDualraycons(), SCIPconflictstoreAddDualsolcons(), SCIPgetConsNVars(), and SCIPgetDualSolVal().

◆ SCIPconsGetPermsymGraph()

SCIP_RETCODE SCIPconsGetPermsymGraph ( SCIP_CONS * cons,
SCIP_SET * set,
SYM_GRAPH * graph,
SCIP_Bool * success )

method to collect the permutation symmetry detection graph of a constraint

Note
The success pointer indicates whether the constraint handler was able to return the graph.
If a constraint handler does not support this functionality, the success pointer is set to FALSE.
Parameters
consconstraint to get graph for
setglobal SCIP settings
graphsymmetry detection graph
successpointer to store whether the constraint successfully returned the graph

Definition at line 6416 of file cons.c.

References assert(), SCIP_Cons::conshdlr, FALSE, NULL, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, and SCIP_OKAY.

Referenced by SCIPgetConsPermsymGraph().

◆ SCIPconsGetSignedPermsymGraph()

SCIP_RETCODE SCIPconsGetSignedPermsymGraph ( SCIP_CONS * cons,
SCIP_SET * set,
SYM_GRAPH * graph,
SCIP_Bool * success )

method to collect the signed permutation symmetry detection graph of a constraint

Note
The success pointer indicates whether the constraint handler was able to return the graph.
If a constraint handler does not support this functionality, the success pointer is set to FALSE.
Parameters
consconstraint to get graph for
setglobal SCIP settings
graphsymmetry detection graph
successpointer to store whether the constraint successfully returned the graph

Definition at line 6449 of file cons.c.

References assert(), SCIP_Cons::conshdlr, FALSE, NULL, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, and SCIP_OKAY.

Referenced by SCIPgetConsSignedPermsymGraph().

◆ SCIPconsDelete()

SCIP_RETCODE SCIPconsDelete ( SCIP_CONS * cons,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_PROB * prob,
SCIP_REOPT * reopt )

globally removes constraint from all subproblems; removes constraint from the constraint set change data of the node, where it was created, or from the problem, if it was a problem constraint

Parameters
consconstraint to delete
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
probproblem data
reoptreoptimization data

Definition at line 6479 of file cons.c.

References SCIP_Cons::active, SCIP_Cons::addarraypos, SCIP_Cons::addconssetchg, SCIP_ConsSetChg::addedconss, assert(), SCIP_Cons::conshdlr, conssetchgDelAddedCons(), SCIP_Conshdlr::delayupdatecount, SCIP_Cons::deleted, SCIP_Cons::enabled, FALSE, SCIP_ConsSetChg::naddedconss, SCIP_Cons::name, NULL, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, SCIPconsDeactivate(), SCIPprobDelCons(), SCIPreoptConsCanBeDeleted(), SCIPsetDebugMsg, TRUE, SCIP_Cons::updateactivate, and SCIP_Cons::updatedeactivate.

Referenced by delPosConflict(), delPosDualray(), delPosDualsol(), SCIPconflictstoreAddDualraycons(), SCIPconflictstoreAddDualsolcons(), SCIPconsAddAge(), SCIPconssetchgMakeGlobal(), SCIPdelCons(), SCIPdelConsLocal(), and SCIPdelConsNode().

◆ SCIPconsTransform()

SCIP_RETCODE SCIPconsTransform ( SCIP_CONS * origcons,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_CONS ** transcons )

gets and captures transformed constraint of a given original constraint; if the constraint is not yet transformed, a new transformed constraint for this constraint is created

Parameters
origconsoriginal constraint
blkmemblock memory buffer
setglobal SCIP settings
transconspointer to store the transformed constraint

Definition at line 6539 of file cons.c.

References assert(), SCIP_Cons::check, SCIP_Cons::consdata, SCIP_Cons::conshdlr, SCIP_Cons::dynamic, SCIP_Cons::enforce, FALSE, SCIP_Cons::initial, SCIP_Cons::local, SCIP_Cons::modifiable, SCIP_Cons::name, NULL, SCIP_Cons::nupgradelocks, SCIP_Cons::original, SCIP_Cons::propagate, SCIP_Cons::removable, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, SCIPconsCapture(), SCIPconsCreate(), SCIP_Cons::separate, SCIP_Cons::stickingatnode, and SCIP_Cons::transorigcons.

Referenced by SCIPprobTransform(), SCIPtransformCons(), and SCIPtransformConss().

◆ SCIPconsSetInitial()

SCIP_RETCODE SCIPconsSetInitial ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_Bool initial )

sets the initial flag of the given constraint

Parameters
consconstraint
setglobal SCIP settings
statdynamic problem statistics
initialnew value

Definition at line 6589 of file cons.c.

References assert(), conshdlrAddInitcons(), conshdlrDelInitcons(), SCIP_Cons::initconsspos, SCIP_Cons::initial, NULL, SCIP_Cons::original, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, SCIP_OKAY, and SCIPconsGetHdlr().

Referenced by SCIPsetConsInitial().

◆ SCIPconsSetSeparated()

SCIP_RETCODE SCIPconsSetSeparated ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_Bool separate )

sets the separate flag of the given constraint

Parameters
consconstraint
setglobal SCIP settings
separatenew value

Definition at line 6623 of file cons.c.

References assert(), SCIP_Cons::conshdlr, conshdlrAddSepacons(), conshdlrDelSepacons(), SCIP_Cons::enabled, NULL, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_STAGE_PROBLEM, SCIPsetGetStage(), SCIP_Cons::sepaenabled, and SCIP_Cons::separate.

Referenced by SCIPsetConsSeparated().

◆ SCIPconsSetEnforced()

SCIP_RETCODE SCIPconsSetEnforced ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_Bool enforce )

sets the enforce flag of the given constraint

Parameters
consconstraint
setglobal SCIP settings
enforcenew value

Definition at line 6658 of file cons.c.

References assert(), SCIP_Cons::conshdlr, conshdlrAddEnfocons(), conshdlrDelEnfocons(), SCIP_Cons::enabled, SCIP_Cons::enforce, NULL, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_STAGE_PROBLEM, and SCIPsetGetStage().

Referenced by SCIPsetConsEnforced().

◆ SCIPconsSetChecked()

SCIP_RETCODE SCIPconsSetChecked ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_Bool check )

sets the check flag of the given constraint

Parameters
consconstraint
setglobal SCIP settings
checknew value

Definition at line 6693 of file cons.c.

References SCIP_Cons::active, SCIP_Cons::addarraypos, SCIP_Cons::addconssetchg, assert(), SCIP_Cons::check, SCIP_Cons::conshdlr, conshdlrAddCheckcons(), conshdlrDelCheckcons(), NULL, SCIP_Cons::original, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, SCIP_LOCKTYPE_MODEL, SCIP_OKAY, and SCIPconsAddLocks().

Referenced by SCIPsetConsChecked().

◆ SCIPconsSetPropagated()

SCIP_RETCODE SCIPconsSetPropagated ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_Bool propagate )

sets the propagate flag of the given constraint

Parameters
consconstraint
setglobal SCIP settings
propagatenew value

Definition at line 6741 of file cons.c.

References assert(), SCIP_Cons::conshdlr, conshdlrAddPropcons(), conshdlrDelPropcons(), SCIP_Cons::enabled, NULL, propagate, SCIP_Cons::propagate, SCIP_Cons::propenabled, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIP_STAGE_PROBLEM, and SCIPsetGetStage().

Referenced by SCIPsetConsPropagated().

◆ SCIPconsSetLocal()

void SCIPconsSetLocal ( SCIP_CONS * cons,
SCIP_Bool local )

sets the local flag of the given constraint

Parameters
consconstraint
localnew value

Definition at line 6776 of file cons.c.

References assert(), SCIP_Cons::local, NULL, SCIP_Bool, and SCIP_Cons::validdepth.

Referenced by SCIPaddCons(), SCIPaddConsNode(), SCIPprobAddCons(), and SCIPsetConsLocal().

◆ SCIPconsSetModifiable()

void SCIPconsSetModifiable ( SCIP_CONS * cons,
SCIP_Bool modifiable )

sets the modifiable flag of the given constraint

Parameters
consconstraint
modifiablenew value

Definition at line 6789 of file cons.c.

References assert(), SCIP_Cons::modifiable, NULL, and SCIP_Bool.

Referenced by SCIPcopyConflicts(), SCIPcopyConss(), SCIPcopyOrigConss(), and SCIPsetConsModifiable().

◆ SCIPconsSetDynamic()

void SCIPconsSetDynamic ( SCIP_CONS * cons,
SCIP_Bool dynamic )

sets the dynamic flag of the given constraint

Parameters
consconstraint
dynamicnew value

Definition at line 6800 of file cons.c.

References assert(), SCIP_Cons::dynamic, NULL, and SCIP_Bool.

Referenced by SCIPsetConsDynamic().

◆ SCIPconsSetRemovable()

void SCIPconsSetRemovable ( SCIP_CONS * cons,
SCIP_Bool removable )

sets the removable flag of the given constraint

Parameters
consconstraint
removablenew value

Definition at line 6811 of file cons.c.

References assert(), NULL, SCIP_Cons::removable, and SCIP_Bool.

Referenced by SCIPsetConsRemovable().

◆ SCIPconsSetStickingAtNode()

void SCIPconsSetStickingAtNode ( SCIP_CONS * cons,
SCIP_Bool stickingatnode )

sets the stickingatnode flag of the given constraint

Parameters
consconstraint
stickingatnodenew value

Definition at line 6822 of file cons.c.

References assert(), NULL, SCIP_Bool, and SCIP_Cons::stickingatnode.

Referenced by SCIPsetConsStickingAtNode().

◆ SCIPconsSetNamePointer()

void SCIPconsSetNamePointer ( SCIP_CONS * cons,
const char * name )

gives the constraint a new name; ATTENTION: to old pointer is over written that might result in a memory leakage

Parameters
consconstraint
namenew name of constraint

Definition at line 6834 of file cons.c.

References assert(), SCIP_Cons::name, and NULL.

Referenced by SCIPreaderWrite().

◆ SCIPconsGetTransformed()

SCIP_CONS * SCIPconsGetTransformed ( SCIP_CONS * cons)

gets associated transformed constraint of an original constraint, or NULL if no associated transformed constraint exists

Parameters
consconstraint

Definition at line 6848 of file cons.c.

References assert(), SCIP_Cons::original, and SCIP_Cons::transorigcons.

Referenced by SCIPconflictstoreTransform(), SCIPgetDualSolVal(), SCIPgetTransformedCons(), and SCIPgetTransformedConss().

◆ SCIPconsActivate()

SCIP_RETCODE SCIPconsActivate ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_STAT * stat,
int depth,
SCIP_Bool focusnode )

activates constraint or marks constraint to be activated in next update

Parameters
consconstraint
setglobal SCIP settings
statdynamic problem statistics
depthdepth in the tree where the constraint activation takes place, or -1 for global problem
focusnodedoes the constraint activation take place at the focus node?

Definition at line 6858 of file cons.c.

References SCIP_Cons::active, SCIP_Cons::activedepth, assert(), SCIP_Cons::conshdlr, conshdlrActivateCons(), conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), depth, SCIP_Cons::name, SCIP_Conshdlr::name, NULL, SCIP_Cons::original, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPsetDebugMsg, TRUE, SCIP_Cons::update, SCIP_Cons::updateactfocus, SCIP_Cons::updateactivate, SCIP_Cons::updatedeactivate, SCIP_Cons::updatedisable, SCIP_Cons::updateenable, SCIP_Cons::updatefree, and SCIP_Cons::updateobsolete.

Referenced by SCIPconssetchgAddAddedCons(), SCIPconssetchgApply(), SCIPprobAddCons(), and SCIPreoptResetActiveConss().

◆ SCIPconsDeactivate()

SCIP_RETCODE SCIPconsDeactivate ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_STAT * stat )

◆ SCIPconsEnable()

SCIP_RETCODE SCIPconsEnable ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_STAT * stat )

enables constraint's separation, enforcing, and propagation capabilities or marks them to be enabled in next update

Parameters
consconstraint
setglobal SCIP settings
statdynamic problem statistics

Definition at line 6935 of file cons.c.

References SCIP_Cons::active, assert(), SCIP_Cons::conshdlr, conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), conshdlrEnableCons(), SCIP_Cons::enabled, NULL, SCIP_Cons::original, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, TRUE, SCIP_Cons::update, SCIP_Cons::updateactivate, SCIP_Cons::updatedeactivate, SCIP_Cons::updatedisable, and SCIP_Cons::updateenable.

Referenced by SCIPconssetchgUndo(), and SCIPenableCons().

◆ SCIPconsDisable()

SCIP_RETCODE SCIPconsDisable ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_STAT * stat )

disables constraint's separation, enforcing, and propagation capabilities or marks them to be disabled in next update

Parameters
consconstraint
setglobal SCIP settings
statdynamic problem statistics

Definition at line 6968 of file cons.c.

References SCIP_Cons::active, assert(), SCIP_Cons::conshdlr, conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), conshdlrDisableCons(), SCIP_Cons::enabled, NULL, SCIP_Cons::original, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, TRUE, SCIP_Cons::update, SCIP_Cons::updateactivate, SCIP_Cons::updatedisable, and SCIP_Cons::updateenable.

Referenced by SCIPconssetchgApply(), SCIPdisableCons(), and SCIPnodeDelCons().

◆ SCIPconsEnableSeparation()

SCIP_RETCODE SCIPconsEnableSeparation ( SCIP_CONS * cons,
SCIP_SET * set )

enables constraint's separation capabilities or marks them to be enabled in next update

Parameters
consconstraint
setglobal SCIP settings

Definition at line 7002 of file cons.c.

References assert(), SCIP_Cons::conshdlr, conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), conshdlrEnableConsSeparation(), FALSE, NULL, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, SCIP_Cons::sepaenabled, TRUE, SCIP_Cons::update, SCIP_Cons::updatesepadisable, and SCIP_Cons::updatesepaenable.

Referenced by SCIPenableConsSeparation().

◆ SCIPconsDisableSeparation()

SCIP_RETCODE SCIPconsDisableSeparation ( SCIP_CONS * cons,
SCIP_SET * set )

disables constraint's separation capabilities or marks them to be disabled in next update

Parameters
consconstraint
setglobal SCIP settings

Definition at line 7032 of file cons.c.

References assert(), SCIP_Cons::conshdlr, conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), conshdlrDisableConsSeparation(), FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIP_Cons::sepaenabled, TRUE, SCIP_Cons::update, SCIP_Cons::updatesepadisable, and SCIP_Cons::updatesepaenable.

Referenced by SCIPdisableConsSeparation().

◆ SCIPconsEnablePropagation()

SCIP_RETCODE SCIPconsEnablePropagation ( SCIP_CONS * cons,
SCIP_SET * set )

enables constraint's propagation capabilities or marks them to be enabled in next update

Parameters
consconstraint
setglobal SCIP settings

Definition at line 7060 of file cons.c.

References assert(), SCIP_Cons::conshdlr, conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), conshdlrEnableConsPropagation(), FALSE, NULL, SCIP_Cons::propenabled, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, TRUE, SCIP_Cons::update, SCIP_Cons::updatepropdisable, and SCIP_Cons::updatepropenable.

Referenced by SCIPenableConsPropagation().

◆ SCIPconsDisablePropagation()

SCIP_RETCODE SCIPconsDisablePropagation ( SCIP_CONS * cons,
SCIP_SET * set )

disables constraint's propagation capabilities or marks them to be disabled in next update

Parameters
consconstraint
setglobal SCIP settings

Definition at line 7090 of file cons.c.

References assert(), SCIP_Cons::conshdlr, conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), conshdlrDisableConsPropagation(), FALSE, NULL, SCIP_Cons::propenabled, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, TRUE, SCIP_Cons::update, SCIP_Cons::updatepropdisable, and SCIP_Cons::updatepropenable.

Referenced by SCIPdisableConsPropagation().

◆ SCIPconsMarkConflict()

void SCIPconsMarkConflict ( SCIP_CONS * cons)

marks the constraint to be a conflict

Parameters
consconstraint

Definition at line 7120 of file cons.c.

References assert(), SCIP_Cons::conflict, NULL, and TRUE.

Referenced by createAndAddProofcons(), SCIPaddConflict(), SCIPconflictstoreAddConflict(), SCIPconflictstoreAddDualraycons(), and SCIPconflictstoreAddDualsolcons().

◆ SCIPconsMarkPropagate()

SCIP_RETCODE SCIPconsMarkPropagate ( SCIP_CONS * cons,
SCIP_SET * set )

◆ SCIPconsUnmarkPropagate()

SCIP_RETCODE SCIPconsUnmarkPropagate ( SCIP_CONS * cons,
SCIP_SET * set )

◆ SCIPconsAddAge()

SCIP_RETCODE SCIPconsAddAge ( SCIP_CONS * cons,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_PROB * prob,
SCIP_Real deltaage,
SCIP_REOPT * reopt )

adds given value to age of constraint, but age can never become negative; should be called

  • in constraint separation, if no cut was found for this constraint,
  • in constraint enforcing, if constraint was feasible, and
  • in constraint propagation, if no domain reduction was deduced; if it's age exceeds the constraint age limit, makes constraint obsolete or marks constraint to be made obsolete in next update
Parameters
consconstraint
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
probproblem data
deltaagevalue to add to the constraint's age
reoptreoptimization data

Definition at line 7197 of file cons.c.

References SCIP_Cons::age, assert(), SCIP_Cons::check, consExceedsAgelimit(), consExceedsObsoleteage(), SCIP_Cons::conshdlr, conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), conshdlrMarkConsObsolete(), MAX, SCIP_Cons::name, SCIP_Conshdlr::name, NULL, SCIP_Cons::obsolete, SCIP_Cons::original, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, SCIP_Real, SCIP_STAGE_PRESOLVING, SCIPconsDelete(), SCIPsetDebugMsg, TRUE, SCIP_Cons::update, SCIP_Cons::updateactivate, and SCIP_Cons::updateobsolete.

Referenced by SCIPaddConsAge(), and SCIPconsIncAge().

◆ SCIPconsIncAge()

SCIP_RETCODE SCIPconsIncAge ( SCIP_CONS * cons,
BMS_BLKMEM * blkmem,
SCIP_SET * set,
SCIP_STAT * stat,
SCIP_PROB * prob,
SCIP_REOPT * reopt )

increases age of constraint by 1.0; should be called

  • in constraint separation, if no cut was found for this constraint,
  • in constraint enforcing, if constraint was feasible, and
  • in constraint propagation, if no domain reduction was deduced; if it's age exceeds the constraint age limit, makes constraint obsolete or marks constraint to be made obsolete in next update
Parameters
consconstraint
blkmemblock memory
setglobal SCIP settings
statdynamic problem statistics
probproblem data
reoptreoptimization data

Definition at line 7256 of file cons.c.

References SCIP_CALL, SCIP_OKAY, and SCIPconsAddAge().

Referenced by SCIPincConsAge().

◆ SCIPconsResetAge()

SCIP_RETCODE SCIPconsResetAge ( SCIP_CONS * cons,
SCIP_SET * set )

resets age of constraint to zero; should be called

  • in constraint separation, if a cut was found for this constraint,
  • in constraint enforcing, if the constraint was violated, and
  • in constraint propagation, if a domain reduction was deduced; if it was obsolete, makes constraint useful again or marks constraint to be made useful again in next update
Parameters
consconstraint
setglobal SCIP settings

Definition at line 7277 of file cons.c.

References SCIP_Cons::age, assert(), SCIP_Cons::conshdlr, conshdlrAddUpdateCons(), conshdlrAreUpdatesDelayed(), conshdlrMarkConsUseful(), conshdlrUpdateAgeresetavg(), SCIP_Cons::name, SCIP_Conshdlr::name, NULL, SCIP_Cons::obsolete, SCIP_Cons::original, SCIP_Cons::scip, SCIP_CALL, SCIP_OKAY, SCIPsetDebugMsg, TRUE, SCIP_Cons::update, SCIP_Cons::updateactivate, and SCIP_Cons::updateobsolete.

Referenced by SCIPprobInitSolve(), and SCIPresetConsAge().

◆ SCIPconsResolvePropagation()

SCIP_RETCODE SCIPconsResolvePropagation ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_VAR * infervar,
int inferinfo,
SCIP_BOUNDTYPE inferboundtype,
SCIP_BDCHGIDX * bdchgidx,
SCIP_Real relaxedbd,
SCIP_RESULT * result )

resolves the given conflicting bound, that was deduced by the given constraint, by putting all "reason" bounds leading to the deduction into the conflict queue with calls to SCIPaddConflictLb(), SCIPaddConflictUb(), SCIPaddConflictBd(), SCIPaddConflictRelaxedLb(), SCIPaddConflictRelaxedUb(), SCIPaddConflictRelaxedBd(), or SCIPaddConflictBinvar();

Note
it is sufficient to explain the relaxed bound change
Parameters
consconstraint that deduced the assignment
setglobal SCIP settings
infervarvariable whose bound was deduced by the constraint
inferinfouser inference information attached to the bound change
inferboundtypebound that was deduced (lower or upper bound)
bdchgidxbound change index, representing the point of time where change took place
relaxedbdthe relaxed bound
resultpointer to store the result of the callback method

Definition at line 7318 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, SCIP_Conshdlr::nrespropcalls, NULL, SCIP_Conshdlr::resproptime, result, SCIP_Cons::scip, SCIP_BOUNDTYPE_LOWER, SCIP_BOUNDTYPE_UPPER, SCIP_CALL, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_PLUGINNOTFOUND, SCIP_Real, SCIP_SUCCESS, SCIPclockStart(), SCIPclockStop(), SCIPerrorMessage, SCIPgetVarLbAtIndex(), SCIPgetVarUbAtIndex(), SCIPvarGetLbGlobal(), SCIPvarGetUbGlobal(), and TRUE.

Referenced by conflictResolveBound().

◆ SCIPconsAddLocks()

SCIP_RETCODE SCIPconsAddLocks ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_LOCKTYPE locktype,
int nlockspos,
int nlocksneg )

adds given values to lock status of the constraint and updates the locks of the given locktype of the involved variables

Parameters
consconstraint
setglobal SCIP settings
locktypetype of variable locks
nlocksposincrease in number of rounding locks for constraint
nlocksnegincrease in number of rounding locks for constraint's negation

Definition at line 7378 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Cons::nlocksneg, SCIP_Cons::nlockspos, NLOCKTYPES, NULL, SCIP_Cons::scip, SCIP_CALL, and SCIP_OKAY.

Referenced by delPosConflict(), delPosDualray(), delPosDualsol(), SCIPaddConsLocksType(), SCIPconflictstoreAddConflict(), SCIPconflictstoreAddDualraycons(), SCIPconflictstoreAddDualsolcons(), SCIPconsSetChecked(), SCIPprobAddCons(), and SCIPprobDelCons().

◆ SCIPconsCheck()

SCIP_RETCODE SCIPconsCheck ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_SOL * sol,
SCIP_Bool checkintegrality,
SCIP_Bool checklprows,
SCIP_Bool printreason,
SCIP_RESULT * result )

checks single constraint for feasibility of the given solution

Parameters
consconstraint to check
setglobal SCIP settings
solprimal CIP solution
checkintegralityHas integrality to be checked?
checklprowsDo constraints represented by rows in the current LP have to be checked?
printreasonShould the reason for the violation be printed?
resultpointer to store the result of the callback method

Definition at line 7424 of file cons.c.

References assert(), SCIP_Cons::conshdlr, FALSE, SCIP_Cons::name, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_INVALIDRESULT, SCIP_OKAY, SCIPerrorMessage, SCIPsetDebugMsg, and sol.

Referenced by SCIPcheckCons(), and SCIPsolCheckOrig().

◆ SCIPconsEnfops()

SCIP_RETCODE SCIPconsEnfops ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_Bool solinfeasible,
SCIP_Bool objinfeasible,
SCIP_RESULT * result )

enforces single constraint for a given pseudo solution

Parameters
consconstraint to enforce
setglobal SCIP settings
solinfeasiblewas the solution already declared infeasible by a constraint handler?
objinfeasibleis the solution infeasible anyway due to violating lower objective bound?
resultpointer to store the result of the callback method

Definition at line 7462 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_Bool, SCIP_BRANCHED, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DIDNOTRUN, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SOLVELP, SCIPerrorMessage, and SCIPsetDebugMsg.

Referenced by SCIPenfopsCons().

◆ SCIPconsEnfolp()

SCIP_RETCODE SCIPconsEnfolp ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_Bool solinfeasible,
SCIP_RESULT * result )

enforces single constraint for a given LP solution

Parameters
consconstraint to enforce
setglobal SCIP settings
solinfeasiblewas the solution already declared infeasible by a constraint handler?
resultpointer to store the result of the callback method

Definition at line 7506 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_Bool, SCIP_BRANCHED, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPerrorMessage, and SCIPsetDebugMsg.

Referenced by SCIPenfolpCons().

◆ SCIPconsEnforelax()

SCIP_RETCODE SCIPconsEnforelax ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_SOL * sol,
SCIP_Bool solinfeasible,
SCIP_RESULT * result )

enforces single constraint for a given relaxation solution

Parameters
consconstraint to enforce
setglobal SCIP settings
solsolution to be enforced
solinfeasiblewas the solution already declared infeasible by a constraint handler?
resultpointer to store the result of the callback method

Definition at line 7548 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_Bool, SCIP_BRANCHED, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_FEASIBLE, SCIP_INFEASIBLE, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPdebugMessage, SCIPerrorMessage, and sol.

Referenced by SCIPenforelaxCons().

◆ SCIPconsInitlp()

SCIP_RETCODE SCIPconsInitlp ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_Bool * infeasible )

calls LP initialization method for single constraint

Parameters
consconstraint to initialize
setglobal SCIP settings
infeasiblepointer to store whether infeasibility was detected while building the LP

Definition at line 7592 of file cons.c.

References assert(), SCIP_Cons::conshdlr, NULL, SCIP_Cons::scip, SCIP_Bool, SCIP_CALL, and SCIP_OKAY.

Referenced by SCIPinitlpCons().

◆ SCIPconsSepalp()

SCIP_RETCODE SCIPconsSepalp ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_RESULT * result )

calls separation method of single constraint for LP solution

Parameters
consconstraint to separate
setglobal SCIP settings
resultpointer to store the result of the separation call

Definition at line 7618 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_NEWROUND, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPerrorMessage, and SCIPsetDebugMsg.

Referenced by SCIPsepalpCons().

◆ SCIPconsSepasol()

SCIP_RETCODE SCIPconsSepasol ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_SOL * sol,
SCIP_RESULT * result )

calls separation method of single constraint for given primal solution

Parameters
consconstraint to separate
setglobal SCIP settings
solprimal solution that should be separated
resultpointer to store the result of the separation call

Definition at line 7659 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_NEWROUND, SCIP_OKAY, SCIP_REDUCEDDOM, SCIP_SEPARATED, SCIPerrorMessage, SCIPsetDebugMsg, and sol.

Referenced by SCIPsepasolCons().

◆ SCIPconsProp()

SCIP_RETCODE SCIPconsProp ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_PROPTIMING proptiming,
SCIP_RESULT * result )

calls domain propagation method of single constraint

Parameters
consconstraint to propagate
setglobal SCIP settings
proptimingcurrent point in the node solving loop
resultpointer to store the result of the callback method

Definition at line 7702 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_CALL, SCIP_CONSADDED, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_REDUCEDDOM, SCIPerrorMessage, and SCIPsetDebugMsg.

Referenced by SCIPpropCons().

◆ SCIPconsResprop()

SCIP_RETCODE SCIPconsResprop ( SCIP_CONS * cons,
SCIP_SET * set,
SCIP_VAR * infervar,
int inferinfo,
SCIP_BOUNDTYPE boundtype,
SCIP_BDCHGIDX * bdchgidx,
SCIP_Real relaxedbd,
SCIP_RESULT * result )

resolves propagation conflict of single constraint

Parameters
consconstraint to resolve conflict for
setglobal SCIP settings
infervarthe conflict variable whose bound change has to be resolved
inferinfothe user information passed to the corresponding SCIPinferVarLbCons() or SCIPinferVarUbCons() call
boundtypethe type of the changed bound (lower or upper bound)
bdchgidxthe index of the bound change, representing the point of time where the change took place
relaxedbdthe relaxed bound which is sufficient to be explained
resultpointer to store the result of the callback method

Definition at line 7742 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_CALL, SCIP_DIDNOTFIND, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_Real, SCIP_SUCCESS, SCIPerrorMessage, and SCIPsetDebugMsg.

Referenced by SCIPrespropCons().

◆ SCIPconsPresol()

SCIP_RETCODE SCIPconsPresol ( SCIP_CONS * cons,
SCIP_SET * set,
int nrounds,
SCIP_PRESOLTIMING timing,
int nnewfixedvars,
int nnewaggrvars,
int nnewchgvartypes,
int nnewchgbds,
int nnewholes,
int nnewdelconss,
int nnewaddconss,
int nnewupgdconss,
int nnewchgcoefs,
int nnewchgsides,
int * nfixedvars,
int * naggrvars,
int * nchgvartypes,
int * nchgbds,
int * naddholes,
int * ndelconss,
int * naddconss,
int * nupgdconss,
int * nchgcoefs,
int * nchgsides,
SCIP_RESULT * result )

presolves single constraint

Parameters
consconstraint to presolve
setglobal SCIP settings
nroundsnumber of presolving rounds already done
timingcurrent presolving timing
nnewfixedvarsnumber of variables fixed since the last call to the presolving method
nnewaggrvarsnumber of variables aggregated since the last call to the presolving method
nnewchgvartypesnumber of variable type changes since the last call to the presolving method
nnewchgbdsnumber of variable bounds tightened since the last call to the presolving method
nnewholesnumber of domain holes added since the last call to the presolving method
nnewdelconssnumber of deleted constraints since the last call to the presolving method
nnewaddconssnumber of added constraints since the last call to the presolving method
nnewupgdconssnumber of upgraded constraints since the last call to the presolving method
nnewchgcoefsnumber of changed coefficients since the last call to the presolving method
nnewchgsidesnumber of changed left or right hand sides since the last call to the presolving method
nfixedvarspointer to count total number of variables fixed of all presolvers
naggrvarspointer to count total number of variables aggregated of all presolvers
nchgvartypespointer to count total number of variable type changes of all presolvers
nchgbdspointer to count total number of variable bounds tightened of all presolvers
naddholespointer to count total number of domain holes added of all presolvers
ndelconsspointer to count total number of deleted constraints of all presolvers
naddconsspointer to count total number of added constraints of all presolvers
nupgdconsspointer to count total number of upgraded constraints of all presolvers
nchgcoefspointer to count total number of changed coefficients of all presolvers
nchgsidespointer to count total number of changed left/right hand sides of all presolvers
resultpointer to store the result of the callback method

Definition at line 7784 of file cons.c.

References assert(), SCIP_Cons::conshdlr, SCIP_Conshdlr::name, NULL, result, SCIP_Cons::scip, SCIP_CALL, SCIP_CUTOFF, SCIP_DELAYED, SCIP_DIDNOTFIND, SCIP_DIDNOTRUN, SCIP_INVALIDRESULT, SCIP_OKAY, SCIP_SUCCESS, SCIP_UNBOUNDED, SCIPerrorMessage, and SCIPsetDebugMsg.

Referenced by SCIPpresolCons().

◆ SCIPconsActive()

SCIP_RETCODE SCIPconsActive ( SCIP_CONS * cons,
SCIP_SET * set )

calls constraint activation notification method of single constraint

Parameters
consconstraint to notify
setglobal SCIP settings

Definition at line 7858 of file cons.c.

References assert(), SCIP_Cons::conshdlr, NULL, SCIP_Cons::scip, SCIP_CALL, and SCIP_OKAY.

Referenced by SCIPactiveCons().

◆ SCIPconsDeactive()

SCIP_RETCODE SCIPconsDeactive ( SCIP_CONS * cons,
SCIP_SET * set )

calls constraint deactivation notification method of single constraint

Parameters
consconstraint to notify
setglobal SCIP settings

Definition at line 7882 of file cons.c.

References assert(), SCIP_Cons::conshdlr, NULL, SCIP_Cons::scip, SCIP_CALL, and SCIP_OKAY.

Referenced by SCIPdeactiveCons().

◆ SCIP_DECL_HASHGETKEY()

SCIP_DECL_HASHGETKEY ( SCIPhashGetKeyCons )

gets the key (i.e. the name) of the given constraint

Definition at line 7912 of file cons.c.

References assert(), SCIP_Cons::name, and NULL.

◆ ensurePropagationStorage()

SCIP_RETCODE ensurePropagationStorage ( SCIP_SET * set,
SCIP_CONSHDLR * conshdlr,
int num )
static

ensures size of storage for propagable constraints with a minimum size of num

Parameters
setglobal SCIP settings
conshdlrconstraint handler
numminimum number of entries to store

Definition at line 7927 of file cons.c.

References assert(), BMSreallocMemoryArray, NULL, SCIP_ALLOC, SCIP_OKAY, SCIPsetCalcMemGrowSize(), SCIP_Conshdlr::storedpropconss, and SCIP_Conshdlr::storedpropconsssize.

Referenced by SCIPconshdlrsStorePropagationStatus().

◆ SCIPconshdlrsStorePropagationStatus()

SCIP_RETCODE SCIPconshdlrsStorePropagationStatus ( SCIP_SET * set,
SCIP_CONSHDLR ** conshdlrs,
int nconshdlrs )

stores all constraints marked for propagation away when probing is started

Parameters
setglobal SCIP settings
conshdlrsall constraint handlers
nconshdlrsnumber of contraint handlers

Definition at line 7951 of file cons.c.

References assert(), BMScopyMemoryArray, c, ensurePropagationStorage(), SCIP_Conshdlr::lastpropdomchgcount, SCIP_Conshdlr::nmarkedpropconss, NULL, SCIP_Conshdlr::propconss, SCIP_CALL, SCIP_OKAY, SCIPconsCapture(), SCIP_Conshdlr::storednmarkedpropconss, SCIP_Conshdlr::storedpropconss, and SCIP_Conshdlr::storedpropdomchgcount.

Referenced by SCIPtreeStartProbing().

◆ SCIPconshdlrsResetPropagationStatus()

SCIP_RETCODE SCIPconshdlrsResetPropagationStatus ( SCIP_SET * set,
BMS_BLKMEM * blkmem,
SCIP_CONSHDLR ** conshdlrs,
int nconshdlrs )

reset all constraints marked for propagation when probing was finished

Parameters
setglobal SCIP settings
blkmemblock memory
conshdlrsall constraint handlers
nconshdlrsnumber of contraint handlers

Definition at line 7991 of file cons.c.

References assert(), c, conshdlrAreUpdatesDelayed(), SCIP_Cons::enabled, SCIP_Conshdlr::lastpropdomchgcount, SCIP_Conshdlr::nmarkedpropconss, NULL, SCIP_Conshdlr::nupdateconss, SCIP_Cons::propagate, SCIP_Conshdlr::propconss, SCIP_Cons::propenabled, SCIP_CALL, SCIP_OKAY, SCIPconsMarkPropagate(), SCIPconsRelease(), SCIPconsUnmarkPropagate(), SCIP_Conshdlr::storednmarkedpropconss, SCIP_Conshdlr::storedpropconss, and SCIP_Conshdlr::storedpropdomchgcount.

Referenced by SCIPtreeEndProbing().