comparison searchgui.xml @ 33:068abf6b3ea0 draft

Uploaded
author iracooke
date Mon, 15 Dec 2014 21:00:40 -0500
parents
children c429afe658b9
comparison
equal deleted inserted replaced
32:1767cecc8635 33:068abf6b3ea0
1 <tool id="search_gui" name="Search GUI" version="1.23.0">
2 <description>
3 Perform protein identification using various search engines and prepare results for input to Peptide Shaker
4 </description>
5 <requirements>
6 <requirement type="package" version="1.23">searchgui</requirement>
7 </requirements>
8
9 <expand macro="stdio" />
10 <command>
11 <![CDATA[
12 #from datetime import datetime
13 #set $exp_str = "Galaxy_Experiment_%s" % datetime.now().strftime("%Y%m%d%H%M%s")
14 #set $samp_str = "Sample_%s" % datetime.now().strftime("%Y%m%d%H%M%s")
15 #set $temp_stderr = 'macs2_stderr'
16
17 mkdir output;
18 mkdir output_reports;
19 cwd=`pwd`;
20 #for $mgf in $peak_lists:
21 #set $input_name = $mgf.display_name.replace(".mgf", "") + ".mgf"
22 ln -s '${mgf}' '${input_name}';
23 #end for
24 ##ln -s "${input_database}" input_database.fasta;
25 cp "${input_database}" input_database.fasta;
26
27 ###########################################
28 #### Creating decoy database ####
29 ###########################################
30 #if $create_decoy:
31 echo "Creating decoy database.";
32 java -cp \$SEARCHGUI_JAR_PATH eu.isas.searchgui.cmd.FastaCLI -in input_database.fasta -decoy;
33 rm input_database.fasta;
34 cp input_database_concatenated_target_decoy.fasta input_database.fasta;
35 ##ln -sf input_database_concatenated_target_decoy.fasta input_database.fasta;
36 #end if
37
38 #####################################################
39 ## generate IdentificationParameters for SearchGUI ##
40 #####################################################
41
42 (java -cp \$SEARCHGUI_JAR_PATH eu.isas.searchgui.cmd.IdentificationParametersCLI
43 -out SEARCHGUI_IdentificationParameters.parameters
44
45 @GENERAL_PARAMETERS@
46
47 -db input_database.fasta
48
49 #if $advanced.advanced_type_selector == "advanced":
50
51 #if $advanced.xtandem.xtandem_selector == "yes"
52
53 -xtandem_npeaks ${advanced.xtandem.xtandem_npeaks}
54 -xtandem_min_peaks ${advanced.xtandem.xtandem_min_peaks}
55 -xtandem_min_frag_mz ${advanced.xtandem.xtandem_min_frag_mz}
56 -xtandem_min_prec_mass ${advanced.xtandem.xtandem_min_prec_mass}
57 -xtandem_noise_suppr ${advanced.xtandem.xtandem_noise_suppr}
58
59 #if $advanced.xtandem.xtandem_refine.xtandem_refine_selector == "yes"
60 -xtandem_refine 1
61 -xtandem_refine_unc ${advanced.xtandem.xtandem_refine.xtandem_refine_unc}
62 -xtandem_refine_semi ${advanced.xtandem.xtandem_refine.xtandem_refine_semi}
63 -xtandem_refine_p_mut ${advanced.xtandem.xtandem_refine.xtandem_refine_p_mut}
64 -xtandem_refine_snaps ${advanced.xtandem.xtandem_refine.xtandem_refine_snaps}
65 -xtandem_refine_spec_synt ${advanced.xtandem.xtandem_refine.xtandem_refine_spec_synt}
66 #end if
67 #end if
68
69 #if $advanced.omssa.omssa_selector == "yes"
70 -omssa_hitlist_length ${advanced.omssa.hitlist_length}
71 -omssa_remove_prec ${advanced.omssa.remove_precursor}
72 -omssa_scale_prec ${advanced.omssa.scale_precursor}
73 -omssa_estimate_charge ${advanced.omssa.estimate_charge}
74 #end if
75
76 #if $advanced.msgf.msgf_selector == "yes"
77 -msgf_decoy ${advanced.msgf.msgf_decoy}
78 -msgf_min_pep_length ${advanced.msgf.msgf_min_pep_length}
79 -msgf_max_pep_length ${advanced.msgf.msgf_max_pep_length}
80 -msgf_termini ${advanced.msgf.msgf_termini}
81 -msgf_num_ptms ${advanced.msgf.msgf_num_ptms}
82 #end if
83
84 ##if $advanced.ms_amanda.ms_amanda_selector == "yes"
85 ##end if
86
87 #end if
88
89 2> $temp_stderr)
90 &&
91
92 ################
93 ## Search CLI ##
94 ################
95 (java -Djava.awt.headless=true -cp \$SEARCHGUI_JAR_PATH eu.isas.searchgui.cmd.SearchCLI
96 -temp_folder `pwd`
97 -spectrum_files \$cwd
98 -output_folder \$cwd/output
99 -id_params SEARCHGUI_IdentificationParameters.parameters
100
101 -threads "\${GALAXY_SLOTS:-12}"
102 -correct_titles "${correct_titles}"
103 $missing_titles
104 -mgf_splitting "${mgf_splitting}"
105 -mgf_spectrum_count "${mgf_spectrum_count}"
106
107 ## Turn of the protein tree generation as it can produce errors if the search is finished before the tree is created
108 ## the tree is generated afterwards in PeptideShaker
109 -protein_index 0
110
111 ##-makeblastdb_folder \$BLAST_ROOT_DIR
112
113 #if $advanced.advanced_type_selector == "advanced":
114
115 #if $advanced.xtandem.xtandem_selector == "yes"
116 -xtandem 1
117 #else
118 -xtandem 0
119 #end if
120
121 #if $advanced.omssa.omssa_selector == "yes"
122 -omssa 1
123 #else
124 -omssa 0
125 #end if
126
127 #if $advanced.msgf.msgf_selector == "yes"
128 -msgf 1
129 #else
130 -msgf 0
131 #end if
132
133 #if $advanced.ms_amanda.ms_amanda_selector == "yes"
134 -ms_amanda 1
135 #else
136 -ms_amanda 0
137 #end if
138
139 #if $advanced.myrimatch.myrimatch_selector == "yes"
140 -myrimatch 1
141 #else
142 -myrimatch 0
143 #end if
144
145 #if $advanced.comet.comet_selector == "yes"
146 -comet 1
147 #else
148 -comet 0
149 #end if
150
151 #else
152 -ms_amanda 0
153 #end if
154
155 ## single zip file
156 -output_option 0
157
158 2>> $temp_stderr)
159
160 &&
161
162 exit_code_for_galaxy=\$?;
163 cat $temp_stderr 2&gt;&amp;1;
164 (exit \$exit_code_for_galaxy)
165 ]]>
166 </command>
167 <inputs>
168 <param format="fasta" name="input_database" type="data" label="Protein Database"
169 help="Select FASTA database from history"/>
170
171 <param name="create_decoy" type="boolean" truevalue="True" falsevalue="False" checked="true"
172 label="Create a concatenated target/decoy database before running PeptideShaker"
173 help="Selecting this option will help PeptideShaker calculate FDR values" />
174
175 <param format="mgf" name="peak_lists" type="data" multiple="true" label="Input Peak Lists (mgf)"
176 help="Select appropriate MGF dataset(s) from history" />
177
178 <expand macro="general_options"/>
179
180 <param name="correct_titles" type="select" label="How should PeptideShaker deal with duplicate spectra?"
181 help="Unless you suspect some input files to be genuine duplicates then rename spectra is the safest option">
182 <option value="0">no correction</option>
183 <option value="1" selected="True">rename spectra</option>
184 <option value="2">delete spectra</option>
185 </param>
186
187 <param name="missing_titles" type="boolean" checked="false" truevalue="-missing_titles 1" falsevalue="-missing_titles 0"
188 label="Add missing spectrum titles" help="(-missing_titles)"/>
189
190 <param name="mgf_splitting" type="integer" value="1000" label="The maximum mgf file size in MB before splitting the mgf"
191 help="Choose a smaller value if you are running on a machine with limited memory"/>
192
193 <param name="mgf_spectrum_count" type="integer" value="25000" label="The maximum number of spectra per mgf file when splitting"
194 help="Choose a smaller value if you are running on a machine with limited memory"/>
195
196 <conditional name="advanced">
197 <param name="advanced_type_selector" type="select" label="Basic or Advanced Search options">
198 <option value="basic" selected="True">Basic</option>
199 <option value="advanced">Advanced</option>
200 </param>
201 <when value="basic" />
202 <when value="advanced">
203 <conditional name="xtandem">
204 <param name="xtandem_selector" type="select" label="Run X!Tandem search">
205 <option value="yes" selected="True">Search with X!Tandem</option>
206 <option value="no">No X!Tandem search</option>
207 </param>
208 <when value="no" />
209 <when value="yes">
210 <param name="xtandem_npeaks" label="X!Tandem: Total Peaks" type="integer" value="50" help="Maximum number of peaks to be used from a spectrum"/>
211 <param name="xtandem_min_peaks" type="integer" value="15"
212 label="X!Tandem: Min Peaks" help="Minimum number of peaks required for a spectrum to be considered"/>
213 <param name="xtandem_min_frag_mz" type="integer" value="200"
214 label="X!Tandem: Min Frag m/z" help="Fragment mass peaks with m/z less than this value will be discarded"/>
215 <param name="xtandem_min_prec_mass" label="X!Tandem: Min Precursor Mass" type="integer" value="200" help="Minimum mass of 1+ mass of parent ion to be considered"/>
216 <param name="xtandem_noise_suppr" label="X!Tandem: Noise Suppression" type="boolean" checked="true" truevalue="1" falsevalue="0" help="Use noise suppression"/>
217
218 <conditional name="xtandem_refine"><!-- -xtandem_refine -->
219 <param name="xtandem_refine_selector" type="select" label="X!Tandem peptide model refinement">
220 <option value="no" selected="True">Don't refine</option>
221 <option value="yes" >Use refinement</option>
222 </param>
223 <when value="no"/>
224 <when value="yes">
225 <param name="xtandem_refine_unc" type="boolean" truevalue="1" falsevalue="0"
226 label="X!Tandem: Unanticipated cleavage, refinement" help="Allow for unanticipated cleavage during refinement"/>
227 <param name="xtandem_refine_semi" type="boolean" truevalue="1" falsevalue="0"
228 label="X!Tandem: Cleavage semi, refinement" help="Search for semi-tryptic peptides during refinement"/>
229 <param name="xtandem_refine_p_mut" type="boolean" truevalue="1" falsevalue="0"
230 label="X!Tandem: Point mutations, refinement" help="Allow for point mutations during refinement"/>
231 <param name="xtandem_refine_snaps" type="boolean" truevalue="1" falsevalue="0"
232 label="X!Tandem: snAPs, refinement" help="Search for known single amino acid polymorphisms during refinement"/>
233 <param name="xtandem_refine_spec_synt" type="boolean" truevalue="1" falsevalue="0"
234 label="X!Tandem: Spectrum synthesis, refinement" help="Use spectrum synthesis scoring"/>
235 </when>
236 </conditional>
237 </when>
238 </conditional>
239
240 <conditional name="omssa">
241 <param name="omssa_selector" type="select" label="Run OMSSA search">
242 <option value="yes" selected="True">Search with OMSSA</option>
243 <option value="no">No OMSSA search</option>
244 </param>
245 <when value="no" />
246 <when value="yes">
247 <param name="hitlist_length" label="OMSSA: Hit List Length" type="integer" value="25" />
248 <param name="remove_precursor" label="OMSSA: Remove Precurosr" type="boolean" truevalue="1" falsevalue="0" checked="true"/>
249 <param name="scale_precursor" label="OMSSA: Scale Precursor Mass" type="boolean" truevalue="1" falsevalue="0" checked="false"/>
250 <param name="estimate_charge" label="OMSSA: Estimate Charge" type="boolean" truevalue="1" falsevalue="0" checked="true" />
251 </when>
252 </conditional>
253
254 <conditional name="msgf">
255 <param name="msgf_selector" type="select" label="Run MSGF search">
256 <option value="yes" selected="True">Search with MSGF</option>
257 <option value="no">No MSGF search</option>
258 </param>
259 <when value="no" />
260 <when value="yes">
261 <param name="msgf_decoy" type="boolean" truevalue="1" falsevalue="0"
262 label="Search Decoys" help="If yes then a decoy database will be generated and searched. Assumed input database contains no decoys"/>
263 <param name="msgf_min_pep_length" type="integer" value="6"
264 label="Minimum Peptide Length" help="Minimum length for a peptide to be considered"/>
265 <param name="msgf_max_pep_length" type="integer" value="30"
266 label="Maximum Peptide Length" help="Maximum length for a peptide to be considered"/>
267 <param name="msgf_termini" type="select" format="text"
268 label="Number of tolerable termini" help="Searches will take much longer if selecting a value other than 2">
269 <option value="0">0 (ie non-specific cleavage)</option>
270 <option value="1">1 (ie semi-tryptic cleavage)</option>
271 <option value="2" selected="true">2 (ie fully-tryptic cleavage)</option>
272 </param>
273 <param name="msgf_num_ptms" label="Max PTMs per peptide" type="integer" value="2"/>
274 </when>
275 </conditional>
276
277 <conditional name="ms_amanda">
278 <param name="ms_amanda_selector" type="select" label="Run MS Amanda search">
279 <option value="yes">Search with MS Amanda</option>
280 <option value="no" selected="True">No MS Amanda search</option>
281 </param>
282 <when value="no" />
283 <when value="yes">
284 </when>
285 </conditional>
286
287 <conditional name="myrimatch">
288 <param name="myrimatch_selector" type="select" label="Run MyriMatch search">
289 <option value="yes">Search with MyriMatch</option>
290 <option value="no" selected="True">No MyriMatch search</option>
291 </param>
292 <when value="no" />
293 <when value="yes">
294 </when>
295 </conditional>
296
297 <conditional name="comet">
298 <param name="comet_selector" type="select" label="Run Comet search">
299 <option value="yes">Search with Comet</option>
300 <option value="no" selected="True">No Comet search</option>
301 </param>
302 <when value="no" />
303 <when value="yes">
304 </when>
305 </conditional>
306
307 </when>
308 </conditional>
309
310 </inputs>
311 <outputs>
312 <data format="bgzip" name="searchgui_results" from_work_dir="searchgui_out.zip" label="${tool.name} on ${on_string}" />
313 </outputs>
314 <tests>
315 <test>
316 <param name="input_database" value="tinydb.fasta"/>
317 <param name="peak_lists" value="tinyspectra.mgf"/>
318 <param name="precursor_ion_tol" value="100"/>
319 <param name="fixed_modifications" value="carbamidomethyl c"/>
320 <param name="variable_modifications" value="oxidation of m"/>
321 <param name="min_charge" value="1"/>
322 <param name="max_charge" value="3"/>
323 <param name="advanced_type_selector" value="advanced"/>
324 <!--param name="xtandem_selector" value="no"/>-->
325 <param name="xtandem_selector" value="yes"/>
326 <param name="xtandem_selector.xtandem_refine_selector" value="yes"/>
327
328 <param name="omssa_selector" value="no"/>
329 <param name="msgf_selector" value="yes"/>
330 <param name="ms_amanda_selector" value="no"/>
331
332 <output name="output" file="tinyoutput.cps" compare="sim_size" delta="600" />
333 </test>
334 </tests>
335 <help>
336 **What it does**
337
338 Runs multiple search engines (X! Tandem, OMSSA and MS-GF+) on any number of MGF peak lists using the SearchGUI.
339
340
341 </help>
342 <expand macro="citations" />
343 </tool>