comparison morpheus.xml @ 0:ac0a6f10d8b1 draft

Uploaded
author galaxyp
date Thu, 05 Nov 2015 08:59:15 -0500
parents
children a5a1c3367774
comparison
equal deleted inserted replaced
-1:000000000000 0:ac0a6f10d8b1
1 <tool id="morpheus" name="Morpheus" version="1.171.1">
2 <description>database search algorithm for high-resolution tandem mass spectra</description>
3 <macros>
4 <xml name="modification_options">
5 <option value="carbamidomethylation of C">carbamidomethylation of C</option>
6 <option value="oxidation of M">oxidation of M</option>
7 <option value="acetylation of protein N-terminus">acetylation of protein N-terminus</option>
8 <option value="acetylation of lysine">acetylation of lysine</option>
9 <option value="phosphorylation of S">phosphorylation of S</option>
10 <option value="phosphorylation of T">phosphorylation of T</option>
11 <option value="phosphorylation of Y">phosphorylation of Y</option>
12 <option value="deamidation of N">deamidation of N</option>
13 <option value="deamidation of Q">deamidation of Q</option>
14 <option value="pyro-cmC">pyro-cmC</option>
15 <option value="pyro-E">pyro-E</option>
16 <option value="pyro-Q">pyro-Q</option>
17 <option value="TMT zero on peptide N-terminus">TMT zero on peptide N-terminus</option>
18 <option value="TMT zero on K">TMT zero on K</option>
19 <option value="TMT zero on Y">TMT zero on Y</option>
20 <option value="TMT duplex on peptide N-terminus">TMT duplex on peptide N-terminus</option>
21 <option value="TMT duplex on K">TMT duplex on K</option>
22 <option value="TMT duplex on Y">TMT duplex on Y</option>
23 <option value="TMT sixplex/tenplex on peptide N-terminus">TMT sixplex/tenplex on peptide N-terminus</option>
24 <option value="TMT sixplex/tenplex on K">TMT sixplex/tenplex on K</option>
25 <option value="TMT sixplex/tenplex on Y">TMT sixplex/tenplex on Y</option>
26 <option value="iTRAQ 4-plex on peptide N-terminus">iTRAQ 4-plex on peptide N-terminus</option>
27 <option value="iTRAQ 4-plex on K">iTRAQ 4-plex on K</option>
28 <option value="iTRAQ 4-plex on Y">iTRAQ 4-plex on Y</option>
29 <option value="iTRAQ 8-plex on peptide N-terminus">iTRAQ 8-plex on peptide N-terminus</option>
30 <option value="iTRAQ 8-plex on K">iTRAQ 8-plex on K</option>
31 <option value="iTRAQ 8-plex on Y ">iTRAQ 8-plex on Y </option>
32 </xml>
33 </macros>
34
35 <requirements>
36 <requirement version="4.0">mono</requirement>
37 <requirement version="171">morpheus</requirement>
38 </requirements>
39
40 <stdio>
41 <exit_code range="1:" />
42 <regex match="System..*Exception"
43 source="both"
44 level="fatal"
45 description="Error encountered" />
46 </stdio>
47
48 <command><![CDATA[
49 #set $searchdb_name = $searchdb
50 #if isinstance($searchdb.datatype, $__app__.datatypes_registry.get_datatype_by_extension('uniprotxml').__class__):
51 #set $searchdb_name = 'searchdb.xml'
52 #else
53 #set $searchdb_name = 'searchdb.fasta'
54 #end if
55 mkdir output_reports;
56 ln -s $input input.mzml
57 && ln -s $searchdb $searchdb_name
58 && mono \${MORPHEUS_PATH}/morpheus_cl.exe
59 -d="input.mzml"
60 -db=$searchdb_name
61 #if isinstance($searchdb.datatype, $__app__.datatypes_registry.get_datatype_by_extension('uniprotxml').__class__):
62 #if str( $advanced.adv_options_selector) == "set":
63 $advanced.noup
64 #end if
65 #end if
66 ## fm vm fdr mvmi precmt precmtv precmtu
67 #if str($fdr) != '':
68 -fdr=$fdr
69 #end if
70 #if str($mvmi) != '':
71 -mvmi=$mvmi
72 #end if
73 #if str($precmt) != 'None':
74 -precmt=$precmt
75 #end if
76 #if str($precmtv) != '':
77 -precmtv=$precmtv
78 #end if
79 #if str($precmtu) != 'None':
80 -precmtu=$precmtu
81 #end if
82 #if str( $advanced.adv_options_selector) == "set":
83 #if str($advanced.minprecz) != '':
84 -minprecz=$advanced.minprecz
85 #end if
86 #if str($advanced.maxprecz) != '':
87 -maxprecz=$advanced.maxprecz
88 #end if
89 #if str($advanced.at) != '':
90 -at=$advanced.at
91 #end if
92 #if str($advanced.rt) != '':
93 -rt=$advanced.rt
94 #end if
95 #if str($advanced.mp) != '':
96 -mp=$advanced.mp
97 #end if
98 #if str($advanced.mmc) != '':
99 -mmc=$advanced.mmc
100 #end if
101 #if str($advanced.prodmt) != 'None':
102 -prodmt=$advanced.prodmt
103 #end if
104 #if str($advanced.prodmtv) != '':
105 -prodmtv=$advanced.prodmtv
106 #end if
107 #if str($advanced.prodmtu) != 'None':
108 -prodmtu=$advanced.prodmtu
109 #end if
110 #if str($advanced.minpmo) != '':
111 -minpmo=$advanced.minpmo
112 #end if
113 #if str($advanced.maxpmo) != '':
114 -maxpmo=$advanced.maxpmo
115 #end if
116 #if str($advanced.imb) != 'None':
117 -imb=$advanced.imb
118 #end if
119 #if str($advanced.ad) != 'None':
120 -ad=$advanced.ad
121 #end if
122 $advanced.acs $advanced.di $advanced.pmc $advanced.cmu $advanced.mmu
123 #end if
124 #if str($fm) != 'None':
125 #set $fmods = str($fm).replace(',',';')
126 -fm="$fmods"
127 #end if
128 #if str($vm) != 'None':
129 #set $vmods = str($vm).replace(',',';')
130 -vm="$vmods"
131 #end if
132 -mt=\${GALAXY_SLOTS:-4}
133 && ( basepath=`grep 'Input Data File:' input.log.txt | sed 's/Input Data File: \(.*\)input.mzml/\1/'`;
134 for i in summary.tsv input.log.txt input.PSMs.tsv input.unique_peptides.tsv input.protein_groups.tsv input.pep.xml;
135 do cat \$i | sed "s#\${basepath}input.mzml#$input.name#" | sed "s#\${basepath}$searchdb_name#$search.name#" > output_reports/\$i;
136 done )
137 ]]></command>
138 <inputs>
139 <param name="input" type="data" format="indexedmzML" label='Indexed mzML' />
140 <param name="searchdb" type="data" format="fasta,uniprotxml" label="MS Protein Search Database: UniProt Xml or Fasta"/>
141 <param name="fm" type="select" multiple="true" optional="true" label="Fixed Modifications">
142 <expand macro="modification_options" />
143 </param>
144 <param name="vm" type="select" multiple="true" optional="true" label="Variable Modifications">
145 <expand macro="modification_options" />
146 </param>
147 <param name="fdr" type="float" value="1" optional="true" min="0.0" max="100.0" label="FDR (Maximum False Discovery Rate percent)" />
148 <param name="mvmi" type="integer" value="1024" optional="true" min="0" label="Maximum Variable Modification Isoforms Per Peptide" />
149 <param name="precmt" type="select" optional="true" label="Precursor Mass Type">
150 <option value="Monoisotopic">Monoisotopic</option>
151 <option value="Average">Average</option>
152 </param>
153 <param name="precmtv" type="float" value="10." optional="true" label="Precursor Mass Tolerance Value" />
154 <param name="precmtu" type="select" optional="true" label="Precursor Mass Tolerance Units">
155 <option value="ppm" selected="true">ppm</option>
156 <option value="Da">Daltons</option>
157 </param>
158 <conditional name="advanced">
159 <param name="adv_options_selector" type="select" label="Set advanced options?" help="Provides additional controls">
160 <option value="set">Set</option>
161 <option value="do_not_set" selected="True">Do not set</option>
162 </param>
163 <when value="set">
164 <param name="noup" type="boolean" truevalue="" falsevalue="-noup=True" checked="True" label="Use G-PTM with Uniprot Proteome Search Databases" />
165 <param name="minprecz" type="integer" value="2" optional="true" label="Minimum Unknown Precursor Charge State" />
166 <param name="maxprecz" type="integer" value="4" optional="true" label="Maximum Unknown Precursor Charge State" />
167 <param name="at" type="float" value="" optional="true" min="0.0" label="Absolute MS/MS Intensity Threshold" />
168 <param name="rt" type="float" value="" optional="true" min="0.0" label="Relative MS/MS Intensity Threshold" />
169 <param name="mp" type="integer" value="" optional="true" min="-1" label="Maximum Number of MS/MS Peaks" help="to disable set to: -1"/>
170 <param name="acs" type="boolean" truevalue="-acs=True" falsevalue="-acs=False" checked="true" optional="true" label="Assign Charge States" />
171 <param name="di" type="boolean" truevalue="-di=True" falsevalue="-di=False" checked="true" optional="true" label="Deisotope" />
172 <param name="ad" type="select" optional="true" label="Append Decoys on the fly"
173 help="Set to No if Search Database ia a fasta that already includes decoys.">
174 <option value="False">No</option>
175 <option value="True">Yes</option>
176 </param>
177 <param name="mmc" type="integer" value="2" optional="true" min="0" max="20" label="Maximum Missed Cleavages" />
178 <param name="pmc" type="boolean" truevalue="-pmc=True" falsevalue="-pmc=False" checked="false" optional="true" label="Precursor Monoisotopic Peak Correction" />
179 <param name="minpmo" type="integer" value="" optional="true" label="Minimum Precursor Monoisotopic Peak Correction" />
180 <param name="maxpmo" type="integer" value="" optional="true" label="Maximum Precursor Monoisotopic Peak Correction" />
181 <param name="prodmt" type="select" optional="true" label="Product Mass Type">
182 <option value="Monoisotopic">Monoisotopic</option>
183 <option value="Average">Average</option>
184 </param>
185 <param name="prodmtv" type="float" value="" optional="true" label="Product Mass Tolerance Value" />
186 <param name="prodmtu" type="select" optional="true" label="Product Mass Tolerance Units">
187 <option value="Da">Daltons</option>
188 <option value="ppm">ppm</option>
189 </param>
190 <param name="imb" type="select" optional="true" label="Initiator Methionine Behavior">
191 <option value="Variable">Variable</option>
192 <option value="Retain">Retain</option>
193 <option value="Cleave">Cleave</option>
194 </param>
195 <param name="cmu" type="boolean" truevalue="-cmu=True" falsevalue="-cmu=False" checked="false" optional="true" label="Consider Modifications Unique" />
196 <param name="mmu" type="boolean" truevalue="-mmu=True" falsevalue="-mmu=False" checked="false" optional="true" label="Minimize Memory Usage" />
197 </when>
198 <when value="do_not_set"/>
199 </conditional>
200 </inputs>
201 <outputs>
202 <data name="summary" format="txt" label="${input.name.rsplit('.',1)[0]} summary.tsv" from_work_dir="output_reports/summary.tsv" />
203 <data name="log" format="txt" label="${input.name.rsplit('.',1)[0]}.log.txt" from_work_dir="output_reports/input.log.txt" />
204 <data name="output_psms" format="tabular" label="${input.name.rsplit('.',1)[0]}.PSMs.tsv" from_work_dir="output_reports/input.PSMs.tsv" />
205 <data name="output_unique_peptides" format="tabular" label="${input.name.rsplit('.',1)[0]}.unique_peptides.tsv" from_work_dir="output_reports/input.unique_peptides.tsv" />
206 <data name="output_protein_groups" format="tabular" label="${input.name.rsplit('.',1)[0]}.protein_groups.tsv" from_work_dir="output_reports/input.protein_groups.tsv" />
207 <data name="output_pepxml" format="pepxml" label="${input.name.rsplit('.',1)[0]}.pep.xml" from_work_dir="output_reports/input.pep.xml" />
208 </outputs>
209 <tests>
210 <test>
211 <param name="input" value="test_input.mzML" ftype="mzml"/>
212 <param name="searchdb" value="uniprot-proteome_UP000002311-first100entries.fasta" ftype="fasta"/>
213 <param name="fdr" value="1"/>
214 <param name="mvmi" value="1024"/>
215 <param name="precmt" value="Monoisotopic"/>
216 <param name="precmtu" value="Da"/>
217 <param name="precmtv" value="2.5"/>
218 <output name="output_psms">
219 <assert_contents>
220 <has_text text="K.TTGSSSSSSSK.K" />
221 <not_has_text text="carbamidomethylation of C" />
222 <not_has_text text="(oxidation of M)" />
223 </assert_contents>
224 </output>
225 </test>
226 <test>
227 <param name="input" value="test_input.mzML" ftype="mzml"/>
228 <param name="searchdb" value="uniprot-proteome_UP000002311-first100entries.fasta" ftype="fasta"/>
229 <param name="fdr" value="1"/>
230 <param name="mvmi" value="1024"/>
231 <param name="precmt" value="Monoisotopic"/>
232 <param name="precmtu" value="Da"/>
233 <param name="precmtv" value="2.5"/>
234 <param name="fm" value="carbamidomethylation of C"/>
235 <param name="vm" value="oxidation of M"/>
236 <output name="output_psms">
237 <assert_contents>
238 <has_text text="K.VETYM(oxidation of M)ETK.I" />
239 <not_has_text text="K.TTGSSSSSSSK.K" />
240 </assert_contents>
241 </output>
242 </test>
243 <test>
244 <param name="input" value="test_input.mzML" ftype="mzml"/>
245 <param name="searchdb" value="uniprot-proteome_UP000002311Condensed-first100entries.xml" ftype="uniprotxml"/>
246 <param name="fdr" value="1"/>
247 <param name="mvmi" value="1024"/>
248 <param name="precmt" value="Monoisotopic"/>
249 <param name="precmtu" value="Da"/>
250 <param name="precmtv" value="2.5"/>
251 <param name="fm" value="carbamidomethylation of C"/>
252 <param name="vm" value="oxidation of M"/>
253 <output name="output_psms">
254 <assert_contents>
255 <has_text text="R.KRSLFDS(UniProt: Phosphoserine)AFSSR.A" />
256 <not_has_text text="K.KYFLENKIGTDR.R" />
257 </assert_contents>
258 </output>
259 </test>
260 <test>
261 <param name="input" value="test_input.mzML" ftype="mzml"/>
262 <param name="searchdb" value="uniprot-proteome_UP000002311Condensed-first100entries.xml" ftype="uniprotxml"/>
263 <param name="fdr" value="1"/>
264 <param name="mvmi" value="1024"/>
265 <param name="precmt" value="Monoisotopic"/>
266 <param name="precmtu" value="Da"/>
267 <param name="precmtv" value="2.5"/>
268 <param name="fm" value="carbamidomethylation of C"/>
269 <param name="vm" value="oxidation of M"/>
270 <param name="adv_options_selector" value="set"/>
271 <param name="prodmtv" value=".01"/>
272 <output name="output_psms">
273 <assert_contents>
274 <has_text text="K.KYFLENKIGTDR.R" />
275 <not_has_text text="R.KRSLFDS(UniProt: Phosphoserine)AFSSR.A" />
276 </assert_contents>
277 </output>
278 </test>
279
280 </tests>
281 <help><![CDATA[
282 Morpheus_ is a database search algorithm for high-resolution tandem mass spectra.
283
284 When a Uniprot Proteome XML file is used for the search database, Morpheus will include all known modifications from the proteome in searching for peptide spectral matches. To fetch Uniprot Proteome XML files see: http://www.uniprot.org/help/retrieve_sets
285
286 **INPUTS**
287
288 - spectral data file in mzML format
289 - protein search database, either a fasta file or a uniprot proteome xml file
290
291 **OUTPUTS**
292
293 - summary.tsv
294 - input.log.txt
295 - input.PSMs.tsv
296 - input.unique_peptides.tsv
297 - input.protein_groups.tsv
298 - input.pep.xml
299
300 .. _Morpheus: http://morpheus-ms.sourceforge.net/
301
302 ]]></help>
303 <citations>
304 <citation type="doi">10.1021/pr301024c</citation>
305 </citations>
306 </tool>