MCPcopy Create free account
hub / github.com/BirolLab/abyss / removeTransitiveEdges

Function removeTransitiveEdges

MergePaths/MergePaths.cpp:672–686  ·  view source on GitHub ↗

Remove transitive edges. */

Source from the content-addressed store, hash-verified

670
671/** Remove transitive edges. */
672static void
673removeTransitiveEdges(PathGraph& pathGraph)
674{
675 unsigned nbefore = num_edges(pathGraph);
676 unsigned nremoved = remove_transitive_edges(pathGraph);
677 unsigned nafter = num_edges(pathGraph);
678 if (opt::verbose > 0)
679 cout << "Removed " << nremoved << " transitive edges of " << nbefore << " edges leaving "
680 << nafter << " edges.\n";
681 assert(nbefore - nremoved == nafter);
682 if (!opt::db.empty()) {
683 addToDb(db, "Edges_init", nbefore);
684 addToDb(db, "Edges_removed_transitive", nremoved);
685 }
686}
687
688/** Remove ambiguous edges that overlap by only a small amount.
689 * Remove the edge (u,v) if deg+(u) > 1 and deg-(v) > 1 and the

Callers 1

buildPathGraphFunction · 0.85

Calls 4

remove_transitive_edgesFunction · 0.85
addToDbFunction · 0.85
num_edgesFunction · 0.50
emptyMethod · 0.45

Tested by

no test coverage detected