@@ -25,12 +25,12 @@ def get_basename(file_name):
2525 return (basename )
2626
2727
28- def add_mutation_multi (sequence , mutrate , process ):
28+ def add_mutation_multi (sequences , mutrate , process ):
2929 mutate_partial = partial (sf .mutate , mutrate = mutrate )
3030 print ("Mutating..." )
3131 with multiprocessing .Pool (process ) as p :
32- mutseq = p .map (mutate_partial , list ( sequence ) )
33- return ("" . join (mutseq ))
32+ mutseq = p .map (mutate_partial , sequences )
33+ return (list (mutseq ))
3434
3535
3636def reverse_complement_multi (all_inserts , process ):
@@ -49,10 +49,16 @@ def read_fasta(file_name):
4949 result(string): all of the sequences in fasta file, concatenated
5050 """
5151 result = ""
52+ # fastadict = {}
5253 with open (file_name , "r" ) as f :
5354 for line in f :
54- if not line .startswith (">" ):
55+ if line [0 ] == ">" :
56+ # seqname = line[1:]
57+ # fastadict[seqname] = []
58+ continue
59+ else :
5560 line = line .rstrip ()
61+ # fastadict[seqname].append(line)
5662 result = result + line
5763 return ([result , len (result )])
5864
@@ -159,12 +165,12 @@ def run_read_simulation_multi(INFILE, COV, READLEN, INSERLEN, NBINOM, A1, A2, MI
159165 prob = NBINOM / (NBINOM + INSERLEN )
160166 insert_lengths = npr .negative_binomial (NBINOM , prob , nread )
161167
168+ all_inserts = sf .random_insert (fasta , insert_lengths , READLEN , MINLENGTH )
169+
162170 if MUTATE :
163171 correct_mutrate = (MUTRATE * AGE ) / fasta [1 ]
164- fasta [0 ] = add_mutation_multi (
165- sequence = fasta [0 ], mutrate = correct_mutrate , process = PROCESS )
166-
167- all_inserts = sf .random_insert (fasta , insert_lengths , READLEN , MINLENGTH )
172+ all_inserts = add_mutation_multi (
173+ sequences = all_inserts , mutrate = correct_mutrate , process = PROCESS )
168174
169175 if DAMAGE :
170176 all_inserts = add_damage_multi (
0 commit comments