0
|
1 <tool id="peptide_shaker" name="Peptide Shaker" version="0.1.0">
|
|
2 <!-- TODO: Set defaults for weights correctly -->
|
|
3 <description>
|
|
4 Peform protein identification combining X! Tandem and OMSSA (using SearchGUI) and PeptideShaker pipeline.
|
|
5 </description>
|
|
6 <command>
|
2
|
7 #from datetime import datetime
|
|
8 #set $exp_str = "Galaxy Experiment %s" % datetime.now().strftime("%Y%m%d%H%M%s")
|
|
9 #set $samp_str = "Sample %s" % datetime.now().strftime("%Y%m%d%H%M%s")
|
0
|
10 mkdir spectra;
|
|
11 mkdir output;
|
|
12 mkdir output_reports;
|
|
13 cwd=`pwd`;
|
|
14 #for $mgf in $peak_lists:
|
|
15 #set $input_name = $mgf.display_name.replace(".mgf", "") + ".mgf"
|
|
16 ln -s '$mgf' 'spectra/$input_name';
|
|
17 #end for
|
|
18 SearchCLI \
|
|
19 -spectrum_files \$cwd/spectra \
|
|
20 -output_folder \$cwd/output \
|
|
21 -ppm $precursor_ion_tol_units \
|
|
22 -prec_tol $precursor_ion_tol \
|
|
23 -frag_tol $fragment_tol \
|
|
24 -enzyme '$enzyme' \
|
|
25 #set $fixed_mods_str = $fixed_modifications or ''
|
|
26 #set $variable_mods_str = $variable_modifications or ''
|
|
27 #if $fixed_mods_str
|
|
28 -fixed_mods "$fixed_mods_str" \
|
|
29 #end if
|
|
30 #if $variable_mods_str
|
|
31 -variable_mods "$variable_mods_str" \
|
|
32 #end if
|
|
33 -mc $missed_cleavages \
|
|
34 #if $advanced.specify:
|
|
35 -xtandem $advanced.xtandem \
|
|
36 #if $advanced.omssa.run_omssa
|
|
37 #set $omssa = 1
|
|
38 #else
|
|
39 #set $omssa = 0
|
|
40 #end if
|
|
41 -omssa $omssa \
|
|
42 #if $omssa == 1
|
|
43 -hitlist_length ${advanced.omssa.hitlist_length} \
|
|
44 -remove_prec ${advanced.omssa.remove_precursor} \
|
|
45 -scale_prec ${advanced.omssa.scale_precursor} \
|
|
46 -estimate_charge ${advanced.omssa.estimate_charge} \
|
|
47 #end if
|
|
48 #end if
|
|
49 -db $input_database;
|
|
50 PeptideShakerCLI \
|
2
|
51 -experiment '$exp_str' \
|
|
52 -sample '$samp_str' \
|
0
|
53 -replicate 1 \
|
|
54 -spectrum_files \$cwd/spectra \
|
|
55 -identification_files \$cwd/output \
|
|
56 -search_params \$cwd/output/SearchGUI.parameters \
|
|
57 -out_txt_1 \$cwd/output_reports \
|
|
58 #if $processing_options.specify
|
|
59 -protein_FDR ${processing_options.protein_fdr} \
|
|
60 -peptide_FDR ${processing_options.peptide_fdr} \
|
|
61 -psm_FDR ${processing_options.psm_fdr} \
|
|
62 -psm_FLR ${processing_options.psm_flr} \
|
|
63 #if str($processing_options.a_score.use) == "1"
|
|
64 #set $a_score = 1
|
|
65 #else
|
|
66 #set $a_score = 0
|
|
67 #end if
|
|
68 -a_score $a_score \
|
|
69 #if str($a_score) == "1"
|
|
70 -a_score_neutral_losses ${processing_options.a_score.neutral_losses} \
|
|
71 #end if
|
|
72 #end if
|
|
73 #if $filtering_options.specify
|
|
74 -min_peptide_length ${filtering_options.min_peptide_length} \
|
|
75 -max_peptide_length ${filtering_options.max_peptide_length} \
|
|
76 -max_precursor_error ${filtering_options.max_precursor_error} \
|
|
77 -max_precursor_error_type ${filtering_options.max_precursor_error_type} \
|
|
78 -max_xtandem_e ${filtering_options.max_xtandem_e} \
|
|
79 -max_omssa_e ${filtering_options.max_omssa_e} \
|
|
80 -exclude_unknown_ptms ${filtering_options.exclude_unknown_ptms} \
|
|
81 #end if
|
|
82 -out \$cwd/output.cps ;
|
|
83 mv output_reports/*peptides.txt peptides.txt ;
|
|
84 mv output_reports/*psms.txt psms.txt ;
|
|
85 mv output_reports/*proteins.txt proteins.txt
|
|
86 </command>
|
|
87 <stdio>
|
|
88 <exit_code range="1:" level="fatal" description="Job Failed" />
|
|
89 </stdio>
|
|
90 <inputs>
|
|
91 <param format="fasta" name="input_database" type="data" label="Protein Database"/>
|
|
92 <param format="mgf" name="peak_lists" type="data" multiple="true" label="Input Peak Lists (mgf)" />
|
|
93 <param name="precursor_ion_tol_units" type="select" label="Precursor Ion Tolerance Units">
|
|
94 <option value="1">Parts per million (ppm)</option>
|
|
95 <option value="0">Daltons</option>
|
|
96 </param>
|
|
97 <param name="precursor_ion_tol" type="float" value="10" label="Percursor Ion Tolerance" />
|
|
98 <param name="fragment_tol" type="float" value="0.5" label="Fragment Tolerance (Daltons)" />
|
|
99 <param name="enzyme" type="select" label="Enzyme">
|
|
100 <option value="Trypsin">Trypsin</option>
|
|
101 <option value="Arg-C">Arg-C</option>
|
|
102 <option value="CNBr">CNBr</option>
|
|
103 <option value="Chymotrypsin (FYWL)">Chymotrypsin (FYWL)</option>
|
|
104 <option value="Formic Acid">Formic Acid</option>
|
|
105 <option value="Lys-C">Lys-C</option>
|
|
106 <option value="Lys-C, no P rule">Lys-C, no P rule</option>
|
|
107 <option value="Pepsin A">Pepsin A</option>
|
|
108 <option value="Trypsin + CNBr">Trypsin + CNBr</option>
|
|
109 <option value="Trypsin + Chymotrypsin (FYWLKR)">Trypsin + Chymotrypsin (FYWLKR)</option>
|
|
110 <option value="Trypsin, no P rule">Trypsin, no P rule</option>
|
|
111 <option value="whole protein">whole protein</option>
|
|
112 <option value="Asp-N">Asp-N</option>
|
|
113 <option value="Glu-C">Glu-C</option>
|
|
114 <option value="Asp-N + Glu-C">Asp-N + Glu-C</option>
|
|
115 <option value="Top-Down">Top-Down</option>
|
|
116 <option value="Semi-Tryptic">Semi-Tryptic</option>
|
|
117 <option value="No enzyme">No enzyme</option>
|
|
118 <option value="Chymotrypsin, no P rule (FYWL)">Chymotrypsin, no P rule (FYWL)</option>
|
|
119 <option value="Asp-N (DE)">Asp-N (DE)</option>
|
|
120 <option value="Glu-C (DE)">Glu-C (DE)</option>
|
|
121 <option value="Lys-N (K)">Lys-N (K)</option>
|
|
122 <option value="Thermolysin, no P rule">Thermolysin, no P rule</option>
|
|
123 <option value="Semi-Chymotrypsin (FYWL)">Semi-Chymotrypsin (FYWL)</option>
|
|
124 <option value="Semi-Glu-C">Semi-Glu-C</option>
|
|
125 </param>
|
|
126 <param name="missed_cleavages" type="integer" value="2" label="Maximum Missed Cleavages" />
|
|
127 <param name="fixed_modifications" type="select" label="Fixed Modification" multiple="true">
|
|
128 <options from_file="searchgui_mods.loc">
|
|
129 <column name="name" index="0" />
|
|
130 <column name="value" index="0" />
|
|
131 </options>
|
|
132 </param>
|
|
133 <param name="variable_modifications" type="select" label="Variable Modification" multiple="true">
|
|
134 <options from_file="searchgui_mods.loc">
|
|
135 <column name="name" index="0" />
|
|
136 <column name="value" index="0" />
|
|
137 </options>
|
|
138 </param>
|
|
139 <param name="min_charge" label="Minimum Charge" value="2" type="integer" />
|
|
140 <param name="max_charge" label="Maximum Charge" value="4" type="integer" />
|
|
141 <param name="forward_ion" label="Forward Ion" type="select">
|
|
142 <option value="a">a</option>
|
|
143 <option value="b" selected="true">b</option>
|
|
144 <option value="c">c</option>
|
|
145 </param>
|
|
146 <param name="reverse_ion" label="Reverse Ion" type="select">
|
|
147 <option value="x">x</option>
|
|
148 <option value="y" selected="true">y</option>
|
|
149 <option value="z">z</option>
|
|
150 </param>
|
|
151 <conditional name="advanced">
|
|
152 <param name="specify" label="Specify Advanced Search Options" type="boolean" truevalue="true" falsevalue="false" />
|
|
153 <when value="false" />
|
|
154 <when value="true">
|
|
155 <param name="xtandem" label="Run X! Tandem" type="boolean" truevalue="1" falsevalue="0" checked="true" />
|
|
156 <conditional name="omssa">
|
|
157 <param name="run_omssa" label="Run OMSSA" type="boolean" truevalue="1" falsevalue="0" checked="true" />
|
|
158 <when value="0" />
|
|
159 <when value="1">
|
|
160 <param name="hitlist_length" label="OMSSA: Hit List Length" type="integer" value="25" />
|
|
161 <param name="remove_precursor" label="OMSSA: Remove Precurosr" type="boolean" truevalue="1" falsevalue="0" checked="true"/>
|
|
162 <param name="scale_precursor" label="OMSSA: Scale Precursor Mass" type="boolean" truevalue="1" falsevalue="0" checked="false"/>
|
|
163 <param name="estimate_charge" label="OMSSA: Estimate Charge" type="boolean" truevalue="1" falsevalue="0" checked="true" />
|
|
164 </when>
|
|
165 </conditional>
|
|
166 </when>
|
|
167 </conditional>
|
|
168 <conditional name="processing_options">
|
|
169 <param name="specify" label="Specify Advanced PeptideShaker Processing Options" type="boolean" truevalue="true" falsevalue="false" />
|
|
170 <when value="false" />
|
|
171 <when value="true">
|
|
172 <param name="protein_fdr" label="FDR at the protein level" help="In percent (default 1% FDR: '1')" value="1" type="float" />
|
|
173 <param name="peptide_fdr" label="FDR at the peptide level" help="In percent (default 1% FDR: '1')" value="1" type="float" />
|
|
174 <param name="psm_fdr" label="FDR at the PSM level" help="In percent (default 1% FDR: '1')" value="1" type="float" />
|
|
175 <param name="psm_flr" label="FLR at the PSM level" help="In percent (default 1% FLR: '1'). Percent for peptides with different potential modification sites and one variable modification." value="1" type="float" />
|
|
176 <conditional name="a_score">
|
|
177 <param name="use" label="Calculate A Score" type="boolean" truevalue="1" falsevalue="0" checked="true" />
|
|
178 <when value="0" />
|
|
179 <when value="1">
|
|
180 <param name="neutral_losses" label="Include Neutral Losses in A Score" type="boolean" truevalue="1" falsevalue="0" />
|
|
181 </when>
|
|
182 </conditional>
|
|
183 <!-- SKIPPING -protein_fraction_mw_confidence ${processing_options.protein_fraction_mw_confidence} -->
|
|
184 </when>
|
|
185 </conditional>
|
|
186 <conditional name="filtering_options">
|
|
187 <param name="specify" label="Specify Advanced PeptideShaker Filtering Options" type="boolean" truevalue="true" falsevalue="false" />
|
|
188 <when value="false" />
|
|
189 <when value="true">
|
|
190 <param name="min_peptide_length" label="Minimum Peptide Length" value="6" type="integer" />
|
|
191 <param name="max_peptide_length" label="Maximum Peptide Length" value="30" type="integer" />
|
|
192 <param name="max_precursor_error" label="Maximum Precursor Error" value="10" type="float" help="Next option specifies units (Da or ppm)." />
|
|
193 <param name="max_precursor_error_type" label="Maximum Precursor Error Type" type="select">
|
|
194 <option value="0">ppm</option>
|
|
195 <option value="1">Daltons</option>
|
|
196 </param>
|
|
197 <param name="max_xtandem_e" label="Maximum X! Tandem E Value" value="100" type="float" help="" />
|
|
198 <param name="max_omssa_e" label="Maximum OMSSA E Value" value="100" type="float" help="" />
|
|
199 <param name="exclude_unknown_ptms" label="Exclude Unknown PTMs" type="boolean" truevalue="1" falsevalue="0" checked="true" />
|
|
200 </when>
|
|
201 </conditional>
|
|
202 </inputs>
|
|
203 <outputs>
|
|
204 <data format="cps" name="output" label="PeptideShaker CPS results for ${on_string}" from_work_dir="output.cps" />
|
|
205 <data format="tabular" name="output_peptides" label="PeptideShaker Peptide Report for ${on_string}" from_work_dir="peptides.txt" />
|
|
206 <data format="tabular" name="output_proteins" label="PeptideShaker Protein Report for ${on_string}" from_work_dir="proteins.txt" />
|
|
207 <data format="tabular" name="output_psms" label="PeptideShaker PSM Report for ${on_string}" from_work_dir="psms.txt" />
|
|
208 </outputs>
|
|
209 <requirements>
|
5
|
210 <requirement type="package" version="0.20.1">PeptideShaker</requirement>
|
10
|
211 <requirement type="package" version="1.14.1">SearchGUI</requirement>
|
0
|
212 </requirements>
|
|
213 <help>
|
|
214 **What it does**
|
|
215
|
2
|
216 Runs multiple search engines (X! Tandem and OMSSA) on any number of MGF peak lists using the SearchGUI application and combines the result via PeptideShaker.
|
|
217
|
0
|
218 ------
|
|
219
|
|
220 **Citation**
|
|
221
|
|
222 For the underlying tool, please cite `TODO`
|
|
223
|
2
|
224 If you use this tool in Galaxy, please cite Chilton J, et al. https://bitbucket.org/galaxyp/galaxyp-toolshed-peptideshaker
|
0
|
225 </help>
|
|
226 </tool>
|