graph_edge.c
Go to the documentation of this file.
24 /*---+----1----+----2----+----3----+----4----+----5----+----6----+----7----+----8----+----9----+----0----+----1----+----2*/
248 SCIP_CALL( SCIPintListNodeAppendCopy(scip, &(g->ancestors[Edge_anti(newedge)]), ancestorsBack, NULL) );
249 SCIP_CALL( SCIPintListNodeAppendCopy(scip, &(g->ancestors[Edge_anti(newedge)]), revancestorsFor, NULL) );
252 SCIP_CALL( graph_pseudoAncestors_appendCopySingToEdge(scip, newedge, ancestorsBackward, TRUE, g, conflict) );
255 SCIP_CALL( graph_pseudoAncestors_appendCopySingToEdge(scip, newedge, ancestorsForward, TRUE, g, conflict) );
264 SCIP_CALL( SCIPintListNodeAppendCopy(scip, &(g->ancestors[edge_even]), g->pcancestors[ancestornode], NULL) );
267 SCIP_CALL( graph_pseudoAncestors_appendCopyNodeToEdge(scip, newedge, ancestornode, TRUE, g, conflict) );
363 graph_edge_add(scip, subgraph, newtail, newhead, orggraph->cost[e], orggraph->cost[flipedge(e)]);
Definition: misc_stp.h:88
void graph_edge_delPseudoAncestors(SCIP *, int, GRAPH *)
Definition: graph_history.c:1128
void graph_edge_delFull(SCIP *scip, GRAPH *g, int e, SCIP_Bool freeancestors)
Definition: graph_edge.c:418
Definition: graphdefs.h:184
Definition: struct_scip.h:59
SCIP_Bool SCIPisGE(SCIP *scip, SCIP_Real val1, SCIP_Real val2)
Definition: scip_numerics.c:490
SCIP_RETCODE graph_pseudoAncestors_appendCopyNodeToEdge(SCIP *, int, int, SCIP_Bool, GRAPH *, SCIP_Bool *)
Definition: graph_history.c:1380
void graph_dcsr_deleteEdgeBi(SCIP *, DCSR *, int)
Definition: graph_util.c:1894
includes various files containing graph methods used for Steiner tree problems
SCIP_Bool SCIPisEQ(SCIP *scip, SCIP_Real val1, SCIP_Real val2)
Definition: scip_numerics.c:438
SCIP_RETCODE SCIPintListNodeAppendCopy(SCIP *scip, IDX **node1, IDX *node2, SCIP_Bool *conflict)
Definition: misc_stp.c:197
SCIP_RETCODE graph_pseudoAncestors_appendCopySingToEdge(SCIP *, int, const SINGLETONANS *, SCIP_Bool, GRAPH *, SCIP_Bool *)
Definition: graph_history.c:1426
int graph_edge_redirect(SCIP *scip, GRAPH *g, int eki, int k, int j, SCIP_Real cost, SCIP_Bool forcedelete, SCIP_Bool checkexist)
Definition: graph_edge.c:103
void graph_edge_delHistory(SCIP *scip, GRAPH *g, int edge)
Definition: graph_edge.c:466
Definition: type_retcode.h:33
SCIP_Bool graph_valid_dcsr(const GRAPH *, SCIP_Bool verbose)
Definition: graph_util.c:1919
void graph_pc_updateSubgraphEdge(const GRAPH *, const int *, int, GRAPH *)
Definition: graph_pcbase.c:1661
void graph_edge_delBlocked(SCIP *scip, GRAPH *g, const SCIP_Bool *edge_deletable, SCIP_Bool freeancestors)
Definition: graph_edge.c:448
Definition: graphdefs.h:173
Portable definitions.
SCIP_Bool SCIPisGT(SCIP *scip, SCIP_Real val1, SCIP_Real val2)
Definition: scip_numerics.c:477
void graph_edge_del(SCIP *scip, GRAPH *g, int e, SCIP_Bool freeancestors)
Definition: graph_edge.c:368
void graph_edge_addBi(SCIP *scip, GRAPH *g, int tail, int head, SCIP_Real cost)
Definition: graph_edge.c:328
SCIP_RETCODE graph_edge_reinsert(SCIP *scip, GRAPH *g, int edge, int tail, int head, SCIP_Real cost, int ancestornode, SINGLETONANS *ancestorsBackward, SINGLETONANS *ancestorsForward, int *insertedge, SCIP_Bool *conflict)
Definition: graph_edge.c:200
void graph_edge_add(SCIP *scip, GRAPH *g, int tail, int head, SCIP_Real cost1, SCIP_Real cost2)
Definition: graph_edge.c:278
Definition: objbenders.h:33
void graph_edge_addSubgraph(SCIP *scip, const GRAPH *orggraph, const int *nodemapOrg2sub, int orgedge, GRAPH *subgraph)
Definition: graph_edge.c:341