view tools/mothur/screen.seqs.xml @ 0:ee4fee239fe7 draft default tip

planemo upload commit 68a4fd4cc5332c57ac39bef73db224425af0706c-dirty
author sanbi-uwc
date Fri, 03 Jun 2016 09:32:47 -0400
parents
children
line wrap: on
line source

<tool profile="16.07" id="mothur_screen_seqs" name="Screen.seqs" version="@WRAPPER_VERSION@.0">
    <description>Screen sequences</description>
    <macros>
        <import>macros.xml</import>
    </macros>
    <expand macro="requirements"/>
    <expand macro="version_command"/>
    <command detect_errors="aggressive"><![CDATA[
        echo 'screen.seqs(
            fasta=$fasta_in
            #if $start > -1:
                ,start=$start
            #end if
            #if $end > -1:
                ,end=$end
            #end if
            #if $minlength > -1:
                ,minlength=$minlength
            #end if
            #if $maxlength > -1:
                ,maxlength=$maxlength
            #end if
            #if $maxambig > -1:
                ,maxambig=$maxambig
            #end if
            #if $maxhomop > -1:
                ,maxhomop=$maxhomop
            #end if
            #if $criteria > -1:
                ,criteria=$criteria
            #end if
            #if $optimize:
                ,optimize=$optimize
            #end if
            #if $qfile_in:
                ,qfile=$qfile_in
            #end if
            #if $names_in:
                ,name=$names_in
            #end if
            #if $groups_in:
                ,group=$groups_in
            #end if
            #if $alignreport_in:
                ,alignreport=$alignreport_in
            #end if
            #if $taxonomy_in:
                ,taxonomy=$taxonomy_in
            #end if
            #if $count_in:
                ,count=$count_in
            #end if
            #if $summary:
                ,summary=$summary
            #end if
            #if $contigsreport:
                ,contigsreport=$contigsreport
            #end if
            ,processors='"\${GALAXY_SLOTS:-8}"'
        )'
        | sed 's/ //g'  ## mothur trips over whitespace
        | mothur &&

        ## move output files to correct destination
        mv mothur.*.logfile "$logfile" &&
        prefix="$fasta_in" &&
        mv \${prefix%.dat}*.good.* "$fasta_out" &&
        mv \${prefix%.dat}*.bad.accnos "$bad_accnos"
        #if $qfile_in:
            && prefix="$qfile_in" && mv \${prefix%.dat}*.good.* "$qfile_out"
        #end if
        #if $names_in:
            && prefix="$names_in" && mv \${prefix%.dat}*.good.* "$names_out"
        #end if
        #if $groups_in:
            && prefix="$groups_in" && mv \${prefix%.dat}*.good.* "$groups_out"
        #end if
        #if $alignreport_in:
            && prefix="$alignreport_in" && mv \${prefix%.dat}*.good.* "$alignreport_out"
        #end if
        #if $taxonomy_in:
            && prefix="$taxonomy_in" && mv \${prefix%.dat}*.good.* "$taxonomy_out"
        #end if
        #if $count_in:
            && prefix="$count_in" && mv \${prefix%.dat}*.good.* "$count_out"
        #end if
    ]]></command>
    <inputs>
        <param name="fasta_in" type="data" format="fasta,mothur.align" label="fasta - Fasta to screen"/>
        <param name="start" type="integer" value="-1" label="start - Remove sequences that start after position (ignored when negative)"/>
        <param name="end" type="integer" value="-1" label="end - Remove sequences that end before position (ignored when negative)"/>
        <param name="minlength" type="integer" value="-1" label="minlength - Remove sequences shorter than (ignored when negative)"/>
        <param name="maxlength" type="integer" value="-1" label="maxlength - Remove sequences longer than (ignored when negative)"/>
        <param name="maxambig" type="integer" value="-1" label="maxambig - Remove sequences with ambiguous bases greater than (ignored when negative)"/>
        <param name="maxhomop" type="integer" value="-1" label="maxhomop - Remove sequences with homopolymers greater than (ignored when negative)"/>
        <param name="criteria" type="integer" value="-1" label="criteria - Percent of sequences that an optimize value must match to be retained(ignored when negative)"/>
        <param name="optimize" type="select" multiple="true" display="checkboxes" label="optimize - Optimize selected paramenters">
            <option value="start">start</option>
            <option value="end">end</option>
            <option value="minlength">minlength</option>
            <option value="maxlength">maxlength</option>
            <option value="maxambig">maxambig</option>
            <option value="maxhomop">maxhomop</option>
        </param>
        <param name="qfile_in" type="data" format="qual" optional="true" label="qfile - Sequence Quality file to screen"/>
        <param name="names_in" type="data" format="mothur.names" optional="true" label="name - Sequence Names to screen"/>
        <param name="groups_in" type="data" format="mothur.groups" optional="true" label="group - Groups to screen"/>
        <param name="alignreport_in" type="data" format="mothur.align.report" optional="true" label="alignreport - Align Report to screen"/>
        <param name="summary" type="data" format="mothur.summary" optional="true" label="summary - allows you to enter the summary file created by summary.seqs to save processing time when screening with parameters in the summary file"/>
        <param name="contigsreport" type="data" format="contigs.report" optional="true" label="contigsreport - file is created by the make.contigs command. If you provide the contigs report file you can screen your sequences using the following parameters: minoverlap, ostart, oend and mismatches"/>
        <param name="taxonomy_in" type="data" format="taxonomy" optional="true" label="taxonomy - Taxonomy to screen"/>
        <param name="count_in" type="data" format="mothur.count_table" optional="true" label="count - a count_table" help="generated by count.seqs"/>
    </inputs>
    <outputs>
        <data name="logfile" format="txt" label="${tool.name} on ${on_string}: logfile"/>
        <data name="fasta_out" format_source="fasta_in" label="${tool.name} on ${on_string}: good.${fasta_in.datatype.file_ext}"/>
        <data name="bad_accnos" format="mothur.accnos" label="${tool.name} on ${on_string}: bad.accnos"/>
        <data name="qfile_out" format_source="qfile_in" label="${tool.name} on ${on_string}: qfile">
            <filter>qfile_in</filter>
        </data>
        <data name="names_out" format="mothur.names" label="${tool.name} on ${on_string}: names">
            <filter>names_in</filter>
        </data>
        <data name="groups_out" format="mothur.groups" label="${tool.name} on ${on_string}: groups">
            <filter>groups_in</filter>
        </data>
        <data name="alignreport_out" format="mothur.align.report" label="${tool.name} on ${on_string}: align.report">
            <filter>alignreport_in</filter>
        </data>
        <data name="count_out" format="count" label="${tool.name} on ${on_string}: count">
            <filter>count_in</filter>
        </data>
    </outputs>
    <tests>
        <test>
            <param name="fasta_in" value="Mock_S280_L001_R1_001_small.trim.contigs.fasta"/>
            <param name="maxambig" value="0"/>
            <param name="maxlength" value="275"/>
            <output name="fasta_out" file="Mock_S280_L001_R1_001_small.trim.contigs.good.fasta"/>
            <output name="bad_accnos" file="Mock_S280_L001_R1_001_small.trim.contigs.bad.accnos"/>
            <expand macro="logfile-test"/>
        </test>
        <test>
            <param name="fasta_in" value="amazon.fasta"/>
            <param name="count_in" value="amazon.count_table"/>
            <param name="maxambig" value="0"/>
            <param name="maxlength" value="275"/>
            <output name="fasta_out" md5="d41d8cd98f00b204e9800998ecf8427e"/>
            <output name="count_out" md5="5f4a08bbf3ec12f954edbcc6b2a2feee"/>
            <output name="bad_accnos" md5="66acde5349e34fc97be22032ce68eea5"/>
            <expand macro="logfile-test"/>
        </test>
    </tests>
    <help>
<![CDATA[

@MOTHUR_OVERVIEW@

**Command Documenation**

The screen.seqs_ command enables you to keep sequences that fulfill certain user defined criteria. Furthermore, it enables you to cull those sequences not meeting the criteria from a name_, group_, or align.report_ file.

.. _name: http://www.mothur.org/wiki/Name_file
.. _group: http://www.mothur.org/wiki/Group_file
.. _align.report: http://www.mothur.org/wiki/Align.seqs
.. _screen.seqs: http://www.mothur.org/wiki/Screen.seqs

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