diff ivar_trim.xml @ 0:8858fa037a15 draft

"planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/ivar/ commit 4b0b7fb6c79dcd437392a496a99301d124c9f1dd"
author iuc
date Mon, 30 Mar 2020 07:31:25 -0400
parents
children cb903c9dc33d
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/ivar_trim.xml	Mon Mar 30 07:31:25 2020 -0400
@@ -0,0 +1,67 @@
+<tool id="ivar_trim" name="ivar trim" version="@VERSION@+galaxy0">
+    <description>Trim reads in aligned BAM</description>
+    <macros>
+        <import>macros.xml</import>
+    </macros>
+    <expand macro="requirements" />
+    <expand macro="version_command" />
+    <command detect_errors="exit_code"><![CDATA[
+        ln -s '$input_bed' bed.bed &&
+        ln -s '$input_bam' sorted.bam &&
+        ivar trim
+        -i sorted.bam
+        -b bed.bed
+        -m $min_len
+        -q $min_qual
+        -s $window_width
+        $inc_primers
+        -p trimmed &&
+        samtools sort -@ \${GALAXY_SLOTS:-1} -o trimmed.sorted.bam trimmed.bam &&
+        samtools index -@ \${GALAXY_SLOTS:-1} trimmed.sorted.bam
+    ]]>    </command>
+    <inputs>
+        <param name="input_bam" argument="-i" type="data" format="bam" label="Bam file" help="Aligned reads, to trim primers and quality"/>
+        <param name="input_bed" argument="-b" type="data" format="bed" label="BED file with primer sequences and positions"/>
+        <param name="min_len" argument="-m" type="integer" min="0" value="30" label="Minimum length of read to retain after trimming"/>
+        <param name="min_qual" argument="-q" type="integer" min="0" value="20" label="Minimum quality threshold for sliding window to pass"/>
+        <param name="window_width" argument="-s" type="integer" min="0" value="4" label="Width of sliding window"/>
+        <param name="inc_primers" argument="-e" type="boolean" truevalue="-e" falsevalue="" checked="false" label="Include reads with no primers"/>
+    </inputs>
+    <outputs>
+        <data name="output_bam" format="bam" label="${tool.name} on ${on_string} Trimmed bam" from_work_dir="trimmed.sorted.bam"/>
+    </outputs>
+    <tests>
+        <!-- #1: SARS-Cov data-->
+        <test>
+            <param name="input_bam" value="covid19/PC00101P_sub.sorted.bam" />
+            <param name="input_bed" value="covid19/ARTIC-V1.bed" />
+            <param name="inc_primers" value="true" />
+            <output name="output_bam" file="covid19/PC00101P_sub.sorted.bam" compare="sim_size" delta="300000"/>
+        </test>
+        <!-- #1: Zika data-->
+        <test>
+            <param name="input_bam" value="zika/Z52_a.sorted.bam" />
+            <param name="input_bed" value="zika/db/zika_primers.bed" />
+            <output name="output_bam" file="zika/Z52_a.trimmed.sorted.bam" compare="sim_size" delta="100000"/>
+        </test>
+        <test>
+            <param name="input_bam" value="zika/Z52_b.sorted.bam" />
+            <param name="input_bed" value="zika/db/zika_primers.bed" />
+            <output name="output_bam" file="zika/Z52_b.trimmed.sorted.bam" compare="sim_size" delta="100000"/>
+        </test>
+    </tests>
+    <help><![CDATA[
+        iVar uses primer positions supplied in a BED file to soft clip primer
+        sequences from an aligned and sorted BAM file. Following this, the reads are
+        trimmed based on a quality threshold(Default: 20). To do the quality
+        trimming, iVar uses a sliding window approach(Default: 4). The windows
+        slides from the 5' end to the 3' end and if at any point the average base
+        quality in the window falls below the threshold, the remaining read is soft
+        clipped. If after trimming, the length of the read is greater than the
+        minimum length specified(Default: 30), the read is written to the new
+        trimmed BAM file
+        
+        Documentation can be found at `<https://andersen-lab.github.io/ivar/html/manualpage.html>`_.
+    ]]>    </help>
+    <expand macro="citations" />
+</tool>