misc_stp.h
Go to the documentation of this file.
20 * This file includes miscellaneous methods used for solving Steiner problems. For more details see \ref STP_MISC page.
23 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
60 /** Voronoi list node structure storing distance, incoming edge,base and pointer to next list node */
180 /** finds minimum weight chain between node 'start' and distinct root node (for maximum-weight connected subgraph) **/
251 /** deletes the root of the paring heap, concomitantly storing its data and key in '*element' and '*key' respectively */
261 /** links nodes 'root1' and 'root2' together, roots the resulting tree at root1 and sets root2 to NULL */
Definition: misc_stp.h:88
SCIP_RETCODE SCIPStpunionfindInit(SCIP *scip, UF *uf, int length)
Definition: misc_stp.c:817
struct link_cut_node LCNODE
void SCIPStpunionfindFreeMembers(SCIP *scip, UF *uf)
Definition: misc_stp.c:955
Definition: struct_scip.h:59
int SCIPlinkcuttreeFindMax(const LCNODE *tree, const SCIP_Real *cost, int v)
Definition: misc_stp.c:533
SCIP_Real SCIPlinkcuttreeFindMaxChain(SCIP *scip, const LCNODE *tree, const SCIP_Real *edgecosts, const SCIP_Real *prizes, const int *heads, const int *nonTermDeg, const SCIP_Bool *nodeIsBlocked, int start, int *first, int *last)
Definition: misc_stp.c:445
SCIP_Real SCIPlinkcuttreeFindMinChainMw(SCIP *scip, const LCNODE *tree, const SCIP_Real *nodeweight, const int *heads, const int *stdeg, const SCIP_Bool *nodeIsBlocked, int start, int *first, int *last)
Definition: misc_stp.c:381
Definition: misc_stp.h:78
void SCIPpairheapMeldheaps(SCIP *scip, PHNODE **root1, PHNODE **root2, int *sizeroot1, int *sizeroot2)
Definition: misc_stp.c:708
SCIP_RETCODE SCIPpairheapDeletemin(SCIP *scip, int *element, SCIP_Real *key, PHNODE **root, int *size)
Definition: misc_stp.c:671
Definition: misc_stp.h:70
Definition: misc_stp.h:61
SCIP_Real miscstp_maxReal(const SCIP_Real *realarr, unsigned nreals)
Definition: misc_stp.c:142
void SCIPlinkcuttreeEvert(LCNODE *RESTRICT tree, int root_new)
Definition: misc_stp.c:559
Definition: misc_stp.h:96
struct Vnoi_List_Node VLIST
SCIP_RETCODE SCIPintListNodeAppendCopy(SCIP *scip, IDX **node1, IDX *node2, SCIP_Bool *conflict)
Definition: misc_stp.c:197
Definition: graph_load.c:93
SCIP_RETCODE SCIPintListNodeInsert(SCIP *scip, IDX **node, int nodeval)
Definition: misc_stp.c:180
int GNODECmpByDist(void *first_arg, void *second_arg)
void SCIPlinkcuttreeLink(LCNODE *tree, int v, int w, int edge)
Definition: misc_stp.c:357
PHNODE * SCIPpairheapMergeheaps(SCIP *scip, PHNODE *root1, PHNODE *root2)
Definition: misc_stp.c:592
struct Graph_Node GNODE
void SCIPStpunionfindUnion(UF *uf, int p, int q, SCIP_Bool compress)
Definition: misc_stp.c:912
SCIP_RETCODE SCIPpairheapInsert(SCIP *scip, PHNODE **root, PHNODE *pheapelems, int element, SCIP_Real key, int *size)
Definition: misc_stp.c:636
struct PHeap_Node PHNODE
SCIP_Bool SCIPStpunionfindIsClear(SCIP *scip, const UF *uf)
Definition: misc_stp.c:861
Definition: misc_stp.h:53
SCIP_RETCODE SCIPpairheapBuffarr(SCIP *scip, const PHNODE *root, int size, int **elements)
Definition: misc_stp.c:761
Definition: objbenders.h:33
struct UnionFind_Structure UF
SCIP callable library.
struct Int_List_Node IDX