diff --git a/deconvolution/main/to_d2_graph.py b/deconvolution/main/to_d2_graph.py
index ba684fefb5acd470aafbe8fe02d52d7d186614a6..04cdb07ccbcb9adbc0abe9b0d19de9fdf73ac8ac 100755
--- a/deconvolution/main/to_d2_graph.py
+++ b/deconvolution/main/to_d2_graph.py
@@ -13,6 +13,7 @@ def parse_arguments():
     parser.add_argument('--output_prefix', '-o', default="d2_graph",  help="Output file prefix.")
     parser.add_argument('--threads',       '-t', default=8, type=int, help='Number of thread to use for dgraph computation')
     parser.add_argument('--debug',         '-d', action='store_true', help="Debug")
+    parser.add_argument('--edge_divergence_threshold', '-dt', default=0.25, type=float, help='Divergence threshold value to link two udgs in the d2-graph')
     parser.add_argument('--maxclq',        '-c', action='store_true', help="Enable max clique community detection (default behaviour)")
     parser.add_argument('--louvain',       '-l', action='store_true', help="Enable Louvain community detection instead of all max-cliques")
     parser.add_argument('--comtest',       '-k', action='store_true', help="Enable [placeholder] community detection algorithm instead of max-cliques")
@@ -64,7 +65,7 @@ def main():
     d2g = d2.D2Graph(G, debug=debug, debug_path=debug_path)
     dprint("D2 graph object created")
     dprint("constructing d2 graph from barcode graph")
-    d2g.construct_from_barcodes(neighbor_threshold=d2_threshold, clique_mode=clique_mode, threads=args.threads)
+    d2g.construct_from_barcodes(neighbor_threshold=args.edge_divergence_threshold, clique_mode=clique_mode, threads=args.threads)
     dprint("[debug] d2 graph constructed")
     
     # d2g.save(f"{args.output_prefix}.tsv")