protk 1.2.6.pre5 → 1.3.0.pre1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +84 -45
  3. data/bin/add_retention_times.rb +9 -5
  4. data/bin/augustus_to_proteindb.rb +7 -11
  5. data/bin/interprophet.rb +28 -46
  6. data/bin/make_decoy.rb +16 -48
  7. data/bin/mascot_search.rb +57 -71
  8. data/bin/mascot_to_pepxml.rb +13 -26
  9. data/bin/msgfplus_search.rb +70 -107
  10. data/bin/omssa_search.rb +52 -109
  11. data/bin/peptide_prophet.rb +44 -119
  12. data/bin/pepxml_to_table.rb +24 -27
  13. data/bin/protein_prophet.rb +22 -82
  14. data/bin/protxml_to_gff.rb +22 -519
  15. data/bin/protxml_to_table.rb +2 -16
  16. data/bin/sixframe.rb +10 -32
  17. data/bin/tandem_search.rb +30 -403
  18. data/bin/tandem_to_pepxml.rb +43 -0
  19. data/bin/unimod_to_loc.rb +1 -1
  20. data/ext/{protk/decoymaker → decoymaker}/decoymaker.c +74 -21
  21. data/ext/decoymaker/extconf.rb +3 -0
  22. data/lib/protk/constants.rb +16 -2
  23. data/lib/protk/data/default_config.yml +2 -1
  24. data/lib/protk/data/tandem_gpm_defaults.xml +175 -0
  25. data/lib/protk/data/tandem_isb_kscore_defaults.xml +123 -0
  26. data/lib/protk/data/tandem_isb_native_defaults.xml +123 -0
  27. data/lib/protk/data/tandem_params.xml +17 -54
  28. data/lib/protk/fastadb.rb +2 -2
  29. data/lib/protk/prophet_tool.rb +1 -1
  30. data/lib/protk/protxml_to_gff_tool.rb +474 -0
  31. data/lib/protk/search_tool.rb +58 -103
  32. data/lib/protk/setup_rakefile.rake +9 -5
  33. data/lib/protk/tandem_search_tool.rb +256 -0
  34. data/lib/protk/tool.rb +85 -104
  35. data/lib/protk.rb +1 -6
  36. metadata +24 -103
  37. data/bin/annotate_ids.rb +0 -59
  38. data/bin/asapratio.rb +0 -27
  39. data/bin/blastxml_to_table.rb +0 -119
  40. data/bin/correct_omssa_retention_times.rb +0 -27
  41. data/bin/feature_finder.rb +0 -95
  42. data/bin/file_convert.rb +0 -164
  43. data/bin/generate_omssa_loc.rb +0 -42
  44. data/bin/gffmerge.rb +0 -208
  45. data/bin/libra.rb +0 -70
  46. data/bin/toppas_pipeline.rb +0 -84
  47. data/bin/uniprot_annotation.rb +0 -141
  48. data/bin/xls_to_table.rb +0 -52
  49. data/bin/xpress.rb +0 -27
  50. data/ext/protk/decoymaker/extconf.rb +0 -3
  51. data/ext/protk/simplealign/extconf.rb +0 -3
  52. data/lib/protk/biotools_excel_converter.rb +0 -60
  53. data/lib/protk/eupathdb_gene_information_table.rb +0 -158
  54. data/lib/protk/gapped_aligner.rb +0 -264
  55. data/lib/protk/protein_annotator.rb +0 -646
  56. data/lib/protk/spreadsheet_extensions.rb +0 -79
  57. data/lib/protk/xtandem_defaults.rb +0 -11
@@ -17,102 +17,34 @@ input_stager = nil
17
17
 
18
18
  # Setup specific command-line options for this tool. Other options are inherited from ProphetTool
19
19
  #
