From 85d52b80cabe809447fd15a22c6ae88c64a1b8ff Mon Sep 17 00:00:00 2001 From: nzimme Date: Thu, 24 Oct 2019 21:49:58 +0200 Subject: [PATCH] final, buggy.. --- debruijn/debruijn.py | 19 +++++++++++-------- 1 file changed, 11 insertions(+), 8 deletions(-) diff --git a/debruijn/debruijn.py b/debruijn/debruijn.py index 54eeeeb..f4848dd 100644 --- a/debruijn/debruijn.py +++ b/debruijn/debruijn.py @@ -286,14 +286,17 @@ def simplify_bubbles(graph): graph, nx.DiGraph: a bubble-less de bruijn graph """ fork_nodes = []# empty list containing nodes with 2 or more ancestors - - for node in graph: - if graph.in_degree(node) >= 2: # if 2 or more ancestor add node - pred = [n for n in graph.predecessors(node)] - ancestor = algorithms.lowest_common_ancestor(graph,pred[0], pred[1]) - graph = solve_bubble(graph, ancestor, node) - - + f=1 + while f == 1: + for node in graph: + if graph.in_degree(node) >= 2: # if 2 or more ancestor add node + pred = [n for n in graph.predecessors(node)] + if len(pred) > 2: + f = 1 + else: + f = 0 + ancestor = algorithms.lowest_common_ancestor(graph,pred[0], pred[1]) + graph = solve_bubble(graph, ancestor, node) return graph