diff shhh.flows.xml @ 0:11ff85882cfb draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/mothur commit 180a403421967d36f995941b1a4561349d75cfc5
author iuc
date Fri, 24 Jun 2016 16:50:00 -0400
parents
children a83120484b45
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/shhh.flows.xml	Fri Jun 24 16:50:00 2016 -0400
@@ -0,0 +1,86 @@
+<tool profile="16.07" id="mothur_shhh_flows" name="Shhh.flows" version="@WRAPPER_VERSION@.0">
+    <description>Denoise flowgrams (PyroNoise algorithm)</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements"/>
+    <expand macro="version_command"/>
+    <command detect_errors="aggressive"><![CDATA[
+        ## create symlinks to input datasets
+        ln -s "$flow" flow.dat &&
+
+        ## Mothur can't handle scientific notation (i.e. 1e-6)
+        #set mindelta_decimal = "{:.12f}".format(float($mindelta))
+        echo 'shhh.flows(
+            flow=flow.dat,
+            lookup=$prob.lookup,
+            maxiter=$maxiter,
+            mindelta=$mindelta_decimal,
+            cutoff=$cutoff,
+            sigma=$sigma,
+            order=$order,
+            large=$large,
+            processors='\${GALAXY_SLOTS:-8}'
+        )'
+        | sed 's/ //g'  ## mothur trips over whitespace
+        | mothur
+    ]]></command>
+    <inputs>
+        <param name="flow" type="data" format="mothur.sff.flow" label="flow - flowgram data" help="Use sffinfo to generate flow data from an sff file and usually trimmed by trim.flows"/>
+        <conditional name="prob">
+            <param name="source" type="select" label="Select Taxonomy from" help="">
+                <option value="ref">Cached Reference</option>
+                <option value="hist">History</option>
+            </param>
+            <when value="ref">
+                <param name="lookup" type="select" format="tabular" label="lookup - intensity value per homopolymer length" help="table of the probability of observing an intensity value for a given homopolymer length">
+                    <options from_data_table="mothur_lookup"/>
+                </param>
+            </when>
+            <when value="hist">
+                <param name="lookup" type="data" format="tabular" label="lookup - intensity value per homopolymer length" help="from http://www.mothur.org/wiki/Lookup_files"/>
+            </when>
+        </conditional>
+        <param name="maxiter" type="integer" value="1000" min="10" label="maxiter - maximum iterations to run (default 1000)" help="if the delta value does not first drop below the mindelta value. "/>
+        <param name="mindelta" type="float" value="0.000001" min="0.0" max="0.1" label="mindelta - threshold for determining how much change in the flowgram correction is allowed" help="default .000001 (10^-6)"/>
+        <param name="cutoff" type="float" value="0.01" min="0.0" max="1.0" label="cutoff - seed the expectation-maximizaton step" help="default .01 (usually doesn't need to be changed)"/>
+        <param name="sigma" type="float" value="0.06" min="0.0" max="1.0" label="sigma - the dispersion of the data in the expectation-maximization step of the algorithm" help="default .06 (usually doesn't need to be changed)"/>
+        <param name="large" type="integer" value="10000" min="1" label="large - split your flow file and process the pieces separately (default 10000)" help=""/>
+        <param name="order" type="text" value="A" label="order - flow order for nucleotides in the sequencer" help="default is A, was TACG. Also accepts B or I"/>
+    </inputs>
+    <outputs>
+        <expand macro="logfile-output"/>
+        <data name="shhh_fasta" format="fasta" from_work_dir="flow*.fasta" label="${tool.name} on ${on_string}: shhh.fasta"/>
+        <data name="shhh_qual" format="qual454" from_work_dir="flow*.qual" label="${tool.name} on ${on_string}: shhh.qual"/>
+        <data name="shhh_names" format="mothur.names" from_work_dir="flow*.names" label="${tool.name} on ${on_string}: shhh.names"/>
+        <data name="shhh_groups" format="mothur.groups" from_work_dir="flow*.groups" label="${tool.name} on ${on_string}: shhh.groups"/>
+        <data name="shhh_counts" format="tabular" from_work_dir="flow*.counts" label="${tool.name} on ${on_string}: shhh.counts"/>
+    </outputs>
+    <tests>
+        <test>
+            <param name="flow" value="mock.flow" ftype="mothur.sff.flow"/>
+            <param name="source" value="hist"/>
+            <param name="lookup" value="LookUp_Titanium.pat"/>
+            <output name="shhh_fasta" md5="dae330939c01e4831e2f804adc90493c" ftype="fasta"/>
+            <output name="shhh_qual" md5="47e8c7d953f276277d40375b2fb0feec" ftype="qual454"/>
+            <output name="shhh_names" md5="98326572926c744f4a1ea342ff7c7dcc" ftype="mothur.names"/>
+            <output name="shhh_groups" md5="e7f4237cef054ddf52a63ebad568a350" ftype="mothur.groups"/>
+            <output name="shhh_counts" md5="ae26201637dc3a64e6865c43c317a688" ftype="tabular"/>
+            <expand macro="logfile-test"/>
+        </test>
+    </tests>
+    <help>
+<![CDATA[
+
+@MOTHUR_OVERVIEW@
+
+**Command Documenation**
+
+The shhh.flows_ command is Pat Schloss's translation of Chris Quince's PyroNoise algorithm [1] from C to C++ with the incorporation of mothur's bells and whistles. Based on processing of test datasets provided by Quince, shhh.flows gives the same/similar output to AmpliconNoise. shhh.flows uses a expectation-maximization algorithm to correct flowgrams to identify the idealized form of each flowgram and translate that flowgram to a DNA sequence. Our testing has shown that when Titanium data are trimmed to 450 flows using trim.flows, shhh.flows provides the highest quality data for any other method available. In contrast, when we use the min/max number of flows suggested by Quince of 360/720, the error rate is not that great. This much improved error rate does come at a computational cost. Whereas the features in trim.seqs take on the order of minutes, shhh.flows can take on the order of hours.  You will also need a lookup file that tells shhh.flows the probability of observing an intensity value for a given homopolymer length. You can get mothur-compatible files at: http://www.mothur.org/wiki/Lookup_files
+
+.. _shhh.flows: http://www.mothur.org/wiki/Shhh.flows
+
+]]>
+    </help>
+    <expand macro="citations"/>
+</tool>