def make_rectangles_from_genome(options): k = options.k ingraph = Graph() _, genome = fastaparser.read_fasta(options.genome).next() ingraph.make_graph(genome, int(k)) edges_before_loop_DG = ingraph.find_loops(10, 1000) ingraph.save(os.path.join(options.out_dir,"graph")) rs = RectangleSet(ingraph, int(options.d)) rs.filter_without_prd() f_left = open(os.path.join(options.out_dir, "paired_genom_contigs_1.fasta"),"w") # TODO: what is it? f_right = open(os.path.join(options.out_dir, "paired_genom_contigs_2.fasta"),"w") # TODO: what is it? contigs_id = 0 for key, rect in rs.rectangles.items(): for key, diag in rect.diagonals.items(): e1 = rect.e1.seq e2 = rect.e2.seq f_left.write(">" + str(contigs_id) + "/1\n") f_left.write(e1[diag.offseta:diag.offsetc]) f_left.write("\n") f_right.write(">"+str(contigs_id) + "/2\n") f_right.write(e2[diag.offsetb:diag.offsetd]) f_right.write("\n") contigs_id += 1 bgraph = rs.bgraph_from_genome() bgraph.condense() outgraph = bgraph.project(options.out_dir, False) outgraph.fasta(open(os.path.join(options.out_dir, 'rectangles.fasta'), 'w'))