end
end
- def run_velvetg(cov_cutoffs, exp_cov)
+ def run_velvetg(cov_cutoff, exp_cov)
Dir.glob("#{@directory}/Kmer_*").each do |dir_velveth|
files_velveth = Dir.glob("#{dir_velveth}/*")
- cov_cutoffs.each do |cov_cutoff|
- dir_velvetg = File.join(dir_velveth, "Cov_cutoff_#{cov_cutoff}")
+ dir_velvetg = File.join(dir_velveth, "Cov_cutoff_#{cov_cutoff}")
- Dir.mkdir(dir_velvetg)
- FileUtils.cp_r files_velveth, dir_velvetg
-
- commands = []
- commands << "velvetg"
- commands << dir_velvetg
- commands << "-cov_cutoff #{cov_cutoff}"
- commands << "-exp_cov #{exp_cov}"
- commands << "-clean yes"
+ Dir.mkdir(dir_velvetg)
+ FileUtils.cp_r files_velveth, dir_velvetg
+
+ commands = []
+ commands << "velvetg"
+ commands << dir_velvetg
+ commands << "-cov_cutoff #{cov_cutoff}"
+ commands << "-exp_cov #{exp_cov}"
+ commands << "-clean yes"
- execute(commands)
- end
+ execute(commands)
end
end
end
types = 'short,shortPaired,long,longPaired'
-cov_cutoffs = "2,4,8,16"
casts = []
-casts << {:long=>'directory', :short=>'d', :type=>'dir', :mandatory=>true, :default=>nil, :allowed=>nil, :disallowed=>nil}
-casts << {:long=>'type', :short=>'t', :type=>'string', :mandatory=>true, :default=>'short', :allowed=>types, :disallowed=>nil}
-casts << {:long=>'kmer_min', :short=>'k', :type=>'uint', :mandatory=>true, :default=>19, :allowed=>nil, :disallowed=>nil}
-casts << {:long=>'kmer_max', :short=>'K', :type=>'uint', :mandatory=>true, :default=>31, :allowed=>nil, :disallowed=>nil}
-casts << {:long=>'cov_cutoff', :short=>'c', :type=>'list', :mandatory=>true, :default=>cov_cutoffs, :allowed=>nil, :disallowed=>nil}
-casts << {:long=>'exp_cov', :short=>'e', :type=>'float', :mandatory=>true, :default=>'auto', :allowed=>nil, :disallowed=>nil}
-casts << {:long=>'clean', :short=>'x', :type=>'flag', :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}
+casts << {:long=>'directory', :short=>'d', :type=>'dir', :mandatory=>true, :default=>nil, :allowed=>nil, :disallowed=>nil}
+casts << {:long=>'type', :short=>'t', :type=>'string', :mandatory=>true, :default=>'short', :allowed=>types, :disallowed=>nil}
+casts << {:long=>'kmer_min', :short=>'k', :type=>'uint', :mandatory=>true, :default=>19, :allowed=>nil, :disallowed=>nil}
+casts << {:long=>'kmer_max', :short=>'K', :type=>'uint', :mandatory=>true, :default=>31, :allowed=>nil, :disallowed=>nil}
+casts << {:long=>'cov_cutoff', :short=>'c', :type=>'float', :mandatory=>true, :default=>'auto', :allowed=>nil, :disallowed=>nil}
+casts << {:long=>'exp_cov', :short=>'e', :type=>'float', :mandatory=>true, :default=>'auto', :allowed=>nil, :disallowed=>nil}
+casts << {:long=>'clean', :short=>'X', :type=>'flag', :mandatory=>false, :default=>nil, :allowed=>nil, :disallowed=>nil}
options = Biopieces.options_parse(ARGV, casts)
file_fasta = File.join(options[:directory], "sequence_in.fna")
Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
- Fasta.open(file_fasta, mode="w") do |fasta_io|
- input.each_record do |record|
- fasta_io.puts record
- end
+ Fasta.open(file_fasta, mode="w") do |fasta_io|
+ input.each_record do |record|
+ if record[:SEQ_NAME] and record[:SEQ]
+ seq = Seq.new_bp(record)
+ fasta_io.puts seq.to_fasta
+ end
+ end
end
unless File.size(file_fasta) == 0