20
- prophet_tool=ProphetTool.new([:glyco,:explicit_output,:over_write,:maldi,:prefix_suffix])
20
+ prophet_tool=ProphetTool.new([
21
+ :glyco,
22
+ :explicit_output,
23
+ :over_write,
24
+ :maldi,
25
+ :prefix,
26
+ :database])
21
27
  prophet_tool.option_parser.banner = "Run PeptideProphet on a set of pep.xml input files.\n\nUsage: peptide_prophet.rb [options] file1.pep.xml file2.pep.xml ..."
22
- prophet_tool.options.output_suffix="_pproph"
23
-
24
- prophet_tool.options.useicat = false
25
- prophet_tool.option_parser.on( '--useicat',"Use icat information" ) do
26
- prophet_tool.options.useicat = true
27
- end
28
-
29
- prophet_tool.options.nouseicat = false
30
- prophet_tool.option_parser.on( '--no-useicat',"Do not use icat information" ) do
31
- prophet_tool.options.nouseicat = true
32
- end
33
-
34
- prophet_tool.options.phospho = false
35
- prophet_tool.option_parser.on( '--phospho',"Use phospho information" ) do
36
- prophet_tool.options.phospho = true
37
- end
38
-
39
- prophet_tool.options.usepi = false
40
- prophet_tool.option_parser.on( '--usepi',"Use pI information" ) do
41
- prophet_tool.options.usepi = true
42
- end
43
-
44
- prophet_tool.options.usert = false
45
- prophet_tool.option_parser.on( '--usert',"Use hydrophobicity / RT information" ) do
46
- prophet_tool.options.usert = true
47
- end
48
-
49
- prophet_tool.options.accurate_mass = false
50
- prophet_tool.option_parser.on( '--accurate-mass',"Use accurate mass binning" ) do
51
- prophet_tool.options.accurate_mass = true
52
- end
53
-
54
- prophet_tool.options.no_ntt = false
55
- prophet_tool.option_parser.on( '--no-ntt',"Don't use NTT model" ) do
56
- prophet_tool.options.no_ntt = true
57
- end
58
-
59
- prophet_tool.options.no_nmc = false
60
- prophet_tool.option_parser.on( '--no-nmc',"Don't use NMC model" ) do
61
- prophet_tool.options.no_nmc = true
62
- end
63
-
64
- prophet_tool.options.usegamma = false
65
- prophet_tool.option_parser.on( '--usegamma',"Use Gamma distribution to model the negatives" ) do
66
- prophet_tool.options.usegamma = true
67
- end
68
-
69
- prophet_tool.options.use_only_expect = false
70
- prophet_tool.option_parser.on( '--use-only-expect',"Only use Expect Score as the discriminant" ) do
71
- prophet_tool.options.use_only_expect = true
72
- end
73
-
74
- prophet_tool.options.force_fit = false
75
- prophet_tool.option_parser.on( '--force-fit',"Force fitting of mixture model and bypass checks" ) do
76
- prophet_tool.options.force_fit = true
77
- end
78
-
79
- prophet_tool.options.allow_alt_instruments=false
80
- prophet_tool.option_parser.on( '--allow-alt-instruments',"Warning instead of exit with error if instrument types between runs is different" ) do
81
- prophet_tool.options.allow_alt_instruments = true
82
- end
83
-
84
- prophet_tool.options.one_ata_time = false
85
- prophet_tool.option_parser.on( '-F', '--one-ata-time', 'Create a separate pproph output file for each analysis' ) do
86
- prophet_tool.options.one_ata_time = true
87
- end
88
-
89
- prophet_tool.options.decoy_prefix="decoy"
90
- prophet_tool.option_parser.on( '--decoy-prefix prefix', 'Prefix for decoy sequences') do |prefix|
91
- prophet_tool.options.decoy_prefix = prefix
92
- end
93
-
94
- prophet_tool.options.no_decoys = false
95
- prophet_tool.option_parser.on( '--no-decoy', 'Don\'t use decoy sequences to pin down the negative distribution') do
96
- prophet_tool.options.no_decoys = true
97
- end
98
-
99
- prophet_tool.options.experiment_label=nil
100
- prophet_tool.option_parser.on('--experiment-label label','used to commonly label all spectra belonging to one experiment (required by iProphet)') do |label|
101
- prophet_tool.options.experiment_label = label
102
- end
103
-
104
- prophet_tool.options.override_database=nil
105
- prophet_tool.option_parser.on( '--override-database database', 'Manually specify database') do |database|
106
- prophet_tool.options.override_database = database
107
- end
108
-
109
- exit unless prophet_tool.check_options
110
-
111
- if ( ARGV[0].nil? )
112
- puts "You must supply an input file"
113
- puts prophet_tool.option_parser
114
- exit
115
- end
28
+ @output_suffix="_pproph"
29
+ prophet_tool.options.database=nil
30
+
31
+ prophet_tool.add_boolean_option(:useicat,false,['--useicat',"Use icat information"])
32
+ prophet_tool.add_boolean_option(:phospho,false,['--phospho',"Use phospho information"])
33
+ prophet_tool.add_boolean_option(:usepi,false,['--usepi',"Use pI information"])
34
+ prophet_tool.add_boolean_option(:usert,false,['--usert',"Use hydrophobicity / RT information"])
35
+ prophet_tool.add_boolean_option(:accurate_mass,false,['--accurate-mass',"Use accurate mass binning"])
36
+ prophet_tool.add_boolean_option(:no_ntt,false,['--no-ntt',"Don't use NTT model"])
37
+ prophet_tool.add_boolean_option(:no_nmc,false,['--no-nmc',"Don't use NMC model"])
38
+ prophet_tool.add_boolean_option(:usegamma,false,['--usegamma',"Use Gamma distribution to model the negatives"])
39
+ prophet_tool.add_boolean_option(:use_only_expect,false,['--use-only-expect',"Only use Expect Score as the discriminant"])
40
+ prophet_tool.add_boolean_option(:force_fit,false,['--force-fit',"Force fitting of mixture model and bypass checks"])
41
+ prophet_tool.add_boolean_option(:allow_alt_instruments,false,['--allow-alt-instruments',"Warning instead of exit with error if instrument types between runs is different"])
42
+ prophet_tool.add_boolean_option(:one_ata_time,false,['-F', '--one-ata-time', 'Create a separate pproph output file for each analysis'])
43
+ prophet_tool.add_value_option(:decoy_prefix,"decoy",['--decoy-prefix prefix', 'Prefix for decoy sequences'])
44
+ prophet_tool.add_boolean_option(:no_decoys,false,['--no-decoy', 'Don\'t use decoy sequences to pin down the negative distribution'])
45
+ prophet_tool.add_value_option(:experiment_label,nil,['--experiment-label label','used to commonly label all spectra belonging to one experiment (required by iProphet)'])
46
+
47
+ exit unless prophet_tool.check_options(true)
116
48
 
