view gene_family_aligner.xml @ 15:5a5f80ea6306 draft

Uploaded
author greg
date Tue, 11 Apr 2017 14:22:26 -0400
parents af8dad310c32
children 4a0837f2b995
line wrap: on
line source

<tool id="plant_tribes_gene_family_aligner" name="GeneFamilyAligner" version="@WRAPPER_VERSION@.0">
    <description>aligns gene family sequences</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements_gene_family_aligner" />
    <expand macro="stdio" />
    <command>
        <![CDATA[
            #set input_format = $input_format_cond.input_format
            #set alignment_method_cond = $input_format_cond.alignment_method_cond
            #set alignment_method = $alignment_method_cond.alignment_method
            #if str($input_format_cond.input_format) == 'ptortho':
                #set output_codon_alignments = False
            #else if str($input_format_cond.input_format) == 'ptorthocs' and str($input_format_cond.codon_alignments ) == 'no':
                #set output_codon_alignments = False
            #else:
                #set output_codon_alignments = True
            #end if

            python $__tool_directory__/gene_family_aligner.py
            --alignment_method $alignment_method
            #if str($alignment_method) == 'pasta':
                --pasta_script_path '$__tool_directory__/run_pasta.py'
                --pasta_iter_limit $alignment_method_cond.pasta_iter_limit
            #end if
            --num_threads \${GALAXY_SLOTS:-4}
            #if str($input_format) == 'ptortho':
                --orthogroup_faa '$input_format_cond.input_ptortho.extra_files_path'
            #else:
                ## str($input_format) == 'ptorthocs'
                --orthogroup_faa '$input_format_cond.input_ptorthocs.extra_files_path'
                #if str($input_format_cond.codon_alignments) == 'yes':
                    --codon_alignments 'true'
                #end if
            #end if
            #set remove_gappy_sequences = $remove_gappy_sequences_cond.remove_gappy_sequences
            #if str($remove_gappy_sequences) == 'yes':
                #set trim_type_cond = $remove_gappy_sequences_cond.trim_type_cond
                #set trim_type = $trim_type_cond.trim_type
                #if str($trim_type) == 'gap_trimming' and str($trim_type_cond.gap_trimming):
                    --gap_trimming $trim_type_cond.gap_trimming
                #else:
                    ## str($trim_type) == 'automated_trimming'
                    --automated_trimming 'true'
                #end if
                #set remove_sequences_with_gaps_cond = $remove_gappy_sequences_cond.remove_sequences_with_gaps_cond
                #set remove_sequences_with_gaps = $remove_sequences_with_gaps_cond.remove_sequences_with_gaps
                #if str($remove_sequences_with_gaps) == 'yes':
                    #if str($remove_sequences_with_gaps_cond.remove_sequences_with_gaps_of):
                        --remove_sequences $remove_sequences_with_gaps_cond.remove_sequences_with_gaps_of
                    #end if
                    #if str($remove_sequences_with_gaps_cond.iterative_realignment):
                        --iterative_realignment $remove_sequences_with_gaps_cond.iterative_realignment
                    #end if
                    #if $output_codon_alignments:
                        --output '$output_aln_filtered_ca'
                        --output_dir '$output_aln_filtered_ca.files_path'
                    #else:
                        --output '$output_aln_filtered'
                        --output_dir '$output_aln_filtered.files_path'
                    #end if
                #else:
                    #if $output_codon_alignments:
                        --output '$output_aln_trimmed_ca'
                        --output_dir '$output_aln_trimmed_ca.files_path'
                    #else:
                        --output '$output_aln_trimmed'
                        --output_dir '$output_aln_trimmed.files_path'
                    #end if
                #end if
            #else:
                #if $output_codon_alignments:
                    --output '$output_aln_ca'
                    --output_dir '$output_aln_ca.files_path'
                #else:
                    --output '$output_aln'
                    --output_dir '$output_aln.files_path'
                #end if
            #end if
        ]]>
    </command>
    <inputs>
        <conditional name="input_format_cond">
            <param name="input_format" type="select" label="Select type of data to sub sample">
                <option value="ptortho">Gene family clusters</option>
                <option value="ptorthocs">Gene family clusters with corresponding coding sequences</option>
            </param>
            <when value="ptortho">
                <param name="input_ptortho" format="ptortho" type="data" label="Gene family clusters">
                    <!-- <validator type="empty_files_path" /> -->
                </param>
                <expand macro="cond_alignment_method" />
            </when>
            <when value="ptorthocs">
                <param name="input_ptorthocs" format="ptorthocs" type="data" label="Gene family clusters with corresponding coding sequences">
                    <!-- <validator type="empty_files_path" /> -->
                </param>
                <expand macro="cond_alignment_method" />
                <expand macro="param_codon_alignments" />
            </when>
        </conditional>
        <expand macro="cond_remove_gappy_sequences" />
    </inputs>
    <outputs>
        <data name="output_aln" format="ptalign" label="Aligned gene family sequences on ${on_string}">
            <filter>(input_format_cond['input_format'] == 'ptortho' or (input_format_cond['input_format'] == 'ptorthocs' and input_format_cond['codon_alignments'] == 'no')) and remove_gappy_sequences_cond['remove_gappy_sequences'] == 'no'</filter>
        </data>
        <data name="output_aln_ca" format="ptalignca" label="Aligned gene family sequences with codon alignments on ${on_string}">
            <filter>(input_format_cond['input_format'] == 'ptortho' or (input_format_cond['input_format'] == 'ptorthocs' and input_format_cond['codon_alignments'] == 'yes')) and remove_gappy_sequences_cond['remove_gappy_sequences'] == 'no'</filter>
        </data>
        <data name="output_aln_filtered" format="ptalignfiltered" label="Filtered aligned gene family sequences on ${on_string}">
            <filter>(input_format_cond['input_format'] == 'ptortho' or (input_format_cond['input_format'] == 'ptorthocs' and input_format_cond['codon_alignments'] == 'no')) and (remove_gappy_sequences_cond['remove_gappy_sequences'] == 'yes' and remove_gappy_sequences_cond['remove_sequences_with_gaps_cond']['remove_sequences_with_gaps'] == 'yes')</filter>
        </data>
        <data name="output_aln_filtered_ca" format="ptalignfilteredca" label="Filtered aligned gene family sequences with codon alignments on ${on_string}">
            <filter>(input_format_cond['input_format'] == 'ptortho' or (input_format_cond['input_format'] == 'ptorthocs' and input_format_cond['codon_alignments'] == 'yes')) and (remove_gappy_sequences_cond['remove_gappy_sequences'] == 'yes' and remove_gappy_sequences_cond['remove_sequences_with_gaps_cond']['remove_sequences_with_gaps'] == 'yes')</filter>
        </data>
        <data name="output_aln_trimmed" format="ptaligntrimmed" label="Trimmed aligned gene family sequences on ${on_string}">
            <filter>(input_format_cond['input_format'] == 'ptortho' or (input_format_cond['input_format'] == 'ptorthocs' and input_format_cond['codon_alignments'] == 'no')) and (remove_gappy_sequences_cond['remove_gappy_sequences'] == 'yes' and remove_gappy_sequences_cond['remove_sequences_with_gaps_cond']['remove_sequences_with_gaps'] == 'no')</filter>
        </data>
        <data name="output_aln_trimmed_ca" format="ptaligntrimmedca" label="Trimmed aligned gene family sequences with codon alignments on ${on_string}">
            <filter>(input_format_cond['input_format'] == 'ptortho' or (input_format_cond['input_format'] == 'ptorthocs' and input_format_cond['codon_alignments'] == 'yes')) and (remove_gappy_sequences_cond['remove_gappy_sequences'] == 'yes' and remove_gappy_sequences_cond['remove_sequences_with_gaps_cond']['remove_sequences_with_gaps'] == 'no')</filter>
        </data>
    </outputs>
    <tests>
        <!-- Test framework does not currently support inputs whose associated files_path contains files to be analyzed.
        <test>
        </test>
        -->
    </tests>
    <help>
This tool is one of the PlantTribes collection of automated modular analysis pipelines for comparative and evolutionary
analyses of genome-scale gene families and transcriptomes. This tool aligns gene family sequences.

-----

**Required options**

 * **Select type of data to sub sample**

  - **Gene family clusters** - sequences classified into gene family clusters.
  - **Gene family clusters with corresponding coding sequences** - sequences classified into gene family clusters including corresponding coding sequences.

    - **Construct orthogroup multiple codon alignments** - construct orthogroup multiple codon alignments.

 * **Select method for multiple sequence alignments**

  - **MAFFT algorithm** - mafft algorithm.
  - **Pasta algorithm** - pasta algorithm.

    - **Maximum number of iterations that the PASTA algorithm will execute** - maximum number of iterations that the PASTA algorithm will execute.

**Other options**

 * **Remove gappy sequences in alignments**

  - **Select process used for gap trimming** - either nucleotide based or using trimAl's ML heuristic trimming approach

    - **Nucleotide based**

      - **Remove sites in alignments with gaps of**
      - **Maximum number of iterations** - maximum number of iterations for iterative orthogroups realignment, trimming and fitering

    </help>
    <citations>
        <expand macro="citation1" />
        <expand macro="citations2to4" />
    </citations>
</tool>