4
|
1 <tool id="plant_tribes_assembly_post_processor" name="AssemblyPostProcessor" version="@WRAPPER_VERSION@.3.0">
|
0
|
2 <description>post-processes de novo transcriptome assembly</description>
|
|
3 <macros>
|
|
4 <import>macros.xml</import>
|
|
5 </macros>
|
4
|
6 <requirements>
|
|
7 <requirement type="package" version="1.0.3">plant_tribes_assembly_post_processor</requirement>
|
|
8 </requirements>
|
0
|
9 <command detect_errors="exit_code"><![CDATA[
|
4
|
10 #set output_dir = 'assemblyPostProcessing_dir'
|
|
11 AssemblyPostProcessor
|
0
|
12 --transcripts '$input'
|
|
13 --prediction_method $prediction_method_cond.prediction_method
|
|
14 #if str($prediction_method_cond.prediction_method) == 'estscan':
|
|
15 --score_matrices '$score_matrices'
|
|
16 #end if
|
|
17 #if str($options_type.options_type_selector) == 'advanced':
|
|
18 #set target_gene_family_assembly_cond = $options_type.target_gene_family_assembly_cond
|
|
19 #if str($target_gene_family_assembly_cond.target_gene_family_assembly) == 'yes':
|
|
20 --gene_family_search '$target_gene_family_assembly_cond.orthogroups'
|
|
21 --scaffold '$target_gene_family_assembly_cond.scaffold.fields.path'
|
|
22 --method '$target_gene_family_assembly_cond.method'
|
|
23 --gap_trimming $target_gene_family_assembly_cond.gap_trimming
|
4
|
24 #if str($target_gene_family_assembly_cond.min_coverage) != '0.0':
|
|
25 --min_coverage $target_gene_family_assembly_cond.min_coverage
|
|
26 #end if
|
0
|
27 #end if
|
|
28 #if str($options_type.strand_specific) == 'yes':
|
4
|
29 --strand_specific
|
0
|
30 #end if
|
|
31 #if str($options_type.dereplicate) == 'yes':
|
4
|
32 --dereplicate
|
0
|
33 #end if
|
|
34 --min_length $options_type.min_length
|
|
35 #end if
|
|
36 --num_threads \${GALAXY_SLOTS:-4}
|
5
|
37 &>assembly_post_processor_log.txt;
|
|
38 if [[ $? -ne 0 ]]; then
|
|
39 cp assembly_post_processor_log.txt '$output_cds';
|
|
40 cp assembly_post_processor_log.txt '$output_pep';
|
|
41 cp assembly_post_processor_log.txt '$output_cleaned_cds';
|
|
42 cp assembly_post_processor_log.txt '$output_cleaned_pep';
|
|
43 #if str($options_type.options_type_selector) == 'advanced':
|
|
44 #if str($target_gene_family_assembly_cond.target_gene_family_assembly) == 'yes':
|
|
45 cp assembly_post_processor_log.txt '$output_targeted_gene_families_stats';
|
|
46 #end if
|
|
47 #if str($options_type.dereplicate) == 'yes':
|
|
48 cp assembly_post_processor_log.txt '$output_cleaned_nr_cds';
|
|
49 cp assembly_post_processor_log.txt '$output_cleaned_nr_pep';
|
|
50 #end if
|
4
|
51 #end if
|
5
|
52 exit 1;
|
|
53 else
|
|
54 mv $output_dir/transcripts.cds '$output_cds';
|
|
55 mv $output_dir/transcripts.pep '$output_pep';
|
|
56 mv $output_dir/transcripts.cleaned.cds '$output_cleaned_cds';
|
|
57 mv $output_dir/transcripts.cleaned.pep '$output_cleaned_pep';
|
|
58 #if str($options_type.options_type_selector) == 'advanced':
|
|
59 #if str($target_gene_family_assembly_cond.target_gene_family_assembly) == 'yes':
|
|
60 mv $output_dir/targeted_gene_family_assemblies.stats '$output_targeted_gene_families_stats';
|
|
61 #end if
|
|
62 #if str($options_type.dereplicate) == 'yes':
|
|
63 mv $output_dir/transcripts.cleaned.nr.cds '$output_cleaned_nr_cds';
|
|
64 mv $output_dir/transcripts.cleaned.nr.pep '$output_cleaned_nr_pep';
|
|
65 #end if
|
4
|
66 #end if
|
5
|
67 fi]]></command>
|
0
|
68 <inputs>
|
|
69 <param name="input" format="fasta" type="data" label="Transcriptome assembly fasta file"/>
|
|
70 <conditional name="prediction_method_cond">
|
|
71 <param name="prediction_method" type="select" label="Coding regions prediction method">
|
|
72 <option value="transdecoder" selected="true">TransDecoder</option>
|
|
73 <option value="estscan">ESTScan</option>
|
|
74 </param>
|
|
75 <when value="transdecoder" />
|
|
76 <when value="estscan">
|
|
77 <param name="score_matrices" format="smat" type="data" label="Scores matrices"/>
|
|
78 </when>
|
|
79 </conditional>
|
|
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 <conditional name="target_gene_family_assembly_cond">
|
|
88 <param name="target_gene_family_assembly" type="select" label="Perform targeted gene assembly?">
|
|
89 <option value="no" selected="true">No</option>
|
|
90 <option value="yes">Yes</option>
|
|
91 </param>
|
|
92 <when value="no" />
|
|
93 <when value="yes">
|
|
94 <param name="orthogroups" format="tabular" type="data" label="Targeted gene families"/>
|
|
95 <param name="scaffold" type="select" label="Gene family scaffold">
|
|
96 <options from_data_table="plant_tribes_scaffolds" />
|
|
97 <validator type="no_options" message="No PlantTribes scaffolds are available. Use the PlantTribes Scaffolds Download Data Manager tool in Galaxy to install and populate the PlantTribes scaffolds data table."/>
|
|
98 </param>
|
|
99 <param name="method" type="select" label="Protein clustering method">
|
|
100 <option value="gfam" selected="true">GFam</option>
|
|
101 <option value="orthofinder">OrthoFinder</option>
|
|
102 <option value="orthomcl">OrthoMCL</option>
|
|
103 </param>
|
|
104 <param name="gap_trimming" type="float" value="0.1" min="0" max="1.0" label="Trim alignments"/>
|
4
|
105 <param name="min_coverage" type="float" value="0" min="0" max="1.0" label="Minimum alignment coverage"/>
|
0
|
106 </when>
|
|
107 </conditional>
|
|
108 <param name="strand_specific" type="select" label="Strand-specific assembly?">
|
|
109 <option value="no" selected="true">No</option>
|
|
110 <option value="yes">Yes</option>
|
|
111 </param>
|
|
112 <param name="dereplicate" type="select" label="Remove duplicate sequences?">
|
|
113 <option value="no" selected="true">No</option>
|
|
114 <option value="yes">Yes</option>
|
|
115 </param>
|
|
116 <param name="min_length" type="integer" value="200" label="Minimum sequence length"/>
|
|
117 </when>
|
|
118 </conditional>
|
|
119 </inputs>
|
|
120 <outputs>
|
4
|
121 <data name="output_targeted_gene_families_stats" format="tabular" label="Targeted gene families statistics: ${tool.name} on ${on_string}">
|
0
|
122 <filter>options_type['options_type_selector'] == 'advanced' and options_type['target_gene_family_assembly_cond']['target_gene_family_assembly'] == 'yes'</filter>
|
|
123 </data>
|
4
|
124 <collection name="output_targeted_gene_families" type="list" label="Targeted gene families: ${tool.name} on ${on_string}">
|
|
125 <discover_datasets pattern="__name__" directory="assemblyPostProcessing_dir/targeted_gene_family_assemblies" format="fasta" />
|
|
126 <filter>options_type['options_type_selector'] == 'advanced' and options_type['target_gene_family_assembly_cond']['target_gene_family_assembly'] == 'yes'</filter>
|
|
127 </collection>
|
0
|
128 <data name="output_pep" format="fasta" label="transcripts.pep: ${tool.name} on ${on_string}"/>
|
|
129 <data name="output_cleaned_pep" format="fasta" label="transcripts.cleaned.pep: ${tool.name} on ${on_string}"/>
|
|
130 <data name="output_cleaned_nr_pep" format="fasta" label="transcripts.cleaned.nr.pep: ${tool.name} on ${on_string}">
|
|
131 <filter>options_type['options_type_selector'] == 'advanced' and options_type['dereplicate'] == 'yes'</filter>
|
|
132 </data>
|
|
133 <data name="output_cleaned_nr_cds" format="fasta" label="transcripts.cleaned.nr.cds: ${tool.name} on ${on_string}">
|
|
134 <filter>options_type['options_type_selector'] == 'advanced' and options_type['dereplicate'] == 'yes'</filter>
|
|
135 </data>
|
|
136 <data name="output_cleaned_cds" format="fasta" label="transcripts.cleaned.cds: ${tool.name} on ${on_string}"/>
|
|
137 <data name="output_cds" format="fasta" label="transcripts.cds: ${tool.name} on ${on_string}"/>
|
|
138 </outputs>
|
|
139 <tests>
|
|
140 <test>
|
|
141 <param name="input" value="assembly.fasta" ftype="fasta"/>
|
|
142 <param name="prediction_method" value="transdecoder"/>
|
|
143 <output name="output_cds" file="transcripts.cds" ftype="fasta"/>
|
|
144 <output name="output_cleaned_cds" file="transcripts.cleaned.cds" ftype="fasta"/>
|
|
145 <output name="output_cleaned_pep" file="transcripts.cleaned.pep" ftype="fasta"/>
|
|
146 <output name="output_pep" file="transcripts.pep" ftype="fasta"/>
|
|
147 </test>
|
|
148 <test>
|
|
149 <param name="input" value="assembly.fasta" ftype="fasta"/>
|
|
150 <param name="prediction_method" value="estscan"/>
|
|
151 <param name="score_matrices" value="arabidopsis_thaliana.smat" ftype="smat"/>
|
|
152 <param name="options_type_selector" value="advanced"/>
|
|
153 <param name="dereplicate" value="yes"/>
|
|
154 <output name="output_cds" file="transcripts2.cds" ftype="fasta"/>
|
|
155 <output name="output_cleaned_cds" file="transcripts.cleaned.nr.cds" ftype="fasta"/>
|
|
156 <output name="output_cleaned_nr_cds" file="transcripts.cleaned.nr.cds" ftype="fasta"/>
|
|
157 <output name="output_cleaned_nr_pep" file="transcripts.cleaned.nr.pep" ftype="fasta"/>
|
|
158 <output name="output_cleaned_pep" file="transcripts.cleaned.nr.pep" ftype="fasta"/>
|
|
159 <output name="output_pep" file="transcripts2.pep" ftype="fasta"/>
|
|
160 </test>
|
|
161 <test>
|
|
162 <param name="input" value="assembly_tgf.fasta" ftype="fasta"/>
|
|
163 <param name="prediction_method" value="transdecoder"/>
|
|
164 <param name="options_type_selector" value="advanced"/>
|
|
165 <param name="target_gene_family_assembly" value="yes"/>
|
|
166 <param name="orthogroups" value="target_orthos.ids"/>
|
|
167 <param name="scaffold" value="22Gv1.1"/>
|
|
168 <param name="method" value="orthomcl"/>
|
|
169 <param name="dereplicate" value="yes"/>
|
4
|
170 <output_collection name="output_targeted_gene_families" type="list">
|
|
171 </output_collection>
|
|
172 <output name="output_targeted_gene_families_stats" file="output_targeted_gene_families_stats.tabular" ftype="tabular"/>
|
0
|
173 <output name="output_cds" file="transcripts_tgf.cds" ftype="fasta"/>
|
|
174 <output name="output_cleaned_cds" file="transcripts.cleaned_tgf.cds" ftype="fasta"/>
|
|
175 <output name="output_cleaned_nr_cds" file="transcripts_tgf.cleaned.nr.cds" ftype="fasta"/>
|
|
176 <output name="output_cleaned_nr_pep" file="transcripts_tgf.cleaned.nr.pep" ftype="fasta"/>
|
|
177 <output name="output_cleaned_pep" file="transcripts.cleaned_tgf.pep" ftype="fasta"/>
|
|
178 <output name="output_pep" file="transcripts_tgf.pep" ftype="fasta"/>
|
|
179 </test>
|
|
180 </tests>
|
|
181 <help>
|
|
182 This tool is one of the PlantTribes collection of automated modular analysis pipelines for comparative and
|
|
183 evolutionary analyses of genome-scale gene families and transcriptomes. This tool post-processes de novo
|
|
184 assembled transcripts into putative coding sequences and their corresponding amino acid translations and
|
|
185 optionally assigns transcripts to circumscribed gene families ("orthogroups")[2]. After transcripts have been
|
|
186 assigned to gene families, overlapping contigs can be identified and merged to reduce fragmentation in the
|
5
|
187 de novo assembly.
|
0
|
188
|
|
189 -----
|
|
190
|
|
191 **Required options**
|
|
192
|
|
193 * **Transcriptome assembly fasta file** - either de novo or reference-guided transcriptome assembly fasta file selected from your history.
|
|
194 * **Coding regions prediction method** - method for finding coding regions within transcripts. Available methods are TransDecoder[3] and ESTScan[4].
|
|
195 * **Scores matrices** - scores matrices, based on a related species, are required when ESTScan is used to find coding regions. Details of how to create species-specific scores matrices can be found on the ESTScan website (http://estscan.sourceforge.net). Matrices of some organisms are also available to download.
|
|
196
|
|
197 **Other options**
|
|
198
|
|
199 * **Perform targeted gene assembly?** - selecting 'Yes' enables local assembly of one or more targeted gene families in a specific scaffold. Scaffolds are defined in PlantTribes as clusters of paralogous/orthologous sequences from a specified set of proteomes[5-7].
|
|
200
|
4
|
201 * **Targeted gene families** - select a history item containing a list of targeted orthogroup identifiers corresponding to the gene family classification from a specified scaffold. Gene family identifiers can be obtained from the function annotation table ("Orthogroup ID" field of .summary file) of scaffold data installed into Galaxy via the PlantTribes Scaffolds Download Data Manager tool, and are also available in the PlantTribes "annotation" directory of the scaffold data download.
|
0
|
202 * **Gene family scaffold** - one of the PlantTribes gene family scaffolds (installed into Galaxy by the PlantTribes Scaffolds Download Data Manager tool) whose orthogroup(s) are targeted for the localized assembly.
|
|
203 * **Protein clustering method** - gene family scaffold protein clustering method. Each PlantTribes scaffold data has up to three sets of clusters - GFam[8] (clusters of consensus domain architecture), OrthoFinder[9] (broadly defined clusters) or OrthoMCL[10] (narrowly defined clusters). You can also install your own data scaffold created using a different clustering method as long as it conforms to the PlantTribes scaffold data format.
|
|
204 * **Trim alignments** - trim gene family multiple sequence alignments that include scaffold backbone genes and locally assembled transcripts to remove non-conserved regions (gappy sites)[11]. The trimmed alignments are used in assigning scores to locally assembled transcripts to determine how well they compare to the backbone gene models. The default setting of 0.1 removes sites that have gaps in 90% or more of the sequences in the multiple sequence alignment. This option is restricted to the range 0.0 - 1.0.
|
4
|
205 * **Minimum alignment coverage** - allowable sequence coverage in the orthogroup trimmed protein multiple sequence alignments. Selecting transcripts with coverage of at least the average of the backbone orthogroup gene models is recommended. Details are shown in the targeted gene family assembly statistics history item.
|
0
|
206
|
|
207 * **Strand-specific assembly?** - select 'Yes' if transcriptome library sequences were strand-specific. If 'Yes" is selected, transcripts from the minority strand (antisense) are removed.
|
|
208 * **Remove duplicate sequences?** - select 'Yes' to remove duplicated and exact subsequences[12].
|
|
209 * **Minimum sequence length** - set the minimum sequence length of predicted coding regions. The default is 200 bp.
|
|
210
|
|
211 </help>
|
|
212 <citations>
|
|
213 <expand macro="citation1" />
|
|
214 <citation type="bibtex">
|
|
215 @article{Honaas2016,
|
|
216 journal = {PloS one},
|
|
217 author = {2. Honaas LA, Wafula EK, Wickett NJ, Der JP, Zhang Y, Edger PP, Altman NS, Pires JC, Leebens-Mack JH},
|
|
218 title = {Selecting superior de novo transcriptome assemblies: lessons learned by leveraging the best plant genome},
|
|
219 year = {2016},
|
|
220 volume = {11},
|
|
221 number = {1},
|
|
222 pages = {e0146062},}
|
|
223 </citation>
|
|
224 <citation type="bibtex">
|
|
225 @article{Haas2013,
|
|
226 journal = {Nature Protocols},
|
|
227 author = {3. Haas BJ, Papanicolaou A, Yassour M, Grabherr M, Blood PD, Bowden J, Couger MB, Eccles D, Li B, Lieber M, MacManes MD},
|
|
228 title = {De novo transcript sequence reconstruction from RNA-seq using the Trinity platform for reference generation and analysis},
|
|
229 year = {2013},
|
|
230 volume = {8},
|
|
231 number = {8},
|
|
232 pages = {1494-1512},}
|
|
233 </citation>
|
|
234 <citation type="bibtex">
|
|
235 @article{Iseli1999,
|
|
236 journal = {ISMB},
|
|
237 author = {4. Iseli C, Jongeneel CV, Bucher P},
|
|
238 title = {ESTScan: a program for detecting, evaluating, and reconstructing potential coding regions in EST sequences},
|
|
239 year = {1999},
|
|
240 volume = {99},
|
|
241 pages = {138-148},
|
|
242 url = {http://estscan.sourceforge.net},}
|
|
243 </citation>
|
|
244 <citation type="bibtex">
|
|
245 @article{Huang1999,
|
|
246 journal = {Genome Research},
|
|
247 author = {5. Huang X, Madan A},
|
|
248 title = {CAP3: A DNA sequence assembly program},
|
|
249 year = {1999},
|
|
250 volume = {9},
|
|
251 number = {9},
|
|
252 pages = {868-877},
|
|
253 url = {http://seq.cs.iastate.edu/cap3.html},}
|
|
254 </citation>
|
|
255 <citation type="bibtex">
|
|
256 @article{Eddy2009,
|
|
257 journal = {Genome Inform},
|
|
258 author = {6. Eddy SR},
|
|
259 title = {A new generation of homology search tools based on probabilistic inference},
|
|
260 year = {2009},
|
|
261 volume = {23},
|
|
262 number = {1},
|
|
263 pages = {205-211},}
|
|
264 </citation>
|
|
265 <citation type="bibtex">
|
|
266 @article{Katoh2013,
|
|
267 journal = {Molecular biology and evolution},
|
|
268 author = {7. Katoh K, Standley DM},
|
|
269 title = {MAFFT multiple sequence alignment software version 7: improvements in performance and usability},
|
|
270 year = {2013},
|
|
271 volume = {30},
|
|
272 number = {4},
|
|
273 pages = {772-780},}
|
|
274 </citation>
|
|
275 <citation type="bibtex">
|
|
276 @article{Sasidharan2012,
|
|
277 journal = {Nucleic Acids Research},
|
|
278 author = {8. Sasidharan R, Nepusz T, Swarbreck D, Huala E, Paccanaro A},
|
|
279 title = {GFam: a platform for automatic annotation of gene families},
|
|
280 year = {2012},
|
|
281 pages = {gks631},}
|
|
282 </citation>
|
|
283 <citation type="bibtex">
|
|
284 @article{Li2003,
|
|
285 journal = {Genome Research}
|
|
286 author = {9. Li L, Stoeckert CJ, Roos DS},
|
|
287 title = {OrthoMCL: identification of ortholog groups for eukaryotic genomes},
|
|
288 year = {2003},
|
|
289 volume = {13},
|
|
290 number = {9},
|
|
291 pages = {2178-2189},}
|
|
292 </citation>
|
|
293 <citation type="bibtex">
|
|
294 @article{Emms2015,
|
|
295 journal = {Genome Biology}
|
|
296 author = {10. Emms DM, Kelly S},
|
|
297 title = {OrthoFinder: solving fundamental biases in whole genome comparisons dramatically improves orthogroup inference accuracy},
|
|
298 year = {2015},
|
|
299 volume = {16},
|
|
300 number = {1},
|
|
301 pages = {157},}
|
|
302 </citation>
|
|
303 <citation type="bibtex">
|
|
304 @article{Capella-Gutierrez2009,
|
|
305 journal = {Bioinformatics,},
|
|
306 author = {11. Capella-Gutierrez S, Silla-MartÃnez JM, Gabaldón T},
|
|
307 title = {trimAl: a tool for automated alignment trimming in large-scale phylogenetic analyses},
|
|
308 year = {2009},
|
|
309 volume = {25},
|
|
310 number = {15},
|
|
311 pages = {1972-1973},}
|
|
312 </citation>
|
|
313 <citation type="bibtex">
|
|
314 @article{Gremme2013,
|
|
315 journal = {IEEE/ACM Transactions on Computational Biology and Bioinformatics},
|
|
316 author = {12. Gremme G, Steinbiss S, Kurtz S},
|
|
317 title = {GenomeTools: a comprehensive software library for efficient processing of structured genome annotations},
|
|
318 year = {2013},
|
|
319 volume = {10},
|
|
320 number = {3},
|
|
321 pages = {645-656},}
|
|
322 </citation>
|
|
323 </citations>
|
|
324 </tool>
|