annotate sickle.xml @ 7:dd2ec1b37e96 draft default tip

Added support for the "pair"-data collection type.
author yhoogstrate
date Fri, 20 Feb 2015 02:49:16 -0500
parents c6a790326d1e
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
1 <tool id="sickle" name="Sickle">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
2 <description>Windowed Adaptive Trimming of FastQ data</description>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
3 <requirements>
4
98e35d7ce5c9 sickle now refers to zlib in its own directory
nilesh
parents: 3
diff changeset
4 <requirement type="package" version="1.21.0">sickle</requirement>
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
5 </requirements>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
6 <command>
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
7 sickle
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
8
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
9 #if str($readtype.single_or_paired) == "se":
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
10 se
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
11 #else
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
12 pe
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
13 #end if
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
14
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
15 --quiet
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
16
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
17 #if str($readtype.single_or_paired) == "se":
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
18 -f $input_single -t $qual_type -o $output_single
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
19 #end if
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
20
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
21 #if str($readtype.single_or_paired) == "pe":
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
22 -f $input_paired1 -r $input_paired2 -o $output_paired1 -p $output_paired2 -s $output_paired_single -t $qual_type
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
23 #end if
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
24
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
25 #if str($readtype.single_or_paired) == "pe_collection":
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
26 -f "$readtype.input_paired.forward" -r "$readtype.input_paired.reverse" -o $output_paired1 -p $output_paired2 -s $output_paired_single -t $qual_type
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
27 #end if
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
28
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
29 #if str($qual_threshold) != "":
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
30 -q $qual_threshold
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
31 #end if
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
32
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
33 #if str($length_threshold) != "":
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
34 -l $length_threshold
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
35 #end if
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
36
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
37 #if $no_five_prime:
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
38 -x
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
39 #end if
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
40
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
41 #if $discard_n:
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
42 -n
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
43 #end if
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
44 </command>
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
45
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
46 <inputs>
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
47 <!-- original wrapper code -->
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
48 <conditional name="readtype">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
49 <param name="single_or_paired" type="select" optional="false" label="Single-End or Paired-End reads?">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
50 <option value="se" selected="true">Single-End</option>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
51 <option value="pe">Paired-End</option>
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
52 <option value="pe_collection">Paired-End (as collection)</option>
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
53 </param>
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
54
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
55 <when value="se">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
56 <param format="fastq, fastqsanger" name="input_single" type="data" optional="false" label="Single-End FastQ Reads"/>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
57 </when>
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
58
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
59 <when value="pe">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
60 <param format="fastq, fastqsanger" name="input_paired1" type="data" optional="false" label="Paired-End Forward Strand FastQ Reads"/>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
61 <param format="fastq, fastqsanger" name="input_paired2" type="data" optional="false" label="Paired-End Reverse Strand FastQ Reads"/>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
62 </when>
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
63
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
64 <when value="pe_collection">
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
65 <param format="fastq, fastqsanger" name="input_paired" type="data_collection" collection_type="paired" optional="false" label="Paired-End FastQ Reads as paired collection" />
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
66 </when>
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
67 </conditional>
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
68
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
69 <param name="qual_type" type="select" optional="false" label="Quality type">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
70 <option value="illumina" selected="true">Illumina</option>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
71 <option value="solexa">Solexa</option>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
72 <option value="sanger">Sanger</option>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
73 </param>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
74
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
75 <param name="qual_threshold" value="20" type="integer" optional="true" label="Quality Threshold">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
76 <validator type="in_range" min="0" message="Minimum value is 0"/>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
77 </param>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
78
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
79 <param name="length_threshold" value="20" type="integer" optional="true" label="Length Threshold">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
80 <validator type="in_range" min="0" message="Minimum value is 0"/>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
81 </param>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
82
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
83 <param name="no_five_prime" type="boolean" label="Don't do 5' trimming"/>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
84 <param name="discard_n" type="boolean" label="Discard sequences with Ns"/>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
85 </inputs>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
86
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
87 <outputs>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
88 <data format_source="input_single" name="output_single" label="Single-End output of ${tool.name} on ${on_string}">
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
89 <filter>(readtype['single_or_paired'] == 'se')</filter>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
90 </data>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
91
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
92 <data format_source="input_paired1" name="output_paired1" label="Paired-End forward strand output of ${tool.name} on ${on_string}">
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
93 <filter>(readtype['single_or_paired'] == 'pe' or readtype['single_or_paired'] == 'pe_collection')</filter>
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
94 </data>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
95
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
96 <data format_source="input_paired2" name="output_paired2" label="Paired-End reverse strand output of ${tool.name} on ${on_string}">
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
97 <filter>(readtype['single_or_paired'] == 'pe' or readtype['single_or_paired'] == 'pe_collection')</filter>
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
98 </data>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
99
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
100 <data format_source="input_paired1" name="output_paired_single" label="Singletons from Paired-End output of ${tool.name} on ${on_string}">
7
dd2ec1b37e96 Added support for the &#34;pair&#34;-data collection type.
yhoogstrate
parents: 6
diff changeset
101 <filter>(readtype['single_or_paired'] == 'pe' or readtype['single_or_paired'] == 'pe_collection')</filter>
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
102 </data>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
103 </outputs>
6
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
104 <tests>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
105 <param name="single_or_paired" value="pe"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
106 <param name="input_paired1" value="test.f.fastq"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
107 <param name="input_paired2" value="test.r.fastq"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
108 <param name="qual_type" value="illumina"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
109 <param name="qual_threshold" value="20"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
110 <param name="length_threshold" value="20"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
111 <param name="no_five_prime" value="false"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
112 <param name="discard_n" value="false"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
113 <output name="output_paired1" value="output.f.fastq"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
114 <output name="output_paired2" value="output.r.fastq"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
115 <output name="output_paired_single" value="output.fastq"/>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
116 </tests>
c6a790326d1e moved from test
nilesh
parents: 4
diff changeset
117
3
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
118 <help>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
119 Most modern sequencing technologies produce reads that have deteriorating quality towards the 3'-end and some towards the 5'-end as well. Incorrectly called bases in both regions negatively impact assembles, mapping, and downstream bioinformatics analyses.
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
120
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
121 Sickle is a tool that uses sliding windows along with quality and length thresholds to determine when quality is sufficiently low to trim the 3'-end of reads and also determines when the quality is sufficiently high enough to trim the 5'-end of reads. It will also discard reads based upon the length threshold. It takes the quality values and slides a window across them whose length is 0.1 times the length of the read. If this length is less than 1, then the window is set to be equal to the length of the read. Otherwise, the window slides along the quality values until the average quality in the window rises above the threshold, at which point the algorithm determines where within the window the rise occurs and cuts the read and quality there for the 5'-end cut. Then when the average quality in the window drops below the threshold, the algorithm determines where in the window the drop occurs and cuts both the read and quality strings there for the 3'-end cut. However, if the length of the remaining sequence is less than the minimum length threshold, then the read is discarded entirely. 5'-end trimming can be disabled.
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
122
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
123 Sickle also has an option to discard reads with any Ns in them.
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
124
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
125 Sickle supports three types of quality values: Illumina, Solexa, and Sanger. Note that the Solexa quality setting is an approximation (the actual conversion is a non-linear transformation). The end approximation is close. Illumina quality refers to qualities encoded with the CASAVA pipeline between versions 1.3 and 1.7. Illumina quality using CASAVA >= 1.8 is Sanger encoded.
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
126
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
127 Note that Sickle will remove the 2nd fastq record header (on the "+" line) and replace it with simply a "+". This is the default format for CASAVA >= 1.8.
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
128
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
129 Sickle also supports gzipped file inputs.
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
130 </help>
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
131
8d697edc2f55 Uploaded
nilesh
parents:
diff changeset
132 </tool>