70
|
1 <tool id="plant_tribes_phylogenomics_analysis" name="PhylogenomicsAnalysis" version="0.6.0">
|
|
2 <description>builds gene family multiple sequence alignments and their corresponding phylogenies</description>
|
73
|
3 <macros>
|
|
4 <import>macros.xml</import>
|
|
5 </macros>
|
|
6 <expand macro="requirements" />
|
|
7 <expand macro="stdio" />
|
0
|
8 <command>
|
|
9 <![CDATA[
|
73
|
10 #set input_format = $input_format_cond.input_format
|
|
11 #set scaffold = $input_format_cond.scaffold
|
|
12 #set method = $input_format_cond.method
|
98
|
13
|
|
14 #if str($input_format) == 'ptortho':
|
|
15 #set options_type_cond = $input_format_cond.options_type_cond
|
|
16 #else:
|
|
17 #set orthogroup_fna_cond = $input_format_cond.orthogroup_fna_cond
|
|
18 #set orthogroup_fna= $orthogroup_fna_cond.orthogroup_fna
|
|
19 #set options_type_cond = $orthogroup_fna_cond.options_type_cond
|
|
20 #endif
|
73
|
21 #set options_type= $options_type_cond.options_type
|
|
22
|
|
23 #if str($options_type) == 'advanced':
|
98
|
24 #if str($input_format) == 'ptortho':
|
|
25 @REMOVE_GAPPY_SEQUENCES_COND@
|
|
26 @SET_PHYLOGENETIC_TREES@
|
|
27 #if str($phylogenetic_trees) == 'yes':
|
|
28 @TREE_INFERENCE_COND@
|
|
29 #set sequence_type = 'protein'
|
|
30 #end if
|
82
|
31 #else:
|
98
|
32 ## str($input_format) == 'ptorthocs'
|
|
33 #set orthogroup_fna_cond = $input_format_cond.orthogroup_fna_cond
|
|
34 #set orthogroup_fna = $orthogroup_fna_cond.orthogroup_fna
|
|
35 #set options_type_cond = orthogroup_fna_cond.options_type_cond
|
|
36 #set options_type = $options_type_cond.options_type
|
|
37 #if str($orthogroup_fna) == 'yes':
|
|
38 #if str(options_type) == 'advanced':
|
|
39 @REMOVE_GAPPY_SEQUENCES_COND@
|
|
40 #set multiple_codon_alignments = $options_type_cond.multiple_codon_alignments
|
|
41 @SET_PHYLOGENETIC_TREES@
|
|
42 #if str($phylogenetic_trees) == 'yes':
|
|
43 @TREE_INFERENCE_COND@
|
|
44 #set sequence_type = $phylogenetic_trees_cond.sequence_type
|
|
45 #end if
|
|
46 #end if
|
|
47 #else:
|
|
48 #if str(options_type) == 'advanced':
|
|
49 @REMOVE_GAPPY_SEQUENCES_COND@
|
|
50 @SET_PHYLOGENETIC_TREES@
|
|
51 #if str($phylogenetic_trees) == 'yes':
|
|
52 @TREE_INFERENCE_COND@
|
|
53 #set sequence_type = $phylogenetic_trees_cond.sequence_type
|
|
54 #end if
|
|
55 #end if
|
|
56 #end if
|
82
|
57 #end if
|
14
|
58 #end if
|
|
59
|
65
|
60 python $__tool_directory__/phylogenomics_analysis.py
|
44
|
61 --num_threads \${GALAXY_SLOTS:-4}
|
51
|
62 #if str($input_format) == 'ptortho':
|
|
63 --orthogroup_faa '$input_format_cond.input_ptortho.extra_files_path'
|
47
|
64 #else:
|
51
|
65 --orthogroup_faa '$input_format_cond.input_ptorthocs.extra_files_path'
|
82
|
66 #if str($orthogroup_fna) == 'yes':
|
|
67 --orthogroup_fna 'true'
|
|
68 #end if
|
76
|
69 #set multiple_codon_alignments = $input_format_cond.multiple_codon_alignments
|
67
|
70 #if str($multiple_codon_alignments) == 'yes':
|
76
|
71 --codon_alignments 'true'
|
67
|
72 #end if
|
47
|
73 #end if
|
60
|
74 --config_dir '$scaffold.fields.path'
|
58
|
75 --scaffold '$scaffold.fields.path'
|
0
|
76 --method $method
|
14
|
77
|
73
|
78 #if str($options_type) == 'advanced':
|
42
|
79 #if str($multiple_sequence_alignments) == 'yes':
|
65
|
80 --alignments_method $multiple_sequence_alignments_option
|
66
|
81 #if str($multiple_sequence_alignments_option) == 'pasta_alignments':
|
40
|
82 --pasta_script_path '$__tool_directory__/run_pasta.py'
|
0
|
83 --pasta_iter_limit $multiple_sequence_alignments_option_cond.pasta_iter_limit
|
|
84 #end if
|
|
85 #end if
|
14
|
86
|
73
|
87 #if str($phylogenetic_trees) == 'yes':
|
98
|
88 --tree_inference $tree_inference
|
|
89 #if str($tree_inference) == 'raxml':
|
14
|
90 #if str($rooting_order_file) == 'yes':
|
49
|
91 --rooting_order '$rooting_order_file_cond.rooting_order'
|
65
|
92 # No else block needed here because the default rooting_order
|
|
93 # configuration will be used if the --rooting_order flag is missing.
|
14
|
94 #end if
|
0
|
95 --bootstrap_replicates $tree_inference_cond.bootstrap_replicates
|
|
96 #end if
|
73
|
97 --max_orthogroup_size $options_type_cond.phylogenetic_trees_cond.max_orthogroup_size
|
|
98 --min_orthogroup_size $options_type_cond.phylogenetic_trees_cond.min_orthogroup_size
|
82
|
99 --sequence_type $sequence_type
|
0
|
100 #end if
|
14
|
101
|
73
|
102 #if str($remove_gappy_sequences) == 'yes':
|
|
103 #if str($remove_sequences_with_gaps) == 'yes':
|
|
104 --remove_sequences $remove_sequences_with_gaps_cond.remove_sequences_with_gaps_of
|
|
105 #end if
|
|
106 --trim_type $trim_type_cond.trim_type
|
|
107 #if str($trim_type_cond.trim_type) == 'gap_trimming':
|
|
108 --gap_trimming $trim_type_cond.gap_trimming
|
0
|
109 #end if
|
|
110 #end if
|
|
111 #end if
|
14
|
112
|
51
|
113 #if str($input_format) == 'ptortho':
|
65
|
114 --output_ptortho '$output_ptortho'
|
|
115 --output_ptortho_dir '$output_ptortho.files_path'
|
42
|
116 #else:
|
65
|
117 --output_ptorthocs '$output_ptorthocs'
|
|
118 --output_ptorthocs_dir '$output_ptorthocs.files_path'
|
42
|
119 #end if
|
14
|
120
|
73
|
121 #if str($multiple_sequence_alignments) == 'yes'
|
65
|
122 --output_aln '$output_aln'
|
|
123 --output_aln_dir '$output_aln.files_path'
|
14
|
124 #end if
|
|
125
|
73
|
126 #if str($phylogenetic_trees) == 'yes':
|
65
|
127 --output_tree '$output_tree'
|
|
128 --output_tree_dir '$output_tree.files_path'
|
14
|
129 #end if
|
0
|
130 ]]>
|
|
131 </command>
|
|
132 <inputs>
|
42
|
133 <conditional name="input_format_cond">
|
|
134 <param name="input_format" type="select" label="Select type of data to sub sample">
|
53
|
135 <option value="ptortho">Precomputed orthologous gene family clusters</option>
|
|
136 <option value="ptorthocs">Precomputed orthologous gene family clusters with corresponding coding sequences</option>
|
42
|
137 </param>
|
51
|
138 <when value="ptortho">
|
|
139 <param name="input_ptortho" format="ptortho" type="data" label="Precomputed orthologous gene family clusters" />
|
73
|
140 <expand macro="param_scaffold" />
|
|
141 <expand macro="param_method" />
|
|
142 <conditional name="options_type_cond">
|
|
143 <expand macro="param_options_type" />
|
|
144 <when value="basic" />
|
|
145 <when value="advanced">
|
98
|
146 <expand macro="cond_remove_gappy_sequences" />
|
80
|
147 <expand macro="cond_phylogenetic_trees_ptortho" />
|
42
|
148 </when>
|
|
149 </conditional>
|
|
150 </when>
|
73
|
151 <when value="ptorthocs">
|
|
152 <param name="input_ptorthocs" format="ptorthocs" type="data" label="Precomputed orthologous gene family clusters with corresponding coding sequences" />
|
|
153 <expand macro="param_scaffold" />
|
|
154 <expand macro="param_method" />
|
84
|
155 <expand macro="cond_orthogroup_fna" />
|
0
|
156 </when>
|
|
157 </conditional>
|
|
158 </inputs>
|
|
159 <outputs>
|
65
|
160 <data name="output_ptortho" format="ptortho">
|
51
|
161 <filter>input_format_cond['input_format'] == 'ptortho'</filter>
|
41
|
162 </data>
|
65
|
163 <data name="output_ptorthocs" format="ptorthocs">
|
51
|
164 <filter>input_format_cond['input_format'] == 'ptorthocs'</filter>
|
41
|
165 </data>
|
73
|
166 <data name="output_aln" format="ptalign" label="Multiple alignments (method ${options_type_cond['multiple_sequence_alignments_cond']['multiple_sequence_alignments_option_cond']['multiple_sequence_alignments_option']}) on ${on_string}">
|
|
167 <filter>options_type_cond['options_type'] == 'advanced' and options_type_cond['multiple_sequence_alignments_cond']['multiple_sequence_alignments'] == 'yes'</filter>
|
14
|
168 </data>
|
53
|
169 <data name="output_tree" format="pttree" label="Phylogenetic trees on ${on_string}">
|
73
|
170 <filter>options_type_cond['options_type'] == 'advanced' and options_type_cond['phylogenetic_trees_cond']['phylogenetic_trees'] == 'yes'</filter>
|
14
|
171 </data>
|
0
|
172 </outputs>
|
|
173 <tests>
|
|
174 <test>
|
|
175 </test>
|
|
176 </tests>
|
|
177 <help>
|
71
|
178 This tool is one of the PlantTribes collection of automated modular analysis pipelines that utilize objective classifications of
|
59
|
179 complete protein sequences from sequenced plant genomes to perform comparative evolutionary studies. It performs phylogenomic
|
|
180 analyses by creating multiple sequence alignments and inferred maximum likelihood phylogenies for orthogroups produced by the
|
|
181 **Classify gene sequences into precomputed orthologous gene family clusters** tool.
|
0
|
182
|
59
|
183 -----
|
0
|
184
|
59
|
185 **Options**
|
0
|
186
|
69
|
187 * **Required**
|
18
|
188
|
59
|
189 - **Select gene family clusters** - Sequences classified into gene family clusters, optionally including corresponding coding sequences.
|
|
190 - **Orthogroups or gene families proteins scaffold** - PlantTribes scaffolds data.
|
|
191 - **Protein clustering method** - One of GFam (domain architecture based clustering), OrthoFinder (broadly defined clusters) or OrthoMCL (narrowly defined clusters).
|
|
192
|
69
|
193 * **Multiple sequence alignments**
|
14
|
194
|
59
|
195 - **Select method for multiple sequence alignments** - Method used for setting multiple sequence alignments.
|
|
196 - **Input sequences include corresponding coding sequences?** - Selecting 'Yes' for this option requires that the selected input data format is 'ptorthocs'.
|
|
197 - **Construct orthogroup multiple codon alignments?** - Construct orthogroup multiple codon alignments.
|
|
198 - **Sequence type used in the phylogenetic inference** - Sequence type (dna or amino acid) used in the phylogenetic inference.
|
|
199 - **Use corresponding coding sequences?** - Selecting 'Yes' for this option requires that the selected input data format is 'ptorthocs' or this tool will produce an error.
|
14
|
200
|
69
|
201 * **Phylogenetic trees**
|
15
|
202
|
59
|
203 - **Phylogenetic trees inference method** - Phylogenetic trees inference method.
|
|
204 - **Select rooting order configuration for rooting trees??** - If 'No' is selected, trees will be rooted using the most distant taxon present in the orthogroup.
|
|
205 - **Number of replicates for rapid bootstrap analysis and search for the best-scoring ML tree** - Number of replicates for rapid bootstrap analysis and search for the best-scoring ML tree.
|
|
206 - **Maximum number of sequences in orthogroup alignments** - Maximum number of sequences in orthogroup alignments.
|
|
207 - **Minimum number of sequences in orthogroup alignments** - Minimum number of sequences in orthogroup alignments.
|
14
|
208
|
69
|
209 * **MSA quality control**
|
14
|
210
|
59
|
211 - **Remove sequences with gaps of** - Removes gappy sequences in alignments (i.e., 0.5 removes sequences with 50% gaps).
|
|
212 - **Select process used for gap trimming** - Either nucleotide based trimming or alignments are trimed using using trimAl's ML heuristic trimming approach.
|
|
213 - **Remove sites in alignments with gaps of** - If the process used for gap trimming is nucleotide based, this is the gap value used when removing gappy sites in alignments (i.e., 0.1 removes sites with 90% gaps).
|
14
|
214
|
0
|
215 </help>
|
73
|
216 <expand macro="citations" />
|
0
|
217 </tool>
|