Mercurial > repos > greg > phylogenomics_analysis
changeset 42:7e92ab9ee98a draft
Uploaded
author | greg |
---|---|
date | Fri, 03 Feb 2017 13:35:26 -0500 |
parents | 6b547036c627 |
children | 923a54b9425c |
files | phylogenomics_analysis.xml |
diffstat | 1 files changed, 85 insertions(+), 104 deletions(-) [+] |
line wrap: on
line diff
--- a/phylogenomics_analysis.xml Thu Feb 02 14:41:59 2017 -0500 +++ b/phylogenomics_analysis.xml Fri Feb 03 13:35:26 2017 -0500 @@ -1,5 +1,5 @@ -<tool id="plant_tribes_phylogenomics_analysis" name="Perform phylogenomic analyses" version="0.3"> - <description>by creating multiple sequence alignments and inferred maximum likelihood phylogenies</description> +<tool id="plant_tribes_phylogenomics_analysis" name="Create multiple sequence alignments" version="0.3"> + <description>and inferred maximum likelihood phylogenies</description> <requirements> <requirement type="package" version="0.3">plant_tribes_phylogenomics_analysis</requirement> </requirements> @@ -16,36 +16,54 @@ #import os #import sys - #set scaffold_path = $scaffold.fields.path - #set scaffold_dir = $os.path.split($scaffold_path)[0] - #set scaffold_selection = $os.path.split($scaffold_path)[1] - #set src_fasta_dir = $os.path.join('phylogenomicsAnalysis_dir', 'orthogroups_fasta') - #if str($input.ext) == 'ptcgf': - #set dest_fasta_dir = $output_fasta_ptcgf.extra_files_path - else: - #set dest_fasta_dir =$output_fasta_ptcgfcs.extra_files_path - #end if + #set input_format = $input_format_cond.input_format + #set pipeline_output_dir = 'phylogenomicsAnalysis_dir' + #set scaffold_path = $scaffold.fields.path + #set scaffold_dir = $os.path.split($scaffold_path)[0] + #set scaffold_selection = $os.path.split($scaffold_path)[1] + #set src_aln_dir = $os.path.join($pipeline_output_dir, 'orthogroups_aln') + #set src_fasta_dir = $os.path.join($pipeline_output_dir, 'orthogroups_fasta') + #set src_tree_dir = $os.path.join($pipeline_output_dir, 'orthogroups_tree' - #if str($options_type.options_type_selector) == 'advanced' and str($options_type.multiple_sequence_alignments_cond.multiple_sequence_alignments) == 'yes': - #set generate_output_aln = True - #set src_aln_dir = $os.path.join('phylogenomicsAnalysis_dir', 'orthogroups_aln') - #set dest_aln_dir = $output_aln.extra_files_path - mkdir -p $dest_aln_dir && + #if str($input_format) == 'ptcgf': + #set dest_fasta_dir = $output_fasta_ptcgf.extra_files_path + #set multiple_codon_alignments = 'no' + #set use_corresponding_coding_sequences = 'no #else: - #set generate_output_aln = False + ## str($input_format) == 'ptcgfcs': + #set dest_fasta_dir = $output_fasta_ptcgfcs.extra_files_path + #set multiple_codon_alignments_cond = $input_format_cond.multiple_codon_alignments_cond + #set multiple_codon_alignments = $multiple_codon_alignments_cond.multiple_codon_alignments + #if str($multiple_codon_alignments) == 'yes': + #set use_corresponding_coding_sequences_cond = $multiple_codon_alignments_cond.use_corresponding_coding_sequences_cond + #set use_corresponding_coding_sequences = $use_corresponding_coding_sequences_cond.use_corresponding_coding_sequences + #else: + #set use_corresponding_coding_sequences = 'no' + #end if #end if + mkdir -p $dest_fasta_dir && + + #if str($options_type.options_type_selector) == 'advanced': + #set multiple_sequence_alignments_cond = $options_type.multiple_sequence_alignments_cond + #set multiple_sequence_alignments = $multiple_sequence_alignments_cond.multiple_sequence_alignments + #if str($multiple_sequence_alignments) == 'yes': + #set multiple_sequence_alignments_option_cond = $options_type.multiple_sequence_alignments_cond.multiple_sequence_alignments_option_cond + #set multiple_sequence_alignments_option = $multiple_sequence_alignments_option_cond.multiple_sequence_alignments_option + #set generate_output_aln = True + #set dest_aln_dir = $output_aln.extra_files_path + mkdir -p $dest_aln_dir && + #else: + #set generate_output_aln = False + #end if #if str($options_type.options_type_selector) == 'advanced' and str($options_type.phylogenetic_trees_cond.phylogenetic_trees) == 'yes': #set generate_output_tree = True - #set src_tree_dir = $os.path.join('phylogenomicsAnalysis_dir', 'orthogroups_tree') #set dest_tree_dir = $output_tree.extra_files_path mkdir -p $dest_tree_dir && #else: #set generate_output_tree = False #end if - mkdir -p $dest_fasta_dir && - PhylogenomicsAnalysis --num_threads \${GALAXY_SLOTS:-4} --orthogroup_faa '$input.extra_files_path' @@ -54,33 +72,7 @@ --method $method #if str($options_type.options_type_selector) == 'advanced': - #if str($options_type.multiple_sequence_alignments_cond.multiple_sequence_alignments) == 'yes': - #set multiple_sequence_alignments_option_cond = $options_type.multiple_sequence_alignments_cond.multiple_sequence_alignments_option_cond - #set multiple_sequence_alignments_option = $multiple_sequence_alignments_option_cond.multiple_sequence_alignments_option - #if str($multiple_sequence_alignments_option) == 'create_alignments': - #set multiple_sequence_alignments_option_str = 'Create alignments (MAFFT algorithm)' - #else if str($multiple_sequence_alignments_option) == 'add_alignments': - #set multiple_sequence_alignments_option_str = 'Add proteins to alignments (MAFFT algorithm)' - #else if str($multiple_sequence_alignments_option) == 'pasta_alignments': - #set multiple_sequence_alignments_option_str = 'Create alignments (PASTA algorithm)' - #end if - - #set input_includes_coding_sequences_cond = $options_type.multiple_sequence_alignments_cond.input_includes_coding_sequences_cond - #set input_includes_coding_sequences = $input_includes_coding_sequences_cond.input_includes_coding_sequences - #if str($input_includes_coding_sequences) == 'yes': - #set multiple_codon_alignments_cond = $input_includes_coding_sequences_cond.multiple_codon_alignments_cond - #set multiple_codon_alignments = $multiple_codon_alignments_cond.multiple_codon_alignments - #if str($multiple_codon_alignments) == 'yes': - #set use_corresponding_coding_sequences_cond = $multiple_codon_alignments_cond.use_corresponding_coding_sequences_cond - #set use_corresponding_coding_sequences = $use_corresponding_coding_sequences_cond.use_corresponding_coding_sequences - #else: - #set use_corresponding_coding_sequences = 'no' - #end if - #else: - #set multiple_codon_alignments = 'no' - #set use_corresponding_coding_sequences = 'no' - #end if - + #if str($multiple_sequence_alignments) == 'yes': #if str($multiple_sequence_alignments_option) == 'create_alignments': --create_alignments #else if str($multiple_sequence_alignments_option) == 'add_alignments': @@ -90,20 +82,6 @@ --pasta_alignments --pasta_iter_limit $multiple_sequence_alignments_option_cond.pasta_iter_limit #end if - - #if str($input_includes_coding_sequences) == 'yes': - #if str($multiple_codon_alignments) == 'yes': - --codon_alignments - #if str($use_corresponding_coding_sequences) == 'yes': - #if str($input.ext) == 'ptcgfcs): - --orthogroup_fna - #else: - raise Exception("Selected input does not include corresponding coding sequences") - #end if - #end if - --sequence_type $multiple_codon_alignments_cond.sequence_type - #end if - #end if #end if #if str($options_type.phylogenetic_trees_cond.phylogenetic_trees) == 'yes': @@ -137,13 +115,14 @@ #end if #end if - #if str($input.ext) == 'ptcgf': - && echo "Sequence alignments and corresponding phylogenies: `ls $src_fasta_dir | grep f | wc -l` files" > $output_fasta_ptcgf - && ls -al $src_fasta_dir | grep f >> $output_fasta_ptcgf - #else: - && echo "Sequence alignments and corresponding phylogenies: `ls $src_fasta_dir | grep f | wc -l` files" > $output_fasta_ptcgfcs - && ls -al $src_fasta_dir | grep f >> $output_fasta_ptcgfcs - #end if + #if str($input_format) == 'ptcgf': + && echo "Sequence alignments and corresponding phylogenies: `ls $src_fasta_dir | grep f | wc -l` files" > $output_fasta_ptcgf + && ls -al $src_fasta_dir | grep f >> $output_fasta_ptcgf + #else: + && echo "Sequence alignments and corresponding phylogenies: `ls $src_fasta_dir | grep f | wc -l` files" > $output_fasta_ptcgfcs + && ls -al $src_fasta_dir | grep f >> $output_fasta_ptcgfcs + #end if + && mv $src_fasta_dir/* $dest_fasta_dir || true #if $generate_output_aln: @@ -160,10 +139,42 @@ ]]> </command> <inputs> - <param name="input" format="ptcgf,ptcgfcs" type="data" label="Select gene family clusters" help="Selection may optionally include corresponding coding sequences"/> + <conditional name="input_format_cond"> + <param name="input_format" type="select" label="Select type of data to sub sample"> + <option value="ptcgf">Gene family clusters</option> + <option value="ptcgfcs">Gene family clusters and corresponding coding sequences</option> + </param> + <when value="ptcgf"> + <param name="input_ptcgf" format="ptcgf" type="data" label="Gene family clusters"/> + </when> + <when value="ptcgfcs"> + <param name="input_ptcgfcs" format="ptcgfcs" type="data" label="Gene family clusters with corresponding coding sequences"/> + <conditional name="multiple_codon_alignments_cond"> + <param name="multiple_codon_alignments" type="select" label="Construct orthogroup multiple codon alignments?"> + <option value="no" selected="True">No</option> + <option value="yes">Yes</option> + </param> + <when value="no"/> + <when value="yes"> + <param name="sequence_type" type="select" label="Sequence type used in the phylogenetic inference - (dna)"> + <option value="protein" selected="true">Amino acid based</option> + <option value="dna">Nucleotide based</option> + </param> + <conditional name="use_corresponding_coding_sequences_cond"> + <param name="use_corresponding_coding_sequences" type="select" label="Use corresponding coding sequences?"> + <option value="no" selected="true">No</option> + <option value="yes">Yes</option> + </param> + <when value="no" /> + <when value="yes" /> + </conditional> + </when> + </conditional> + </when> + </conditional> <param name="scaffold" type="select" label="Orthogroups or gene families proteins scaffold"> <options from_data_table="plant_tribes_scaffolds" /> - <validator type="no_options" message="No PlantTribes scaffolds are available. Use the PlantTribes Scaffolds Download Data Manager tool to install and populate the PlantTribes scaffolds data table."/> + <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."/> </param> <param name="method" type="select" label="Protein clustering method"> <option value="gfam" selected="true">GFam</option> @@ -196,36 +207,6 @@ <param name="pasta_iter_limit" type="integer" value="3" min="0" label="Maximum number of iteration that the PASTA algorithm will run"/> </when> </conditional> - <conditional name="input_includes_coding_sequences_cond"> - <param name="input_includes_coding_sequences" type="select" label="Input sequences include corresponding coding sequences?" help="Selected input data format must be 'pgfccs'"> - <option value="no" selected="true">No</option> - <option value="yes">Yes</option> - </param> - <when value="no"/> - <when value="yes"> - <conditional name="multiple_codon_alignments_cond"> - <param name="multiple_codon_alignments" label="Construct orthogroup multiple codon alignments?" type="select"> - <option value="no" selected="True">No</option> - <option value="yes">Yes</option> - </param> - <when value="no"/> - <when value="yes"> - <param name="sequence_type" type="select" label="Sequence type used in the phylogenetic inference - (dna)"> - <option value="protein" selected="true">Amino acid based</option> - <option value="dna">Nucleotide based</option> - </param> - <conditional name="use_corresponding_coding_sequences_cond"> - <param name="use_corresponding_coding_sequences" type="select" label="Use corresponding coding sequences?"> - <option value="no" selected="true">No</option> - <option value="yes">Yes</option> - </param> - <when value="no" /> - <when value="yes" /> - </conditional> - </when> - </conditional> - </when> - </conditional> </when> </conditional> <conditional name="phylogenetic_trees_cond"> @@ -292,11 +273,11 @@ </conditional> </inputs> <outputs> - <data name="output_fasta_ptcgf" format="ptcgf" label="Sequence alignments and corresponding phylogenies on ${on_string}"> - <filter>input.ext == 'ptcgf'</filter> + <data name="output_fasta_ptcgf" format="ptcgf"> + <filter>input_format_cond['input_format] == 'ptcgf'</filter> </data> - <data name="output_fasta_ptcgfcs" format="ptcgfcs" label="Sequence alignments and corresponding phylogenies on ${on_string}"> - <filter>input.ext == 'ptcgfcs'</filter> + <data name="output_fasta_ptcgfcs" format="ptcgfcs"> + <filter>input_format_cond['input_format] == 'ptcgfcs'</filter> </data> <data name="output_aln" format="txt" label="Multiple alignments on ${on_string}"> <filter>options_type['options_type_selector'] == 'advanced' and options_type['multiple_sequence_alignments_cond']['multiple_sequence_alignments'] == 'yes'</filter>