|
0
|
1 <tool id="meme_meme" name="MEME" version="4.11.0.0">
|
|
|
2 <description>- Multiple Em for Motif Elicitation</description>
|
|
|
3 <requirements>
|
|
|
4 <requirement type="package" version="9.07">ghostscript</requirement>
|
|
|
5 <requirement type="package" version="4.11.0">meme</requirement>
|
|
|
6 </requirements>
|
|
|
7 <command>
|
|
|
8 <![CDATA[
|
|
|
9 meme "$input1"
|
|
|
10 -o "${html_outfile.files_path}"
|
|
|
11 -nostatus
|
|
|
12 #if str( $options_type.options_type_selector ) == 'advanced':
|
|
|
13 -sf "${ str( $options_type.sf ).replace( ' ', '_' ) }"
|
|
|
14 -${options_type.alphabet_type.alphabet_type_selector}
|
|
|
15 -mod "${options_type.mod_type.mod_type_selector}"
|
|
|
16 -nmotifs "${options_type.nmotifs}"
|
|
|
17 -wnsites "${options_type.wnsites}"
|
|
|
18 #if $options_type.evt < float('inf'):
|
|
|
19 -evt "${options_type.evt}"
|
|
|
20 #end if
|
|
|
21 #if str( $options_type.mod_type.mod_type_selector ) != 'oops':
|
|
|
22 #if str( $options_type.mod_type.motif_occurrence_type.motif_occurrence_type_selector ) == 'nsites':
|
|
|
23 -nsites "${options_type.mod_type.motif_occurrence_type.nsites}"
|
|
|
24 #elif str( $options_type.mod_type.motif_occurrence_type.motif_occurrence_type_selector ) == 'min_max_sites':
|
|
|
25 -minsites "${options_type.mod_type.motif_occurrence_type.minsites}"
|
|
|
26 -maxsites "${options_type.mod_type.motif_occurrence_type.maxsites}"
|
|
|
27 #end if
|
|
|
28 #end if
|
|
|
29 #if str( $options_type.motif_width_type.motif_width_type_selector ) == 'exact':
|
|
|
30 -w "${options_type.motif_width_type.width}"
|
|
|
31 #else
|
|
|
32 -minw "${options_type.motif_width_type.minw}"
|
|
|
33 -maxw "${options_type.motif_width_type.maxw}"
|
|
|
34 #end if
|
|
|
35 #if str( $options_type.motif_trim_type.motif_trim_type_selector ) == 'nomatrim':
|
|
|
36 -nomatrim
|
|
|
37 #else
|
|
|
38 -wg "${options_type.motif_trim_type.wg}"
|
|
|
39 -ws "${options_type.motif_trim_type.ws}"
|
|
|
40 ${options_type.motif_trim_type.noendgaps}
|
|
|
41 #end if
|
|
|
42 #if str( $options_type.bfile ) != 'None':
|
|
|
43 -bfile "${options_type.bfile}"
|
|
|
44 #end if
|
|
|
45 #if str( $options_type.pspfile ) != 'None':
|
|
|
46 -psp "${options_type.pspfile}"
|
|
|
47 #end if
|
|
|
48 #if str( $options_type.alphabet_type.alphabet_type_selector ) == "dna":
|
|
|
49 ${options_type.alphabet_type.revcomp} ${options_type.alphabet_type.pal}
|
|
|
50 #end if
|
|
|
51 -maxiter "${options_type.maxiter}"
|
|
|
52 -distance "${options_type.distance}"
|
|
|
53 -prior "${options_type.alphabet_type.prior_type.prior_type_selector}"
|
|
|
54 #if str( $options_type.alphabet_type.prior_type.prior_type_selector ) != 'addone':
|
|
|
55 -b "${options_type.alphabet_type.prior_type.prior_b}"
|
|
|
56 #if str( $options_type.alphabet_type.prior_type.plib ) != 'None':
|
|
|
57 -plib "${options_type.alphabet_type.prior_type.plib}"
|
|
|
58 #end if
|
|
|
59 #end if
|
|
|
60 #if str( $options_type.alphabet_type.spmap_type.spmap_type_selector ) == 'cons':
|
|
|
61 -cons "${options_type.alphabet_type.spmap_type.cons}"
|
|
|
62 #else
|
|
|
63 -spmap "${options_type.alphabet_type.spmap_type.spmap_type_selector}"
|
|
|
64 -spfuzz "${options_type.alphabet_type.spmap_type.spfuzz}"
|
|
|
65 #end if
|
|
|
66 #if str( $options_type.branching_type.branching_type_selector ) == 'x_branch':
|
|
|
67 -x_branch
|
|
|
68 -bfactor "${options_type.branching_type.bfactor}"
|
|
|
69 -heapsize "${options_type.branching_type.heapsize}"
|
|
|
70 #end if
|
|
|
71 #end if
|
|
|
72 2>&1 || echo "Error running MEME."
|
|
|
73 && mv ${html_outfile.files_path}/meme.html ${html_outfile}
|
|
|
74 && mv ${html_outfile.files_path}/meme.txt ${txt_outfile}
|
|
|
75 && mv ${html_outfile.files_path}/meme.xml ${xml_outfile}
|
|
|
76 ]]>
|
|
|
77 </command>
|
|
|
78 <inputs>
|
|
|
79 <param format="fasta" name="input1" type="data" label="Sequences"/>
|
|
|
80 <conditional name="options_type">
|
|
|
81 <param name="options_type_selector" type="select" label="Options Configuration">
|
|
|
82 <option value="basic" selected="true">Basic</option>
|
|
|
83 <option value="advanced">Advanced</option>
|
|
|
84 </param>
|
|
|
85 <when value="basic" />
|
|
|
86 <when value="advanced">
|
|
|
87 <param name="sf" type="text" value="Galaxy FASTA Input" label="Name of sequence set" argument="-sf"/>
|
|
|
88 <conditional name="alphabet_type">
|
|
|
89 <param name="alphabet_type_selector" type="select" label="Sequence Alphabet">
|
|
|
90 <option value="protein">Protein</option>
|
|
|
91 <option value="dna" selected="true">DNA</option>
|
|
|
92 </param>
|
|
|
93 <when value="protein">
|
|
|
94 <conditional name="prior_type">
|
|
|
95 <param name="prior_type_selector" type="select" label="Choice of prior" argument="-prior">
|
|
|
96 <option value="dirichlet">simple Dirichlet prior</option>
|
|
|
97 <option value="dmix" selected="true">mixture of Dirichlets prior</option>
|
|
|
98 <option value="mega">extremely low variance dmix</option>
|
|
|
99 <option value="megap">mega for all but last iteration of EM; dmix on last iteration</option>
|
|
|
100 <option value="addone">add +1 to each observed count</option>
|
|
|
101 </param>
|
|
|
102 <when value="dirichlet">
|
|
|
103 <param name="prior_b" type="float" value="0.01" label="strength of prior on model parameters" argument="-b"/>
|
|
|
104 <param name="plib" type="data" format="txt" optional="True" label="Dirichlet prior file" argument="-plib"/>
|
|
|
105 </when>
|
|
|
106 <when value="dmix">
|
|
|
107 <param name="prior_b" type="float" value="0" label="strength of prior on model parameters" argument="-b"/>
|
|
|
108 <param name="plib" type="data" format="txt" optional="True" label="Dirichlet prior file" argument="-plib"/>
|
|
|
109 </when>
|
|
|
110 <when value="mega">
|
|
|
111 <param name="prior_b" type="float" value="0" label="strength of prior on model parameters" argument="-b"/>
|
|
|
112 <param name="plib" type="data" format="txt" optional="True" label="Dirichlet prior file" argument="-plib"/>
|
|
|
113 </when>
|
|
|
114 <when value="megap">
|
|
|
115 <param name="prior_b" type="float" value="0" label="strength of prior on model parameters" argument="-b"/>
|
|
|
116 <param name="plib" type="data" format="txt" optional="True" label="Dirichlet prior file" argument="-plib"/>
|
|
|
117 </when>
|
|
|
118 <when value="addone" />
|
|
|
119 </conditional>
|
|
|
120 <conditional name="spmap_type">
|
|
|
121 <param name="spmap_type_selector" type="select" label="EM starting points" argument="-spmap">
|
|
|
122 <option value="uni">uni</option>
|
|
|
123 <option value="pam" selected="true">pam</option>
|
|
|
124 <option value="cons">Use starting point from string</option>
|
|
|
125 </param>
|
|
|
126 <when value="uni">
|
|
|
127 <param name="spfuzz" type="float" value="0.5" label="Fuzziness of the mapping" argument="-spfuzz"/>
|
|
|
128 </when>
|
|
|
129 <when value="pam">
|
|
|
130 <param name="spfuzz" type="integer" value="120" label="Fuzziness of the mapping" argument="-spfuzz"/>
|
|
|
131 </when>
|
|
|
132 <when value="cons">
|
|
|
133 <param name="cons" type="text" value="" label="Starting point from string" argument="-cons"/>
|
|
|
134 </when>
|
|
|
135 </conditional>
|
|
|
136 </when>
|
|
|
137 <when value="dna">
|
|
|
138 <param name="revcomp" label="Check reverse complement" type="boolean" truevalue="-revcomp" falsevalue="" checked="False"/>
|
|
|
139 <param name="pal" label="Check for palindromes" type="boolean" truevalue="-pal" falsevalue="" checked="False"/>
|
|
|
140 <conditional name="prior_type">
|
|
|
141 <param name="prior_type_selector" type="select" label="Sequence Alphabet" argument="-prior">
|
|
|
142 <option value="dirichlet" selected="true">simple Dirichlet prior</option>
|
|
|
143 <option value="dmix">mixture of Dirichlets prior</option>
|
|
|
144 <option value="mega">extremely low variance dmix</option>
|
|
|
145 <option value="megap">mega for all but last iteration of EM; dmix on last iteration</option>
|
|
|
146 <option value="addone">add +1 to each observed count</option>
|
|
|
147 </param>
|
|
|
148 <when value="dirichlet">
|
|
|
149 <param name="prior_b" type="float" value="0.01" label="strength of prior on model parameters" argument="-b"/>
|
|
|
150 <param name="plib" type="data" format="txt" optional="True" label="Dirichlet prior file" argument="-plib"/>
|
|
|
151 </when>
|
|
|
152 <when value="dmix">
|
|
|
153 <param name="prior_b" type="float" value="0" label="strength of prior on model parameters" argument="-b"/>
|
|
|
154 <param name="plib" type="data" format="txt" optional="True" label="Dirichlet prior file" argument="-plib"/>
|
|
|
155 </when>
|
|
|
156 <when value="mega">
|
|
|
157 <param name="prior_b" type="float" value="0" label="strength of prior on model parameters" argument="-b"/>
|
|
|
158 <param name="plib" type="data" format="txt" optional="True" label="Dirichlet prior file" argument="-plib"/>
|
|
|
159 </when>
|
|
|
160 <when value="megap">
|
|
|
161 <param name="prior_b" type="float" value="0" label="strength of prior on model parameters" argument="-b"/>
|
|
|
162 <param name="plib" type="data" format="txt" optional="True" label="Dirichlet prior file" argument="-plib"/>
|
|
|
163 </when>
|
|
|
164 <when value="addone" />
|
|
|
165 </conditional>
|
|
|
166 <conditional name="spmap_type">
|
|
|
167 <param name="spmap_type_selector" type="select" label="EM starting points" argument="-spmap">
|
|
|
168 <option value="uni" selected="true">uni</option>
|
|
|
169 <option value="pam">pam</option>
|
|
|
170 <option value="cons">Use starting point from string</option>
|
|
|
171 </param>
|
|
|
172 <when value="uni">
|
|
|
173 <param name="spfuzz" type="float" value="0.5" label="Fuzziness of the mapping" argument="-spfuzz"/>
|
|
|
174 </when>
|
|
|
175 <when value="pam">
|
|
|
176 <param name="spfuzz" type="integer" value="120" label="Fuzziness of the mapping" argument="-spfuzz"/>
|
|
|
177 </when>
|
|
|
178 <when value="cons">
|
|
|
179 <param name="cons" type="text" value="" label="Starting point from string" argument="-cons"/>
|
|
|
180 </when>
|
|
|
181 </conditional>
|
|
|
182 </when>
|
|
|
183 </conditional>
|
|
|
184 <param name="nmotifs" type="integer" value="1" label="Number of different motifs to search" argument="-nmotifs" />
|
|
|
185 <param name="evt" type="float" value="inf" label="E-value to stop looking for motifs" argument="-evt"/>
|
|
|
186 <conditional name="mod_type">
|
|
|
187 <param name="mod_type_selector" type="select" label="Expected motif distribution" argument="-mod">
|
|
|
188 <option value="oops">One Occurrence Per Sequence</option>
|
|
|
189 <option value="zoops" selected="true">Zero or One Occurrence Per Sequence</option>
|
|
|
190 <option value="anr">Any Number of Repetitions</option>
|
|
|
191 </param>
|
|
|
192 <when value="oops" />
|
|
|
193 <when value="zoops">
|
|
|
194 <conditional name="motif_occurrence_type">
|
|
|
195 <param name="motif_occurrence_type_selector" type="select" label="Number of motif occurrences">
|
|
|
196 <option value="default" selected="true">Use defaults</option>
|
|
|
197 <option value="nsites">nsites</option>
|
|
|
198 <option value="min_max_sites">min and max sites</option>
|
|
|
199 </param>
|
|
|
200 <when value="default" />
|
|
|
201 <when value="nsites">
|
|
|
202 <param name="nsites" type="integer" value="1" label="Search nsites number of occurrences" argument="-nsites"/>
|
|
|
203 </when>
|
|
|
204 <when value="min_max_sites">
|
|
|
205 <param name="minsites" type="integer" value="1" label="minsites" argument="-minsites"/>
|
|
|
206 <param name="maxsites" type="integer" value="50" label="maxsites" argument="-maxsites"/>
|
|
|
207 </when>
|
|
|
208 </conditional>
|
|
|
209 </when>
|
|
|
210 <when value="anr">
|
|
|
211 <conditional name="motif_occurrence_type">
|
|
|
212 <param name="motif_occurrence_type_selector" type="select" label="Number of motif occurrences">
|
|
|
213 <option value="default" selected="true">Use defaults</option>
|
|
|
214 <option value="nsites">nsites</option>
|
|
|
215 <option value="min_max_sites">min and max sites</option>
|
|
|
216 </param>
|
|
|
217 <when value="default" />
|
|
|
218 <when value="nsites">
|
|
|
219 <param name="nsites" type="integer" value="1" label="Search nsites number of occurrences" argument="-nsites"/>
|
|
|
220 </when>
|
|
|
221 <when value="min_max_sites">
|
|
|
222 <param name="minsites" type="integer" value="1" label="minsites" argument="-minsites"/>
|
|
|
223 <param name="maxsites" type="integer" value="50" label="maxsites" argument="-maxsites"/>
|
|
|
224 </when>
|
|
|
225 </conditional>
|
|
|
226 </when>
|
|
|
227 </conditional>
|
|
|
228 <param name="wnsites" type="float" value="0.8" label="Weight on the prior on nsites" argument="-wnsites"/>
|
|
|
229 <conditional name="motif_width_type">
|
|
|
230 <param name="motif_width_type_selector" type="select" label="Motif width type">
|
|
|
231 <option value="exact">Exact width</option>
|
|
|
232 <option value="range" selected="true">Specify a range</option>
|
|
|
233 </param>
|
|
|
234 <when value="exact">
|
|
|
235 <param name="width" type="integer" value="10" label="Width of motif to search" argument="-w"/>
|
|
|
236 </when>
|
|
|
237 <when value="range">
|
|
|
238 <param name="minw" type="integer" value="8" label="Min width of motif to search" argument="-minw"/>
|
|
|
239 <param name="maxw" type="integer" value="50" label="Max width of motif to search" argument="-maxw"/>
|
|
|
240 </when>
|
|
|
241 </conditional>
|
|
|
242 <conditional name="motif_trim_type">
|
|
|
243 <param name="motif_trim_type_selector" type="select" label="Motif trim type">
|
|
|
244 <option value="nomatrim">No motif trim</option>
|
|
|
245 <option value="trim" selected="true">Trim motif</option>
|
|
|
246 </param>
|
|
|
247 <when value="nomatrim" />
|
|
|
248 <when value="trim">
|
|
|
249 <param name="wg" type="integer" value="11" label="Gap cost" argument="-wg"/>
|
|
|
250 <param name="ws" type="integer" value="1" label="Space cost" argument="-ws"/>
|
|
|
251 <param name="noendgaps" label="Do not penalize endgaps" type="boolean" truevalue="-noendgaps" falsevalue="" checked="False"/>
|
|
|
252 </when>
|
|
|
253 </conditional>
|
|
|
254 <param name="bfile" type="data" format="txt" optional="True" label="Background Model" argument="-bfile"/>
|
|
|
255 <param name="pspfile" type="data" format="txt" optional="True" label="Position-Specific Prior" argument="-psp"/>
|
|
|
256 <param name="maxiter" type="integer" value="50" label="Number of iterations of EM to run" argument="-maxiter"/>
|
|
|
257 <param name="distance" type="float" value="0.001" label="Convergence criterion" argument="-distance"/>
|
|
|
258 <conditional name="branching_type">
|
|
|
259 <param name="branching_type_selector" type="select" label="x-branching type">
|
|
|
260 <option value="x_branch">Perform x-branching</option>
|
|
|
261 <option value="no_x_branch" selected="true">No x-branching</option>
|
|
|
262 </param>
|
|
|
263 <when value="no_x_branch" />
|
|
|
264 <when value="x_branch">
|
|
|
265 <param name="bfactor" type="integer" value="3" label="Number of iterations of branching" argument="-bfactor"/>
|
|
|
266 <param name="heapsize" type="integer" value="64" label="Maximum number of heaps to use" argument="-heapsize"/>
|
|
|
267 </when>
|
|
|
268 </conditional>
|
|
|
269 </when>
|
|
|
270 </conditional>
|
|
|
271 <param name="non_commercial_use" label="I certify that I am not using this tool for commercial purposes." type="boolean" truevalue="NON_COMMERCIAL_USE" falsevalue="COMMERCIAL_USE" checked="False">
|
|
|
272 <validator type="expression" message="This tool is only available for non-commercial use.">value == True</validator>
|
|
|
273 </param>
|
|
|
274 </inputs>
|
|
|
275 <outputs>
|
|
|
276 <data format="html" name="html_outfile" label="${tool.name} on ${on_string} (html)"/>
|
|
|
277 <data format="txt" name="txt_outfile" label="${tool.name} on ${on_string} (text)"/>
|
|
|
278 <data format="memexml" name="xml_outfile" label="${tool.name} on ${on_string} (xml)"/>
|
|
|
279 </outputs>
|
|
|
280 <tests>
|
|
|
281 <test>
|
|
|
282 <param name="input1" value="meme_input_1.fasta" ftype="fasta" dbkey="hg19"/>
|
|
|
283 <param name="options_type_selector" value="basic"/>
|
|
|
284 <param name="non_commercial_use" value="True"/>
|
|
|
285 <output name="html_outfile" file="meme_output_html_1.html" compare="contains"/>
|
|
|
286 <output name="txt_outfile" file="meme_output_txt_1.txt" lines_diff="12"/>
|
|
|
287 <output name="xml_outfile" file="meme_output_xml_1.xml" lines_diff="8"/>
|
|
|
288 </test>
|
|
|
289 <test>
|
|
|
290 <param name="input1" value="meme_input_1.fasta" ftype="fasta" dbkey="hg19"/>
|
|
|
291 <param name="options_type_selector" value="advanced"/>
|
|
|
292 <param name="plib" value="prior30.plib" ftype="txt"/>
|
|
|
293 <param name="non_commercial_use" value="True"/>
|
|
|
294 <output name="html_outfile" file="meme_output_html_2.html" compare="contains"/>
|
|
|
295 <output name="txt_outfile" file="meme_output_txt_2.txt" lines_diff="12"/>
|
|
|
296 <output name="xml_outfile" file="meme_output_xml_2.xml" lines_diff="8"/>
|
|
|
297 </test>
|
|
|
298 </tests>
|
|
|
299 <help>
|
|
|
300
|
|
|
301 .. class:: warningmark
|
|
|
302
|
|
|
303 **WARNING: This tool is only available for non-commercial use. Use for educational, research and non-profit purposes is permitted.
|
|
|
304 Before using, be sure to review, agree, and comply with the license.**
|
|
|
305
|
|
|
306 If you want to specify sequence weights, you must include them at the top of your input FASTA file.
|
|
|
307
|
|
|
308 MEME discovers novel, ungapped motifs (recurring, fixed-length patterns) in your sequences (sample output from sequences).
|
|
|
309 MEME splits variable-length patterns into two or more separate motifs. A motif is a sequence pattern that occurs repeatedly
|
|
|
310 in a group of related sequences. MEME represents motifs as position-dependent letter-probability matrices which describe the
|
|
|
311 probability of each possible letter at each position in the pattern. Individual MEME motifs do not contain gaps. Patterns
|
|
|
312 with variable-length gaps are split by MEME into two or more separate motifs. MEME takes as input a group of sequences and
|
|
|
313 outputs as many motifs as requested. MEME uses statistical modeling techniques to automatically choose the best width, number
|
|
|
314 of occurrences, and description for each motif.
|
|
|
315
|
|
|
316 .. class:: infomark
|
|
|
317
|
|
|
318 For detailed information on MEME, click here_, or view the license_.
|
|
|
319
|
|
|
320 .. _here: http://meme-suite.org/doc/meme.html?man_type=web
|
|
|
321 .. _license: http://meme-suite.org/doc/copyright.html?man_type=web
|
|
|
322
|
|
|
323 </help>
|
|
|
324 <citations>
|
|
|
325 <citation type="bibtex">
|
|
|
326 @published{Proceedings of the Second International Conference on Intelligent Systems for Molecular Biology, pp. 28-36, AAAI Press, Menlo Park, California,
|
|
|
327 author = {Bailey,Timothy L. and Elkan, Charles},
|
|
|
328 title = {Fitting a mixture model by expectation maximization to discover motifs in biopolymers},
|
|
|
329 year = {1994},
|
|
|
330 eprint = {None},
|
|
|
331 url = {http://www.sdsc.edu/~tbailey/papers/ismb94.pdf}
|
|
|
332 }</citation>
|
|
|
333 </citations>
|
|
|
334 </tool>
|