#include "scip/def.h"#include "scip/type_retcode.h"#include "scip/type_scip.h"#include "scip/type_var.h"#include "scip/type_event.h"Go to the source code of this file.
Functions | |
| SCIP_RETCODE | SCIPorbitalReductionGetStatistics (SCIP *scip, SCIP_ORBITALREDDATA *orbireddata, int *nred, int *ncutoff) |
| SCIP_RETCODE | SCIPorbitalReductionPrintStatistics (SCIP *scip, SCIP_ORBITALREDDATA *orbireddata) |
| SCIP_RETCODE | SCIPorbitalReductionPropagate (SCIP *scip, SCIP_ORBITALREDDATA *orbireddata, SCIP_Bool *infeasible, int *nred, SCIP_Bool *didrun) |
| SCIP_RETCODE | SCIPorbitalReductionAddComponent (SCIP *scip, SCIP_ORBITALREDDATA *orbireddata, SCIP_VAR **permvars, int npermvars, int **perms, int nperms, SCIP_Bool *success) |
| SCIP_RETCODE | SCIPorbitalReductionReset (SCIP *scip, SCIP_ORBITALREDDATA *orbireddata) |
| SCIP_RETCODE | SCIPorbitalReductionFree (SCIP *scip, SCIP_ORBITALREDDATA **orbireddata) |
| SCIP_RETCODE | SCIPincludeOrbitalReduction (SCIP *scip, SCIP_ORBITALREDDATA **orbireddata, SCIP_EVENTHDLR *shadowtreeeventhdlr) |
| typedef struct SCIP_OrbitalReductionData SCIP_ORBITALREDDATA |
data for orbital reduction propagator
Definition at line 52 of file symmetry_orbital.h.
| SCIP_RETCODE SCIPorbitalReductionGetStatistics | ( | SCIP * | scip, |
| SCIP_ORBITALREDDATA * | orbireddata, | ||
| int * | nred, | ||
| int * | ncutoff ) |
prints orbital reduction data
| scip | SCIP data structure |
| orbireddata | orbital reduction data structure |
| nred | pointer to store the total number of reductions applied |
| ncutoff | pointer to store the total number of cutoffs applied |
Definition at line 1534 of file symmetry_orbital.c.
References assert(), NULL, and SCIP_OKAY.
Referenced by SCIP_DECL_TABLECOLLECT(), and SCIP_DECL_TABLEOUTPUT().
| SCIP_RETCODE SCIPorbitalReductionPrintStatistics | ( | SCIP * | scip, |
| SCIP_ORBITALREDDATA * | orbireddata ) |
prints orbital reduction data
Definition at line 1551 of file symmetry_orbital.c.
References assert(), i, NULL, SCIP_OKAY, SCIP_VERBLEVEL_HIGH, and SCIPverbMessage().
Referenced by SCIPdisplaySymmetryStatistics().
| SCIP_RETCODE SCIPorbitalReductionPropagate | ( | SCIP * | scip, |
| SCIP_ORBITALREDDATA * | orbireddata, | ||
| SCIP_Bool * | infeasible, | ||
| int * | nred, | ||
| SCIP_Bool * | didrun ) |
propagates orbital reduction
| scip | SCIP data structure |
| orbireddata | orbital reduction data structure |
| infeasible | pointer to store whether infeasibility is found |
| nred | pointer to store the number of domain reductions |
| didrun | a global pointer maintaining if any symmetry propagator has run only set this to TRUE when a reduction is found, never set to FALSE |
Definition at line 1582 of file symmetry_orbital.c.
References assert(), c, FALSE, OrbitalReductionComponentData::nperms, NULL, orbitalReductionPropagateComponent(), SCIP_Bool, SCIP_CALL, SCIP_OKAY, SCIPgetShadowTree(), SCIPinProbing(), SCIPinRepropagation(), and TRUE.
Referenced by propagateSymmetry().
| SCIP_RETCODE SCIPorbitalReductionAddComponent | ( | SCIP * | scip, |
| SCIP_ORBITALREDDATA * | orbireddata, | ||
| SCIP_VAR ** | permvars, | ||
| int | npermvars, | ||
| int ** | perms, | ||
| int | nperms, | ||
| SCIP_Bool * | success ) |
adds component for orbital reduction
| scip | SCIP data structure |
| orbireddata | orbital reduction data structure |
| permvars | variable array of the permutation |
| npermvars | number of variables in that array |
| perms | permutations in the component |
| nperms | number of permutations in the component |
| success | to store whether the component is successfully added |
Definition at line 1647 of file symmetry_orbital.c.
References addComponent(), assert(), NULL, SCIP_Bool, SCIP_CALL, SCIP_OKAY, and SCIPisTransformed().
Referenced by tryAddOrbitalRedLexRed().
| SCIP_RETCODE SCIPorbitalReductionReset | ( | SCIP * | scip, |
| SCIP_ORBITALREDDATA * | orbireddata ) |
resets orbital reduction data structure (clears all components)
Definition at line 1675 of file symmetry_orbital.c.
References assert(), freeComponent(), NULL, SCIP_CALL, SCIP_OKAY, and SCIPfreeBlockMemoryArrayNull.
Referenced by resetDynamicSymmetryHandling(), and SCIPorbitalReductionFree().
| SCIP_RETCODE SCIPorbitalReductionFree | ( | SCIP * | scip, |
| SCIP_ORBITALREDDATA ** | orbireddata ) |
frees orbital reduction data
Definition at line 1702 of file symmetry_orbital.c.
References assert(), NULL, SCIP_CALL, SCIP_OKAY, SCIPfreeBlockMemory, and SCIPorbitalReductionReset().
Referenced by SCIP_DECL_PROPFREE().
| SCIP_RETCODE SCIPincludeOrbitalReduction | ( | SCIP * | scip, |
| SCIP_ORBITALREDDATA ** | orbireddata, | ||
| SCIP_EVENTHDLR * | shadowtreeeventhdlr ) |
initializes structures needed for orbital reduction
This is only done exactly once.
| scip | SCIP data structure |
| orbireddata | pointer to orbital reduction data structure to populate |
| shadowtreeeventhdlr | pointer to the shadow tree eventhdlr |
Definition at line 1722 of file symmetry_orbital.c.
References assert(), EVENTHDLR_SYMMETRY_DESC, EVENTHDLR_SYMMETRY_NAME, FALSE, NULL, SCIP_CALL, SCIP_OKAY, SCIPallocBlockMemory, SCIPcheckStage, SCIPincludeEventhdlrBasic(), and TRUE.
Referenced by SCIPincludePropSymmetry().