117
49
  throw "When --output and -F options are set only one file at a time can be run" if ( ARGV.length> 1 ) && ( prophet_tool.explicit_output!=nil ) && (prophet_tool.one_ata_time!=nil)
118
50
 
@@ -133,10 +65,11 @@ inputs.each {|file_name|
133
65
  name=file_name.chomp
134
66
 
135
67
  engine=prophet_tool.extract_engine(name)
136
- if prophet_tool.override_database
137
- db_path = prophet_tool.override_database
68
+ if prophet_tool.database
69
+ db_path = prophet_tool.database_info.path
138
70
  else
139
71
  db_path=prophet_tool.extract_db(name)
72
+ throw "Unable to find database #{db_path} used for searching. Specify database path using -d option" unless File.exist?(db_path)
140
73
  end
141
74
 
142
75
 
@@ -157,10 +90,10 @@ inputs=file_info.collect do |info|
157
90
  end
158
91
  throw "All files to be analyzed must have been searched with the same database and search engine" unless (info[1][:engine]==engine) && (info[1][:database])
159
92
 
160
- retname= "#{prophet_tool.input_base_path(info[0],".pep.xml")}.pep.xml"
161
- if ( info[0]=~/\.dat$/)
162
- retname=info[0]
163
- end
93
+ retname= info[0]
94
+ # if ( info[0]=~/\.dat$/)
95
+ # retname=info[0]
96
+ # end
164
97
 
165
98
  retname
166
99
 
@@ -219,9 +152,7 @@ def generate_command(genv,prophet_tool,inputs,output,database,engine)
219
152
 
220
153
  if prophet_tool.useicat
221
154
  cmd << " -Oi "
222
- end
223
-
224
- if prophet_tool.nouseicat
155
+ else
225
156
  cmd << " -Of"
226
157
  end
227
158
 
@@ -255,9 +186,7 @@ def run_peptide_prophet(genv,prophet_tool,cmd,output_path,engine)
255
186
  if ( !prophet_tool.over_write && Pathname.new(output_path).exist? )
256
187
  genv.log("Skipping analysis on existing file #{output_path}",:warn)
257
188
  else
258
- jobscript_path="#{output_path}.pbs.sh"
259
- job_params={:jobid=>engine, :vmem=>"900mb", :queue => "lowmem"}
260
- code=prophet_tool.run(cmd,genv,job_params,jobscript_path)
189
+ code=prophet_tool.run(cmd,genv)
261
190
  throw "Command failed with exit code #{code}" unless code==0
262
191
  end
263
192
  end
@@ -265,27 +194,23 @@ end
265
194
 
266
195
  cmd=""
267
196
  if ( prophet_tool.one_ata_time )
268
- inputs.each { |input|
269
-
270
- output_file_name="#{prophet_tool.output_prefix}#{input}_#{engine}_interact#{prophet_tool.output_suffix}.pep.xml"
197
+
198
+ inputs.each do |input|
199
+ output_file_name=Tool.default_output_path(input,".pep.xml",prophet_tool.output_prefix,@output_suffix)
271
200
 
272
201
  cmd=generate_command(genv,prophet_tool,input,output_file_name,database,engine)
202
+ run_peptide_prophet(genv,prophet_tool,cmd,output_file_name,engine)
203
+ end
273
204
 
274
- run_peptide_prophet(genv,prophet_tool,cmd,output_file_base_name,engine)
275
-
276
-
277
- }
278
205
  else
206
+
279
207
  if (prophet_tool.explicit_output==nil)
280
- output_file_name="#{prophet_tool.output_prefix}#{engine}_interact#{prophet_tool.output_suffix}.pep.xml"
208
+ output_file_name=Tool.default_output_path(inputs,".pep.xml",prophet_tool.output_prefix,@output_suffix)
281
209
  else
282
-
283
210
  output_file_name=prophet_tool.explicit_output
284
-
285
211
  end
212
+
286
213
  cmd=generate_command(genv,prophet_tool,inputs,output_file_name,database,engine)
287
- puts cmd
288
- %x['ls']
289
214
  run_peptide_prophet(genv,prophet_tool,cmd,output_file_name,engine)
290
215
 
291
216
  end
@@ -19,26 +19,17 @@ include LibXML
19
19
  tool=Tool.new([:explicit_output])
20
20
  tool.option_parser.banner = "Convert a pepXML file to a tab delimited table.\n\nUsage: pepxml_to_table.rb [options] file1.pep.xml"
21
21
 
22
- exit unless tool.check_options
23
-
24
- if ( ARGV[0].nil? )
25
- puts "You must supply an input file"
26
- puts tool.option_parser
27
- exit
28
- end
29
-
30
- # Obtain a global environment object
31
- #genv=Constants.new
22
+ exit unless tool.check_options(true)
32
23
 
33
24
  input_file=ARGV[0]
34
25
 
35
- output_file="#{input_file}.txt"
36
-
37
- output_file = tool.explicit_output if tool.explicit_output!=nil
38
-
39
- output_fh=File.new("#{output_file}",'w')
26
+ if tool.explicit_output
27
+ output_fh=File.new("#{tool.explicit_output}",'w')
28
+ else
29
+ output_fh=$stdout
30
+ end
40
31
 
41
- output_fh.write "protein\tpeptide\tassumed_charge\tcalc_neutral_pep_mass\tneutral_mass\tretention_time\tstart_scan\tend_scan\tsearch_engine\tpeptideprophet_prob\tinterprophet_prob\n"
32
+ output_fh.write "protein\tpeptide\tassumed_charge\tcalc_neutral_pep_mass\tneutral_mass\tretention_time\tstart_scan\tend_scan\tsearch_engine\traw_score\tpeptideprophet_prob\tinterprophet_prob\n"
42
33
 
43
34
  XML::Error.set_handler(&XML::Error::QUIET_HANDLER)
44
35
 
@@ -68,18 +59,24 @@ spectrum_queries.each do |query|
68
59
  start_scan=query.attributes['start_scan']
69
60
  end_scan=query.attributes['end_scan']
70
61
 
71
- search_engine=""
72
- search_score_names=top_search_hit.find("./#{pepxml_ns_prefix}search_score/@name",pepxml_ns).collect {|s| s.to_s}
62
+ run_summary_node=query.parent
63
+ # puts run_summary_node
64
+ search_summary_node=run_summary_node.find("./#{pepxml_ns_prefix}search_summary",pepxml_ns)[0]
65
+ # puts search_summary_node.attributes.each { |e| puts e }
66
+ search_engine=search_summary_node.attributes['search_engine']
67
+
68
+ # search_engine=""
73
69
 
74
- search_engine=query.parent.attributes['search_engine']
75
70
 
76
- # if ( search_score_names.length==2 && search_score_names.grep(/^name.*=.*pvalue/))
77
- # search_engine="omssa"
78
- # elsif ( search_score_names.grep(/^name.*=.*ionscore/))
79
- # search_engine="mascot"
80
- # elsif ( search_score_names.grep(/^name.*=.*hyperscore/) )
81
- # search_engine="x!tandem"
82
- # end
71
+ raw_score=""
72
+ case search_engine
73
+ when /[Tt]andem/
74
+ search_score_nodes=top_search_hit.find("./#{pepxml_ns_prefix}search_score[@name=\"expect\"]",[pepxml_ns])
75
+ raw_score=search_score_nodes[0].attributes['value']
76
+ when /MS\-GF/
77
+ search_score_nodes=top_search_hit.find("./#{pepxml_ns_prefix}search_score[@name=\"EValue\"]",[pepxml_ns])
78
+ raw_score=search_score_nodes[0].attributes['value']
79
+ end
83
80
 
84
81
 
85
82
  pp_result=top_search_hit.find("./#{pepxml_ns_prefix}analysis_result/#{pepxml_ns_prefix}peptideprophet_result/@probability",pepxml_ns)
@@ -90,7 +87,7 @@ spectrum_queries.each do |query|
90
87
  peptide_prophet_prob=pp_result[0].value if ( pp_result.length>0 )
91
88
  interprophet_prob=ip_result[0].value if ( ip_result.length>0)
92
89
 
93
- output_fh.write "#{protein}\t#{peptide}\t#{assumed_charge}\t#{calc_neutral_pep_mass}\t#{neutral_mass}\t#{retention_time}\t#{start_scan}\t#{end_scan}\t#{search_engine}\t#{peptide_prophet_prob}\t#{interprophet_prob}\n"
90
+ output_fh.write "#{protein}\t#{peptide}\t#{assumed_charge}\t#{calc_neutral_pep_mass}\t#{neutral_mass}\t#{retention_time}\t#{start_scan}\t#{end_scan}\t#{search_engine}\t#{raw_score}\t#{peptide_prophet_prob}\t#{interprophet_prob}\n"
94
91
 
95
92
  end
96
93
 
@@ -17,98 +17,41 @@ for_galaxy = GalaxyUtil.for_galaxy?
17
17
 
18
18
  # Setup specific command-line options for this tool. Other options are inherited from ProphetTool
19
19
  #
20
- prophet_tool=ProphetTool.new([:glyco,:explicit_output,:over_write,:prefix_suffix])
20
+ prophet_tool=ProphetTool.new([:glyco,:explicit_output,:over_write,:prefix])
21
21
  prophet_tool.option_parser.banner = "Run ProteinProphet on a set of pep.xml input files.\n\nUsage: protein_prophet.rb [options] file1.pep.xml file2.pep.xml ..."
22
- prophet_tool.options.output_suffix="_protproph"
23
22
 
24
- prophet_tool.options.iproph = false
25
- prophet_tool.option_parser.on( '--iprophet-input',"Inputs are from iProphet" ) do
26
- prophet_tool.options.iproph = true
27
- end
28
-
29
- prophet_tool.options.nooccam = false
30
- prophet_tool.option_parser.on( '--no-occam',"Do not attempt to derive the simplest protein list explaining observed peptides" ) do
31
- prophet_tool.options.nooccam = true
32
- end
33
-
34
- prophet_tool.options.groupwts = false
35
- prophet_tool.option_parser.on( '--group-wts',"Check peptide's total weight (rather than actual weight) in the Protein Group against the threshold" ) do
36
- prophet_tool.options.groupwts = true
37
- end
38
-
39
- prophet_tool.options.normprotlen = false
40
- prophet_tool.option_parser.on( '--norm-protlen',"Normalize NSP using Protein Length" ) do
41
- prophet_tool.options.normprotlen = true
42
- end
23
+ @output_suffix="_protproph"
43
24
 
44
- prophet_tool.options.logprobs = false
45
- prophet_tool.option_parser.on( '--log-prob',"Use the log of probability in the confidence calculations" ) do
46
- prophet_tool.options.logprobs = true
47
- end
48
-
49
- prophet_tool.options.confem = false
50
- prophet_tool.option_parser.on( '--confem',"Use the EM to compute probability given the confidence" ) do
51
- prophet_tool.options.confem = true
52
- end
53
-
54
- prophet_tool.options.allpeps = false
55
- prophet_tool.option_parser.on( '--allpeps',"Consider all possible peptides in the database in the confidence model" ) do
56
- prophet_tool.options.allpeps = true
57
- end
58
-
59
- prophet_tool.options.unmapped = false
60
- prophet_tool.option_parser.on( '--unmapped',"Report results for unmapped proteins" ) do
61
- prophet_tool.options.unmapped = true
62
- end
63
-
64
- prophet_tool.options.instances = false
65
- prophet_tool.option_parser.on( '--instances',"Use Expected Number of Ion Instances to adjust the peptide probabilities prior to NSP adjustment" ) do
66
- prophet_tool.options.instances = true
67
- end
68
-
69
- prophet_tool.options.delude = false
70
- prophet_tool.option_parser.on( '--delude',"Do NOT use peptide degeneracy information when assessing proteins" ) do
71
- prophet_tool.options.delude = true
72
- end
73
-
74
- prophet_tool.options.minprob = 0.05
75
- prophet_tool.option_parser.on( '--minprob mp',"Minimum peptide prophet probability for peptides to be considered" ) do |mp|
76
- prophet_tool.options.minprob = mp
77
- end
78
-
79
- prophet_tool.options.minindep = 0
80
- prophet_tool.option_parser.on( '--minindep mp',"Minimum percentage of independent peptides required for a protein" ) do |mp|
81
- prophet_tool.options.minindep = mp
82
- end
83
-
84
- exit unless prophet_tool.check_options
85
-
86
- if ( ARGV[0].nil? )
87
- puts "You must supply an input file"
88
- puts prophet_tool.option_parser
89
- exit
90
- end
25
+ prophet_tool.add_boolean_option(:iproph,false,['--iprophet-input',"Inputs are from iProphet"])
26
+ prophet_tool.add_boolean_option(:nooccam,false,['--no-occam',"Do not attempt to derive the simplest protein list explaining observed peptides"])
27
+ prophet_tool.add_boolean_option(:groupwts,false,['--group-wts',"Check peptide's total weight (rather than actual weight) in the Protein Group against the threshold"])
28
+ prophet_tool.add_boolean_option(:normprotlen,false,['--norm-protlen',"Normalize NSP using Protein Length"])
29
+ prophet_tool.add_boolean_option(:logprobs,false,['--log-prob',"Use the log of probability in the confidence calculations"])
30
+ prophet_tool.add_boolean_option(:confem,false,['--confem',"Use the EM to compute probability given the confidence"])
31
+ prophet_tool.add_boolean_option(:allpeps,false,['--allpeps',"Consider all possible peptides in the database in the confidence model"])
32
+ prophet_tool.add_boolean_option(:unmapped,false,['--unmapped',"Report results for unmapped proteins"])
33
+ prophet_tool.add_boolean_option(:instances,false,['--instances',"Use Expected Number of Ion Instances to adjust the peptide probabilities prior to NSP adjustment"])
34
+ prophet_tool.add_boolean_option(:delude,false,['--delude',"Do NOT use peptide degeneracy information when assessing proteins"])
35
+ prophet_tool.add_value_option(:minprob,0.05,['--minprob mp',"Minimum peptide prophet probability for peptides to be considered"])
36
+ prophet_tool.add_value_option(:minindep,0,['--minindep mp',"Minimum percentage of independent peptides required for a protein"])
91
37
 
38
+ exit unless prophet_tool.check_options(true)
92
39
 
93
40
  # Obtain a global environment object
94
41
  genv=Constants.new
95
42
 
96
- if ( prophet_tool.explicit_output==nil )
97
- output_file="#{prophet_tool.output_prefix}interact#{prophet_tool.output_suffix}.prot.xml"
98
- else
99
- output_file=prophet_tool.explicit_output
100
- end
43
+ inputs = ARGV.collect {|file_name| file_name.chomp }
101
44
 
102
- p output_file
45
+ if ( prophet_tool.explicit_output )
46
+ output_file=prophet_tool.explicit_output
47
+ else
48
+ output_file=Tool.default_output_path(inputs,".prot.xml",prophet_tool.output_prefix,@output_suffix)
49
+ end
103
50
 
104
51
  if ( !Pathname.new(output_file).exist? || prophet_tool.over_write )
105
52
 
106
53
  cmd="ProteinProphet NOPLOT "
107
54
 
108
- inputs = ARGV.collect {|file_name|
109
- file_name.chomp
110
- }
111
-
112
55
  if for_galaxy
113
56
  inputs = inputs.collect {|ip| GalaxyUtil.stage_pepxml(ip) }
114
57
  end
@@ -122,10 +65,7 @@ if ( !Pathname.new(output_file).exist? || prophet_tool.over_write )
122
65
 
123
66
  # Run the analysis
124
67
  #
125
- jobscript_path="#{output_file}.pbs.sh"
126
- job_params={:jobid=>"protproph", :vmem=>"900mb", :queue => "lowmem"}
127
- genv.log("Running #{cmd}",:info)
128
- code = prophet_tool.run(cmd,genv,job_params,jobscript_path)
68
+ code = prophet_tool.run(cmd,genv)
129
69
  throw "Command failed with exit code #{code}" unless code==0
130
70
  else
131
71
  genv.log("Protein Prophet output file #{output_file} already exists. Run with -r option to replace",:warn)