comparison gene_family_phylogeny_builder.xml @ 0:7000422fbaff draft

Uploaded
author greg
date Thu, 08 Jun 2017 12:51:58 -0400
parents
children f5ae6c86f75f
comparison
equal deleted inserted replaced
-1:000000000000 0:7000422fbaff
1 <tool id="plant_tribes_gene_family_phylogeny_builder" name="GeneFamilyPhylogenyBuilder" version="@WRAPPER_VERSION@.0">
2 <description>builds phylogenetic trees of aligned orthologous gene family clusters</description>
3 <macros>
4 <import>macros.xml</import>
5 </macros>
6 <expand macro="requirements_gene_family_phylogeny_builder" />
7 <command detect_errors="exit_code"><![CDATA[
8 #set input_format = $input_format_cond.input_format
9 #set tree_inference = $tree_inference_cond.tree_inference
10 #if str($tree_inference) == 'raxml':
11 #set rooting_order_file_cond = $tree_inference_cond.rooting_order_file_cond
12 #set rooting_order_file = $rooting_order_file_cond.rooting_order_file
13 #if str($rooting_order_file) == 'yes':
14 #set rooting_order = $rooting_order_file_cond.rooting_order
15 #end if
16 #set bootstrap_replicates = $tree_inference_cond.bootstrap_replicates
17 #end if
18
19 python $__tool_directory__/gene_family_phylogeny_builder.py
20 #if str($input_format) == 'ptalign':
21 --orthogroup_aln '$input_format_cond.input_ptalign.extra_files_path'
22 --alignment_type 'aln'
23 --sequence_type 'protein'
24 #else if str($input_format) == 'ptalignca':
25 --orthogroup_aln '$input_format_cond.input_ptalignca.extra_files_path'
26 --alignment_type 'aln'
27 --sequence_type $input_format_cond.sequence_type
28 #else if str($input_format) == 'ptalignfiltered':
29 --orthogroup_aln '$input_format_cond.input_ptalignfiltered.extra_files_path'
30 --alignment_type 'filter'
31 --sequence_type 'protein'
32 #else if str($input_format) == 'ptalignfilteredca':
33 --orthogroup_aln '$input_format_cond.input_ptalignfilteredca.extra_files_path'
34 --alignment_type 'filter'
35 --sequence_type $input_format_cond.sequence_type
36 #else if str($input_format) == 'ptaligntrimmed':
37 --orthogroup_aln '$input_format_cond.input_ptaligntrimmed.extra_files_path'
38 --alignment_type 'trim'
39 --sequence_type 'protein'
40 #else if str($input_format) == 'ptaligntrimmedca':
41 --orthogroup_aln '$input_format_cond.input_ptaligntrimmedca.extra_files_path'
42 --alignment_type 'trim'
43 --sequence_type $input_format_cond.sequence_type
44 #end if
45 --scaffold '$scaffold.fields.path'
46 --config_dir '$scaffold.fields.path'
47 --method $method
48 --tree_inference $tree_inference
49 #if str($tree_inference) == 'raxml':
50 #if str($rooting_order_file) == 'yes':
51 --rooting_order '$rooting_order'
52 ## No else block needed here because the default rooting_order
53 ## configuration will be used if the --rooting_order flag is missing.
54 #end if
55 --bootstrap_replicates $bootstrap_replicates
56 --output_phylip '$output_phylip'
57 --output_phylip_dir '$output_phylip.files_path'
58 #end if
59 --min_orthogroup_size $min_orthogroup_size
60 --max_orthogroup_size $max_orthogroup_size
61 --num_threads \${GALAXY_SLOTS:-4}
62 #set output_pttree_dir = $output_pttree_dir_cond.output_pttree_dir
63 #if str($output_pttree_dir) == 'yes':
64 --output_tree '$output_tree'
65 --output_tree_dir '$output_tree.files_path'
66 #end if
67 ]]></command>
68 <inputs>
69 <conditional name="input_format_cond">
70 <param name="input_format" type="select" label="Orthogroup alignments">
71 <option value="ptalign">Proteins orthogroup alignments</option>
72 <option value="ptalignca">Protein and coding sequences orthogroup alignments</option>
73 <option value="ptalignfiltered">Filtered proteins orthogroup alignments</option>
74 <option value="ptalignfilteredca">Filtered protein and coding sequences orthogroup alignments</option>
75 <option value="ptaligntrimmed">Trimmed proteins orthogroup alignments</option>
76 <option value="ptaligntrimmedca">Trimmed protein and coding sequences orthogroup alignments</option>
77 </param>
78 <when value="ptalign">
79 <param name="input_ptalign" format="ptalign" type="data" label="Proteins orthogroup alignments">
80 <validator type="empty_extra_files_path" />
81 </param>
82 </when>
83 <when value="ptalignca">
84 <param name="input_ptalignca" format="ptalignca" type="data" label="Protein and coding sequences orthogroup alignments">
85 <validator type="empty_extra_files_path" />
86 </param>
87 <expand macro="param_sequence_type" />
88 </when>
89 <when value="ptalignfiltered">
90 <param name="input_ptalignfiltered" format="ptalignfiltered" type="data" label="Filtered proteins orthogroup alignments">
91 <validator type="empty_extra_files_path" />
92 </param>
93 </when>
94 <when value="ptalignfilteredca">
95 <param name="input_ptalignfilteredca" format="ptalignfilteredca" type="data" label="Filtered protein and coding sequences orthogroup alignments">
96 <validator type="empty_extra_files_path" />
97 </param>
98 <expand macro="param_sequence_type" />
99 </when>
100 <when value="ptaligntrimmed">
101 <param name="input_ptaligntrimmed" format="ptaligntrimmed" type="data" label="Trimmed proteins orthogroup alignments">
102 <validator type="empty_extra_files_path" />
103 </param>
104 </when>
105 <when value="ptaligntrimmedca">
106 <param name="input_ptaligntrimmedca" format="ptaligntrimmedca" type="data" label="Trimmed protein and coding sequences orthogroup alignments">
107 <validator type="empty_extra_files_path" />
108 </param>
109 <expand macro="param_sequence_type" />
110 </when>
111 </conditional>
112 <expand macro="param_scaffold" />
113 <expand macro="param_method" />
114 <conditional name="tree_inference_cond">
115 <param name="tree_inference" type="select" label="Phylogenetic inference method">
116 <option value="raxml" selected="true">RAxML</option>
117 <option value="fasttree">FastTree</option>
118 </param>
119 <when value="raxml">
120 <conditional name="rooting_order_file_cond">
121 <param name="rooting_order_file" type="select" label="Rooting order configuration">
122 <option value="no" selected="true">No</option>
123 <option value="yes">Yes</option>
124 </param>
125 <when value="no" />
126 <when value="yes">
127 <param name="rooting_order" format="txt" type="data" label="Rooting order configuration" />
128 </when>
129 </conditional>
130 <param name="bootstrap_replicates" type="integer" value="100" min="0" label="Bootstrap replicates" />
131 </when>
132 <when value="fasttree" />
133 </conditional>
134 <param name="max_orthogroup_size" type="integer" value="100" min="4" label="Maximum orthogroup size" />
135 <param name="min_orthogroup_size" type="integer" value="4" min="4" label="Minimum orthogroup size" />
136 <conditional name="output_pttree_dir_cond">
137 <param name="output_pttree_dir" type="select" label="Output additional directory of phylogenetic tree files?">
138 <option value="no" selected="true">No</option>
139 <option value="yes">Yes</option>
140 </param>
141 <when value="no" />
142 <when value="yes" />
143 </conditional>
144 </inputs>
145 <outputs>
146 <collection name="tree" type="list" label="${tool.name} (phylogenetic trees, dataset collection) on ${on_string}">
147 <discover_datasets pattern="__name__" directory="geneFamilyPhylogenies_dir/orthogroups_tree" format="nhx" />
148 </collection>
149 <data name="output_tree" format="pttree" label="${tool.name} (phylogenetic trees, directory) on ${on_string}">
150 <filter>output_pttree_dir_cond['output_pttree_dir'] == 'yes'</filter>
151 </data>
152 <data name="output_phylip" format="ptphylip" label="${tool.name} (orthogroup phylip multiple sequence alignments) on ${on_string}">
153 <filter>tree_inference_cond['tree_inference'] == 'raxml'</filter>
154 </data>
155 </outputs>
156 <tests>
157 <!-- Test framework does not currently support inputs whose associated extra_files_path contains files to be analyzed.
158 <test>
159 </test>
160 -->
161 </tests>
162 <help>
163 This tool is one of the PlantTribes collection of automated modular analysis pipelines for comparative and evolutionary
164 analyses of genome-scale gene families and transcriptomes. This tool performs gene family phylogenetic inference of
165 multiple sequence alignments produced by the GeneFamilyAligner tool.
166
167 -----
168
169 **Required options**
170
171 * **Orthogroup alignments** - orthogroup alignment fasta files produced by the GeneFamilyAligner tool selected from your history. Depending on how the GeneFamilyAligner tool was executed, these could either be pre-processed alignments, trimmed alignments or both trimmed and filtered alignments.
172 * **Gene family scaffold** - one of the PlantTribes gene family scaffolds installed into Galaxy by the PlantTribes Scaffold Download Data Manager tool.
173 * **Protein clustering method** - gene family scaffold protein clustering method as described in the AssemblyPostProcessor tool.
174 * **Phylogenetic inference method** - method for estimating orthogroup maximum likelihood (ML) phylogenetic trees. PlantTribes estimates ML phylogenetic trees using either RAxML or FastTree algorithms.
175
176 **Other options**
177
178 * **Rooting order configuration** - select 'Yes' to enable selection of a rooting order configuration file for RAxML. Scaffold configuration templates (.rootingOrder.config) of how to customize the RAxML ML tree rooting order can be found in the scaffold data installed into Galaxy via the PlantTribes Scaffolds Download Data Manager tool, and is also available at the PlantTribes GitHub `repository`_. Phylogenetic tree rooting order settings shown in these templates are used as defaults if 'No' is selected.
179 * **Bootstrap replicates** - number of bootstrap replicates for RAxML to conduct a rapid bootstrap analysis and search for the best-scoring ML tree (default = 100).
180 * **Maximum orthogroup size** - maximum number of sequences allowed in orthogroup alignments (default = 100).
181 * **Minimum orthogroup size** - minimum number of sequences allowed in orthogroup alignments (default = 4).
182 * **Output additional directory of phylogenetic tree files** - selecting 'Yes' will produce an additional output that has an associated directory of files that are copies of the elements of the phylogenetic trees output dataset collection (this output will be used for future downstream tools).
183
184 .. _repository: https://github.com/dePamphilis/PlantTribes/tree/master/config
185
186 </help>
187 <citations>
188 <expand macro="citation1" />
189 <citation type="bibtex">
190 @article{Wall2008,
191 journal = {Nucleic Acids Research},
192 author = {2. Wall PK, Leebens-Mack J, Muller KF, Field D, Altman NS},
193 title = {PlantTribes: a gene and gene family resource for comparative genomics in plants},
194 year = {2008},
195 volume = {36},
196 number = {suppl 1},
197 pages = {D970-D976},}
198 </citation>
199 <citation type="bibtex">
200 @article{Sasidharan2012,
201 journal = {Nucleic Acids Research},
202 author = {3. Sasidharan R, Nepusz T, Swarbreck D, Huala E, Paccanaro A},
203 title = {GFam: a platform for automatic annotation of gene families},
204 year = {2012},
205 pages = {gks631},}
206 </citation>
207 <citation type="bibtex">
208 @article{Li2003,
209 journal = {Genome Research}
210 author = {4. Li L, Stoeckert CJ, Roos DS},
211 title = {OrthoMCL: identification of ortholog groups for eukaryotic genomes},
212 year = {2003},
213 volume = {13},
214 number = {9},
215 pages = {2178-2189},}
216 </citation>
217 <citation type="bibtex">
218 @article{Emms2015,
219 journal = {Genome Biology}
220 author = {5. Emms DM, Kelly S},
221 title = {OrthoFinder: solving fundamental biases in whole genome comparisons dramatically improves orthogroup inference accuracy},
222 year = {2015},
223 volume = {16},
224 number = {1},
225 pages = {157},}
226 </citation>
227 <citation type="bibtex">
228 @article{Stamatakis2014,
229 journal = {Bioinformatics},
230 author = {6. Stamatakis A},
231 title = {RAxML Version 8: A tool for Phylogenetic Analysis and Post-Analysis of Large Phylogenies},
232 year = {2014},
233 url = {http://sco.h-its.org/exelixis/web/software/raxml/index.html},}
234 </citation>
235 <citation type="bibtex">
236 @article{Price2010,
237 journal = {PLoS one},
238 author = {7. Price MN, Dehal PS, Arkin AP},
239 title = {FastTree 2-approximately maximim-likelihood trees for large alignments},
240 year = {2010},
241 volume = {5},
242 number = {3},
243 pages = {e9490},}
244 </citation>
245 </citations>
246 </tool>