dpborderinterns.h
Go to the documentation of this file.
17 * @brief Dynamic programming internals for Steiner tree (sub-) problems with small number of terminals
24 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
85 STP_Vectype(int) global_partstarts; /**< CSR like starts of partitions in array "global_partitions" */
167 extern SCIP_Real dpborder_partGetConnectionCost(const DPBORDER*, const DPBPART*, const int*, int);
SCIP_Real dpborder_partGetConnectionCost(const DPBORDER *, const DPBPART *, const int *, int)
Definition: dpborder_util.c:389
Definition: graphdefs.h:184
Definition: struct_scip.h:59
SCIP_RETCODE dpborder_coreUpdateOrdering(SCIP *, const GRAPH *, DPBORDER *)
Definition: dpborder_core.c:876
uint64_t maxnpartitions
Definition: dpborderinterns.h:45
DPB_Ptype * partchars
Definition: dpborderinterns.h:65
static DPBLEVEL * dpborder_getPredLevel(const DPBORDER *dpborder)
Definition: dpborderinterns.h:151
SCIP_RETCODE dpborder_dpblevelInit(SCIP *, DPBLEVEL **)
Definition: dpborder_base.c:149
includes various files containing graph methods used for Steiner tree problems
static DPBLEVEL * dpborder_getTopLevel(const DPBORDER *dpborder)
Definition: dpborderinterns.h:137
int maxbordersize
Definition: dpborderinterns.h:46
static int dpborder_getTopDelimiter(const DPBORDER *dpborder)
Definition: dpborderinterns.h:121
struct dynamic_programming_border_nodes_sequence DPBSEQUENCE
header only, simple implementation of an STL like vector
int dpborder_partGetIdxNewExclusive(SCIP *, const DPBPART *, DPBORDER *)
Definition: dpborder_util.c:633
DPB_Ptype * global_partitions
Definition: dpborderinterns.h:84
struct dynamic_programming_border_partition DPBPART
void dpborder_dpbsequenceFree(SCIP *, DPBSEQUENCE **)
Definition: dpborder_base.c:134
SCIP_RETCODE dpborder_coreComputeOrderingSimple(SCIP *, const GRAPH *, DPBORDER *)
Definition: dpborder_core.c:863
SCIP_RETCODE dpborder_dpbsequenceInit(SCIP *, const GRAPH *, DPBSEQUENCE **)
Definition: dpborder_base.c:97
const DPBPART const DPBORDER *SCIP_Bool dpborder_partIsValid(const DPBPART *)
Definition: dpborder_util.c:226
int dpborder_partGetIdxNew(SCIP *, const DPBPART *, const int *, int, DPBORDER *)
Definition: dpborder_util.c:435
Definition: dpborder_hashmap.h:86
STP_Vectype(int) dpborder_partGetCandstarts(SCIP *
void dpborder_markSolNodes(const DPBORDER *, STP_Bool *RESTRICT)
SCIP_RETCODE dpborder_coreSolve(SCIP *, const GRAPH *, DPBORDER *, SCIP_Bool *)
Definition: dpborder_core.c:943
SCIP_Bool * nodes_isBorder
Definition: dpborderinterns.h:78
static int dpborder_getDelimiter(const DPBORDER *dpborder, int iteration)
Definition: dpborderinterns.h:106
Special hashmap for DP-border Steiner tree algorithm.
SCIP_Real * borderchardists
Definition: dpborderinterns.h:81
SCIP_Bool exnodeIsTerm
Definition: dpborderinterns.h:58
void dpborder_dpbsequenceCopy(const DPBSEQUENCE *, DPBSEQUENCE *)
Definition: dpborder_base.c:119
int * nodessquence
Definition: dpborderinterns.h:44
int global_npartitions
Definition: dpborderinterns.h:90
Definition: dpborderinterns.h:73
int dpborder_partglobalGetCard(int, int, const DPBORDER *)
Definition: dpborder_util.c:363
int global_optposition
Definition: dpborderinterns.h:92
SCIP callable library.
struct dynamic_programming_border_level DPBLEVEL