annotate cutadapt.xml @ 8:2d6671b10919 draft

Updated to support cutadapt version 1.1 (also include automatic dependency installation)
author lparsons
date Mon, 26 Nov 2012 17:37:26 -0500
parents 1dada50cca8a
children 93d58ffe39f1
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
1 <tool id="cutadapt" name="Cutadapt" version="1.1.a">
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
2 <description>Remove adapter sequences from Fastq/Fasta</description>
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
3 <requirements>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
4 <requirement type="package" version="1.1">cutadapt</requirement>
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
5 </requirements>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
6 <version_command>cutadapt --version</version_command>
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
7
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
8 <command>cutadapt
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
9 #if $input.extension.startswith( "fastq"):
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
10 --format=fastq
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
11 #if $input.extension == "fastqillumina":
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
12 --quality-base=64
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
13 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
14 #if $input.extension == "fastqsolexa":
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
15 --quality-base=64
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
16 #end if
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
17 #else
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
18 --format=$input.extension
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
19 #end if
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
20 #for $a in $adapters
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
21 --adapter='${a.adapter_source.adapter}'
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
22 #end for
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
23 #for $aa in $anywhere_adapters
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
24 --anywhere='${aa.anywhere_adapter_source.anywhere_adapter}'
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
25 #end for
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
26 #for $fa in $front_adapters
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
27 --front='${fa.front_adapter_source.front_adapter}'
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
28 #end for
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
29 --error-rate=$error_rate
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
30 --times=$count
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
31 --overlap=$overlap
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
32 $match_read_wildcards
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
33 $no_match_adapters_wildcards
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
34
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
35 #if str( $output_filtering_options.output_filtering) == "filter":
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
36 $output_filtering_options.discard
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
37 #if str($output_filtering_options.min) != '0':
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
38 --minimum-length=$output_filtering_options.min
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
39 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
40 #if str($output_filtering_options.max) != '0':
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
41 --maximum-length=$output_filtering_options.max
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
42 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
43 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
44
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
45 --output='$output'
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
46 #if str( $output_params.output_type ) == "additional":
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
47 #if $output_params.rest_file:
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
48 --rest-file=$rest_output
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
49 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
50 #if $output_params.wildcard_file:
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
51 --wildcard-file=$wild_output
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
52 #end if
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
53 #if $output_params.too_short_file:
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
54 --too-short-output=$too_short_output
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
55 #end if
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
56 #if $output_params.untrimmed_file:
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
57 --untrimmed-output=$untrimmed_output
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
58 #end if
3
7ed26fc9fa8a Updated for cutadapt 0.9.4, no longer need python wrapper
Lance Parsons <lparsons@princeton.edu>
parents: 2
diff changeset
59 #end if
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
60
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
61 #if str( $read_modification_params.read_modification) == "modify":
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
62 #if str($read_modification_params.quality_cutoff) != '0':
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
63 --quality-cutoff=$read_modification_params.quality_cutoff
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
64 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
65 #if $read_modification_params.prefix != '':
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
66 --prefix="$read_modification_params.prefix"
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
67 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
68 #if $read_modification_params.suffix != '':
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
69 --suffix="$read_modification_params.suffix"
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
70 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
71 #if $read_modification_params.length_tag != '':
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
72 --length-tag="$read_modification_params.length_tag"
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
73 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
74 $read_modification_params.zero_cap
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
75 #end if
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
76
3
7ed26fc9fa8a Updated for cutadapt 0.9.4, no longer need python wrapper
Lance Parsons <lparsons@princeton.edu>
parents: 2
diff changeset
77 '$input'
4
0a872e59164c Added discard_stderr_wrapper.sh script to catch report and redirect to stdout
Lance Parsons <lparsons@princeton.edu>
parents: 3
diff changeset
78 > $report
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
79 </command>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
80 <inputs>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
81 <param format="fastqsanger, fastqillumina, fastqsolexa, fasta" name="input" type="data" optional="false" label="Fastq file to trim" length="100"/>
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
82
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
83 <repeat name="adapters" title="3' Adapters" help="Sequence of an adapter that was ligated to the 3' end. The adapter itself and anything that follows is trimmed.">
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
84 <conditional name="adapter_source">
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
85 <param name="adapter_source_list" type="select" label="Source" >
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
86 <option value="prebuilt" selected="true">Standard (select from the list below)</option>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
87 <option value="user">Enter custom sequence</option>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
88 </param>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
89
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
90 <when value="user">
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
91 <param name="adapter" size="30" label="Enter custom 3' adapter sequence" type="text" value="AATTGGCC" />
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
92 </when>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
93
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
94 <when value="prebuilt">
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
95 <param name="adapter" type="select" label="Choose 3' adapter">
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
96 <options from_file="fastx_clipper_sequences.txt">
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
97 <column name="name" index="1"/>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
98 <column name="value" index="0"/>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
99 </options>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
100 </param>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
101 </when>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
102 </conditional>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
103 </repeat>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
104
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
105 <repeat name="anywhere_adapters" title="5' or 3' (Anywhere) Adapters" help="Sequence of an adapter that was ligated to the 5' or 3' end. If the adapter is found within the read or overlapping the 3' end of the read, the behavior is the same as for the -a option. If the adapter overlaps the 5' end (beginning of the read), the initial portion of the read matching the adapter is trimmed, but anything that follows is kept. If multiple -a or -b options are given, only the best matching adapter is trimmed.">
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
106 <conditional name="anywhere_adapter_source">
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
107 <param name="anywhere_adapter_source_list" type="select" label="Source">
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
108 <option value="prebuilt" selected="true">Standard (select from the list below)</option>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
109 <option value="user">Enter custom sequence</option>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
110 </param>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
111
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
112 <when value="user">
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
113 <param name="anywhere_adapter" size="30" label="Enter custom 5' or 3' adapter sequence" type="text" value="AATTGGCC" />
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
114 </when>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
115 <when value="prebuilt">
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
116 <param name="anywhere_adapter" type="select" label="Choose 5' or 3' adapter">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
117 <options from_file="fastx_clipper_sequences.txt">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
118 <column name="name" index="1"/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
119 <column name="value" index="0"/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
120 </options>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
121 </param>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
122 </when>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
123 </conditional>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
124 </repeat>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
125
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
126 <repeat name="front_adapters" title="5' (Front) Adapters" help="Sequence of an adapter that was ligated to the 5' end. If the adapter sequence starts with the character '^', the adapter is 'anchored'. An anchored adapter must appear in its entirety at the 5' end of the read (it is a prefix of the read). A non-anchored adapter may appear partially at the 5' end, or it may occur within the read. If it is found within a read, the sequence preceding the adapter is also trimmed. In all cases the adapter itself is trimmed.">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
127 <conditional name="front_adapter_source">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
128 <param name="front_adapter_source_list" type="select" label="Source">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
129 <option value="prebuilt" selected="true">Standard (select from the list below)</option>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
130 <option value="user">Enter custom sequence</option>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
131 </param>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
132
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
133 <when value="user">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
134 <param name="front_adapter" size="30" label="Enter custom 5' adapter sequence" type="text" value="AATTGGCC" />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
135 </when>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
136 <when value="prebuilt">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
137 <param name="front_adapter" type="select" label="Choose 5' adapter">
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
138 <options from_file="fastx_clipper_sequences.txt">
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
139 <column name="name" index="1"/>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
140 <column name="value" index="0"/>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
141 </options>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
142 </param>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
143 </when>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
144 </conditional>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
145 </repeat>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
146
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
147 <param name="error_rate" type="float" min="0" max="1" value="0.1" label="Maximum error rate" help="Maximum allowed error rate (no. of errors divided by the length of the matching region)." />
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
148 <param name="count" type="integer" min="1" value="1" label="Match times" help="Try to remove adapters at most COUNT times. Useful when an adapter gets appended multiple times." />
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
149 <param name="overlap" type="integer" min="1" value="3" label="Minimum overlap length" help="Minimum overlap length. If the overlap between the adapter and the sequence is shorter than LENGTH, the read is not modified. This reduces the number of bases trimmed purely due to short random adapter matches." />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
150
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
151 <param name="match_read_wildcards" type="boolean" value="false" truevalue="--match-read-wildcards" falsevalue="" label="Match Read Wildcards" help="Allow 'N's in the read as matches to the adapter." />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
152 <param name="no_match_adapters_wildcards" type="boolean" value="false" truevalue="--no-match-adapter-wildcards" falsevalue="" label="Do Not Match Adapter Wildcards" help="Do not treat 'N' in the adapter sequence as wildcards. This is needed when you want to search for literal 'N' characters." />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
153
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
154 <conditional name="output_filtering_options">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
155 <param name="output_filtering" type="select" label="Output filtering options" help="Options for filtering processed reads by those that contain the adapter or by minimum or maximum length">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
156 <option value="default">Default (no filtering)</option>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
157 <option value="filter">Set Filters</option>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
158 </param>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
159 <when value="default" />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
160 <when value="filter">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
161 <param name="discard" type="boolean" value="false" truevalue="--discard" falsevalue="" label="Discard Trimmed Reads" help="Discard reads that contain the adapter instead of trimming them. Use the 'Minimum overlap length' option in order to avoid throwing away too many randomly matching reads!" />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
162 <param name="min" type="integer" min="0" optional="true" value="0" label="Minimum length" help="Discard trimmed reads that are shorter than LENGTH. Reads that are too short even before adapter removal are also discarded. In colorspace, an initial primer is not counted. Value of 0 means no minimum length." />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
163 <param name="max" type="integer" min="0" optional="true" value="0" label="Maximum length" help="Discard trimmed reads that are longer than LENGTH. Reads that are too long even before adapter removal are also discarded. In colorspace, an initial primer is not counted. Value of 0 means no maximum length." />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
164 </when>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
165 </conditional>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
166
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
167 <conditional name="output_params">
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
168 <param name="output_type" type="select" label="Additional output options" help="By default all reads will be put in the same file. However, reads with adapters matching in the middle, unmatched reads, and too-short reads can be saved in separate files.">
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
169 <option value="default">Default</option>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
170 <option value="additional">Additional output files</option>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
171 </param>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
172 <when value="default" />
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
173 <when value="additional">
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
174 <param name="rest_file" type="boolean" value="false" label="Rest of Read" help="When the adapter matches in the middle of a read, write the rest (after the adapter) into a file."/>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
175 <param name="wildcard_file" type="boolean" value="false" label="Wildcard File" help="When the adapter has wildcard bases ('N's) write adapter bases matching wildcard positions to file."/>
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
176 <param name="too_short_file" type="boolean" value="false" label="Too Short Reads" help="Write reads that are too short (according to minimum length specified) to a file. (default: discard reads)"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
177 <param name="untrimmed_file" type="boolean" value="false" label="Untrimmed Reads" help="Write reads that do not contain the adapter to a separate file, instead of writing them to the regular output file. (default: output to same file as trimmed)"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
178 </when>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
179 </conditional>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
180
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
181 <conditional name="read_modification_params">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
182 <param name="read_modification" type="select" label="Additional modifications to reads" help="Various options to trim reads based on quality, modify read names and quality scores">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
183 <option value="none">No Read Modifications</option>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
184 <option value="modify">Set Modification Options</option>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
185 </param>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
186 <when value="none" />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
187 <when value="modify">
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
188 <param name="quality_cutoff" type="integer" min="0" optional="true" value="0" label="Quality cutoff" help="Trim low-quality ends from reads before adapter removal. The algorithm is the same as the one used by BWA (Subtract CUTOFF from all qualities; compute partial sums from all indices to the end of the sequence; cut sequence at the index at which the sum is minimal). Value of 0 means no quality trimming." />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
189 <param name="prefix" label="Prefix" type="text" help="Add this prefix to read names" />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
190 <param name="suffix" label="Suffix" type="text" help="Add this suffix to read names" />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
191 <param name="length_tag" label="Length Tag" type="text" help="Search for TAG followed by a decimal number in the name of the read (description/comment field of the FASTA or FASTQ file). Replace the decimal number with the correct length of the trimmed read. For example, use --length-tag 'length=' to search for fields like 'length=123'." />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
192 <param name="zero_cap" type="boolean" value="false" label="Change negative quality values to zero (0)" truevalue="--zero-cap" falsevalue="" help="Workaround to avoid segmentation faults in BWA" />
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
193 </when>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
194 </conditional>
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
195 </inputs>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
196
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
197 <outputs>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
198 <data format="txt" name="report" label="${tool.name} on ${on_string} (Report)" />
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
199 <data format="input" name="output" metadata_source="input"/>
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
200 <data format="input" name="rest_output" metadata_source="input" label="${tool.name} on ${on_string} (Rest of Reads)" >
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
201 <filter>(output_params['output_type'] == "additional")</filter>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
202 <filter>(output_params['rest_file'] is True)</filter>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
203 </data>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
204 <data format="txt" name="wild_output" metadata_source="input" label="${tool.name} on ${on_string} (Wildcard File)" >
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
205 <filter>(output_params['output_type'] == "additional")</filter>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
206 <filter>(output_params['wild_file'] is True)</filter>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
207 </data>
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
208 <data format="input" name="too_short_output" metadata_source="input" label="${tool.name} on ${on_string} (Too Short Reads)" >
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
209 <filter>(output_params['output_type'] == "additional")</filter>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
210 <filter>(output_params['too_short_file'] is True)</filter>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
211 </data>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
212 <data format="input" name="untrimmed_output" metadata_source="input" label="${tool.name} on ${on_string} (Untrimmed Reads)" >
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
213 <filter>(output_params['output_type'] == "additional")</filter>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
214 <filter>(output_params['untrimmed_file'] is True)</filter>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
215 </data>
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
216 </outputs>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
217
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
218 <tests>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
219 <test>
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
220 <param name="input" value="cutadapt_small.fastq" ftype="fastqsanger"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
221 <param name="adapter_source_list" value="user"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
222 <param name="adapter" value=""/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
223 <param name="anywhere_adapter_source_list" value="user"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
224 <param name="anywhere_adapter" value="TTAGACATATCTCCGTCG"/>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
225 <param name="front_adapter_source_list" value="user"/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
226 <param name="front_adapter" value=""/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
227 <param name="output_filtering" value="default"/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
228 <param name="read_modification" value="none"/>
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
229 <param name="output_type" value="default"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
230 <output name="output" file="cutadapt_small.out"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
231 </test>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
232 <!-- Unable to get tests to function with conditional parameters
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
233 <test>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
234 <param name="input" value="cutadapt_small.fastq" ftype="fastqsanger"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
235 <param name="adapter_source_list" value="user"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
236 <param name="adapter" value="TTAGACATATCTCCGTCG"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
237 <param name="anywhere_adapter_source_list" value="user"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
238 <param name="anywhere_adapter" value=""/>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
239 <param name="front_adapter_source_list" value="user"/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
240 <param name="front_adapter" value=""/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
241 <param name="output_filtering" value="filter"/>
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
242 <param name="discard" value="true"/>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
243 <param name="read_modification" value="none"/>
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
244 <param name="output_type" value="default"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
245 <output name="output" file="cutadapt_discard.out"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
246 </test>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
247 <test>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
248 <param name="input" value="cutadapt_rest.fa" ftype="fasta"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
249 <param name="adapter_source_list" value="user"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
250 <param name="adapter" value="ADAPTER"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
251 <param name="anywhere_adapter_source_list" value="user"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
252 <param name="anywhere_adapter" value=""/>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
253 <param name="front_adapter_source_list" value="user"/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
254 <param name="front_adapter" value=""/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
255 <param name="output_filtering" value="default"/>
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
256 <param name="read_modification" value="none"/>
5
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
257 <param name="output_type" value="additional"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
258 <param name="rest_file" value="true"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
259 <output name="output" file="cutadapt_rest.out"/>
1dada50cca8a Support for cutadapt 0.9.5, added quality trimming and additional output options
Lance Parsons <lparsons@princeton.edu>
parents: 4
diff changeset
260 <output name="rest_output" file="cutadapt_rest2.out"/>
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
261 </test>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
262 -->
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
263 </tests>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
264
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
265 <help>
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
266 Summary
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
267 -------
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
268 This tool removes adapter sequences from DNA high-throughput
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
269 sequencing data. This is usually necessary when the read length of the
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
270 machine is longer than the molecule that is sequenced, such as in
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
271 microRNA data.
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
272
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
273 The tool is based on the opensource cutadapt_ tool.
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
274
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
275 -----
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
276
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
277 Algorithm
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
278 ---------
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
279
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
280 cutadapt uses a simple semi-global alignment algorithm, without any special optimizations.
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
281 For speed, the algorithm is implemented as a Python extension module in ``calignmodule.c``.
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
282
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
283
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
284 Partial adapter matches
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
285 -----------------------
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
286
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
287 Cutadapt correctly deals with partial adapter matches. As an example, suppose
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
288 your adapter sequence is ``ADAPTER`` (specified via 3' Adapters parameter).
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
289 If you have these input sequences::
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
290
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
291 MYSEQUENCEADAPTER
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
292 MYSEQUENCEADAP
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
293 MYSEQUENCEADAPTERSOMETHINGELSE
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
294
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
295 All of them will be trimmed to ``MYSEQUENCE``. If the sequence starts with an
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
296 adapter, like this::
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
297
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
298 ADAPTERSOMETHING
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
299
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
300 It will be empty after trimming.
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
301
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
302 When the allowed error rate is sufficiently high, errors in
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
303 the adapter sequence are allowed. For example, ``ADABTER`` (1 mismatch), ``ADAPTR`` (1 deletion),
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
304 and ``ADAPPTER`` (1 insertion) will all be recognized if the error rate is set to 0.15.
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
305
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
306
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
307 Anchoring 5' adapters
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
308 ---------------------
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
309
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
310 If you specify a 5' (Front) adapter, the adapter may overlap the beginning of the read or
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
311 occur anywhere whithin it. If it appears withing the read, the sequence that precedes it
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
312 will also be trimmed in addition to the adapter. For example when the adapter sequence is
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
313 ``ADAPTER``::
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
314
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
315 HELLOADAPTERTHERE
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
316 APTERTHERE
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
317
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
318 will both be trimmed to ``THERE``. To avoid this, you can prefix the adapter with the character
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
319 ``^``. This will restrict the search, forcing the adapter to be a prefix of the read. With
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
320 the adapter sequence set to ``^ADAPTER``, only reads like this will be trimmed::
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
321
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
322 ADAPTERHELLO
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
323
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
324
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
325 Allowing adapters anywhere
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
326 --------------------------
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
327
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
328 Cutadapt assumes that any adapter specified via the 3' Adapter parameter
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
329 was ligated to the 3\' end of the sequence. This is the correct assumption for
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
330 at least the SOLiD and Illumina small RNA protocols and probably others.
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
331 The assumption is enforced by the alignment algorithm, which only finds the adapter
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
332 when its starting position is within the read. In other words, the 5' base of
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
333 the adapter must appear within the read. The adapter and all bases following
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
334 it are remved.
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
335
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
336 If, on the other hand, your adapter can also be ligated to the 5' end (on
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
337 purpose or by accident), you should tell cutadapt so by using the Anywhere Adapter
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
338 parameter. It will then use a slightly different alignment algorithm
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
339 (so-called semiglobal alignment), which allows any type of overlap between the
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
340 adapter and the sequence. In particular, the adapter may appear only partially
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
341 in the beginning of the read, like this::
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
342
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
343 PTERMYSEQUENCE
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
344
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
345 The decision which part of the read to remove is made as follows: If there is at
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
346 least one base before the found adapter, then the adapter is considered to be
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
347 a 3' adapter and the adapter itself and everything following it is removed.
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
348 Otherwise, the adapter is considered to be a 5' adapter and it is removed from
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
349 the read.
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
350
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
351 Here are some examples, which may make this clearer (left: read, right: trimmed
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
352 read)::
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
353
8
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
354 MYSEQUENCEADAPTER -> MYSEQUENCE (3' adapter)
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
355 MADAPTER -> M (3' adapter)
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
356 ADAPTERMYSEQUENCE -> MYSEQUENCE (5' adapter)
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
357 PTERMYSEQUENCE -> MYSEQUENCE (5' adapter)
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
358
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
359 The regular algorithm (3' Adapter) would trim the first two examples in the same way,
2d6671b10919 Updated to support cutadapt version 1.1 (also include automatic dependency installation)
lparsons
parents: 5
diff changeset
360 but trim the third to an empty sequence and trim the fourth not at all.
0
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
361
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
362
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
363 .. _cutadapt: http://code.google.com/p/cutadapt/
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
364 </help>
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
365
8b064ea16722 Initial version with multiple adapter support
Lance Parsons <lparsons@princeton.edu>
parents:
diff changeset
366 </tool>