view amas_replicate.xml @ 0:24431ccf6352 draft default tip

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/main/tools/amas commit 158ec0e635067d354c425baf14b95cb616fd93c4
author iuc
date Tue, 02 Dec 2025 09:26:59 +0000
parents
children
line wrap: on
line source

<tool id="amas_replicate" name="AMAS replicate" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
    <description>replicate multiple alignments</description>
    
    <macros>
        <import>macros.xml</import>
    </macros>

    <xrefs>
        <xref type="bio.tools">amas</xref>
    </xrefs>

    <expand macro="requirements" />
    <expand macro="version_command" />

    <command detect_errors="exit_code"><![CDATA[
        #import re
        set -eu;

        @SNIFF_INPUT_FORMAT@

        @CHECK_INTERLEAVED@

        @SYMLINK_INPUTS@

        python -m amas.AMAS
        replicate
        --rep-aln $replicate_replicates $replicate_loci
        --out-format $out_format
        --in-files
            @INPUT_FILENAMES@
        --in-format "\${IN_FORMAT}"
        --data-type $data_type
        --cores "\${GALAXY_SLOTS:-1}"
        $check_align
    ]]></command>

    <inputs>
        <param name="input_files" type="data" format="fasta,phylip,nex" label="Sequence(s) to replicate" multiple="true" 
               help="Provide pre-aligned FASTA/PHYLIP/NEXUS files (DNA or protein); mixes of unaligned reads or contigs will produce meaningless results." />
        <expand macro="output_format" label="Select output format for replicated alignment(s)" />
        <param name="replicate_replicates" type="integer" value="10" min="1" label="Number of replicate datasets to build" />
        <param name="replicate_loci" type="integer" value="2" min="1" label="Number of loci per replicate" />
        <expand macro="data_type" />
        <expand macro="check_align" />
    </inputs>

    <outputs>
        <expand macro="collection_outputs" name="replicate_alignments" />
    </outputs>

    <tests>
        <test expect_num_outputs="1">
            <param name="input_files" value="inputs/fasta1.fas" />
            <param name="replicate_replicates" value="2" />
            <param name="replicate_loci" value="1" />
            <param name="out_format" value="nexus" />
            <param name="data_type" value="dna" />
            <param name="check_align" value="false" />
            <output_collection name="replicate_alignments_nexus" type="list">
                <element name="replicate1_1-loci-out.nex" file="outputs/expected_replicate1.nex" ftype="nex" />
                <element name="replicate2_1-loci-out.nex" file="outputs/expected_replicate2.nex" ftype="nex" />
            </output_collection>
        </test>
    </tests>

    <help><![CDATA[
        **What it does**

        AMAS Replicate generates jackknife or bootstrap replicates by randomly sampling loci (genes) from your dataset. This is used to assess phylogenetic signal distribution and node support across different genomic regions.

        **Inputs**

        - **Alignment files**: Multiple pre-aligned sequence files, one per locus/gene (FASTA, PHYLIP, or NEXUS format)
        - **Number of replicates**: How many replicate datasets to generate
        - **Loci per replicate**: How many loci to include in each replicate
        - **Input format**: Specify the format of your input files
        - **Data type**: Choose DNA for nucleotide sequences or Protein for amino acid sequences
        - **Output format**: Select the desired format for the replicate alignments

        **Outputs**

        A collection of replicate alignment files. Each replicate contains a random subset of the input loci concatenated together.

        **Use cases**

        - **Phylogenetic jackknifing**: Assess whether phylogenetic signal is driven by specific loci
        - **Node support evaluation**: Test robustness of tree topology across different gene combinations
        - **Signal heterogeneity**: Identify whether conflicting signals come from particular genomic regions

        **Example**

        From 100 input genes, create 10 replicates each containing 50 randomly sampled genes. Each replicate can then be used to build a phylogenetic tree, and consistency across replicates indicates robust phylogenetic signal.

        @AMAS_SHARED_HELP@
    ]]></help>

    <expand macro="citations" />
</tool>