Mercurial > repos > devteam > bowtie2
comparison bowtie2_wrapper.xml @ 5:5cfa4b6db588 draft
planemo upload commit 33927a87ba2eee9bf0ecdd376a66241b17b3d734
author | devteam |
---|---|
date | Tue, 13 Oct 2015 12:13:27 -0400 |
parents | 2a6cfe8997aa |
children | 76231961d33b |
comparison
equal
deleted
inserted
replaced
4:c5a6f28a3e85 | 5:5cfa4b6db588 |
---|---|
1 <tool id="bowtie2" name="Bowtie2" version="0.3"> | 1 <tool id="bowtie2" name="Bowtie2" version="0.6"> |
2 <!-- Wrapper compatible with Bowtie version 2.2.4 --> | 2 <!-- Wrapper compatible with Bowtie version 2.2.4 --> |
3 <description>- map reads against reference genome</description> | 3 <description>- map reads against reference genome</description> |
4 <macros> | |
5 <import>read_group_macros.xml</import> | |
6 </macros> | |
4 <version_command>bowtie2 --version</version_command> | 7 <version_command>bowtie2 --version</version_command> |
5 <requirements> | 8 <requirements> |
6 <requirement type="package" version="2.2.4">bowtie2</requirement> | 9 <requirement type="package" version="2.2.4">bowtie2</requirement> |
7 <requirement type="package" version="0.1.18">samtools</requirement> | 10 <requirement type="package" version="0.1.18">samtools</requirement> |
8 </requirements> | 11 </requirements> |
9 <command> | 12 <command> |
10 | 13 |
11 ## prepare bowtie2 index | 14 ## prepare bowtie2 index |
12 #set index_path = '' | 15 #set index_path = '' |
13 #if str($reference_genome.source) == "history": | 16 #if str($reference_genome.source) == "history": |
14 bowtie2-build "$reference_genome.own_file" genome && | 17 bowtie2-build "$reference_genome.own_file" genome && |
15 ln -s "$reference_genome.own_file" genome.fa && | 18 ln -s "$reference_genome.own_file" genome.fa && |
16 #set index_path = 'genome' | 19 #set index_path = 'genome' |
17 #else: | 20 #else: |
18 #set index_path = $reference_genome.index.fields.path | 21 #set index_path = $reference_genome.index.fields.path |
19 #end if | 22 #end if |
20 | 23 |
21 ## execute bowtie2 | 24 ## execute bowtie2 |
22 | 25 |
23 bowtie2 | 26 bowtie2 |
24 | 27 |
25 ## number of threads | 28 ## number of threads |
26 -p \${GALAXY_SLOTS:-4} | 29 -p \${GALAXY_SLOTS:-4} |
27 | 30 |
28 ## index file path | 31 ## index file path |
29 -x $index_path | 32 -x $index_path |
30 | 33 |
31 | |
32 ## Fastq inputs | 34 ## Fastq inputs |
33 #if str( $library.type ) == "single": | 35 #if str( $library.type ) == "single": |
34 -U "${input_1}" | 36 -U "${library.input_1}" |
35 #if str( $library.unaligned_file ) == "true": | 37 #if str( $library.unaligned_file ) == "true": |
36 --un $output_unaligned_reads_l | 38 --un $output_unaligned_reads_l |
37 #end if | 39 #end if |
38 #elif str( $library.type ) == "paired": | 40 #elif str( $library.type ) == "paired": |
39 -1 "${input_1}" | 41 -1 "${library.input_1}" |
40 -2 "${input_2}" | 42 -2 "${library.input_2}" |
41 #if str( $library.paired_options.paired_options_selector ) == "yes": | 43 #if str( $library.paired_options.paired_options_selector ) == "yes": |
42 -I "${library.paired_options.I}" | 44 -I "${library.paired_options.I}" |
43 -X "${library.paired_options.X}" | 45 -X "${library.paired_options.X}" |
44 ${library.paired_options.fr_rf_ff} | 46 ${library.paired_options.fr_rf_ff} |
45 ${library.paired_options.no_mixed} | 47 ${library.paired_options.no_mixed} |
67 #end if | 69 #end if |
68 #if str( $library.unaligned_file ) == "true": | 70 #if str( $library.unaligned_file ) == "true": |
69 --un-conc $output_unaligned_reads_l | 71 --un-conc $output_unaligned_reads_l |
70 #end if | 72 #end if |
71 #end if | 73 #end if |
72 | 74 |
73 ## Readgroups | 75 ## Read group information. |
74 #if str( $read_group.read_group_selector ) == "yes": | 76 @define_read_group_helpers@ |
75 --rg-id "${read_group.rgid}" | 77 #if str( $library.type ) == "single": |
76 --rg "SM:${read_group.rgsm}" | 78 #set $rg_auto_name = $read_group_name_default($library.input_1) |
77 --rg "LB:${read_group.rglb}" | 79 #elif str( $library.type ) == "paired": |
78 --rg "PL:${read_group.rgpl}" | 80 #set $rg_auto_name = $read_group_name_default($library.input_1, $library.input_2) |
81 #else | |
82 #set $rg_auto_name = $read_group_name_default($library.input_1) | |
79 #end if | 83 #end if |
80 | 84 @set_use_rg_var@ |
85 @set_read_group_vars@ | |
86 #if $use_rg | |
87 $format_read_group("", $rg_id, '"', arg='--rg-id ') | |
88 $format_read_group("SM:", $rg_sm, '"', arg='--rg ') | |
89 $format_read_group("PL:", $rg_pl, '"', arg='--rg ') | |
90 $format_read_group("LB:", $rg_lb, '"', arg='--rg ') | |
91 $format_read_group("CN:", $rg_cn, '"', arg='--rg ') | |
92 $format_read_group("DS:", $rg_ds, '"', arg='--rg ') | |
93 $format_read_group("DT:", $rg_dt, '"', arg='--rg ') | |
94 $format_read_group("FO:", $rg_fo, '"', arg='--rg ') | |
95 $format_read_group("KS:", $rg_ks, '"', arg='--rg ') | |
96 $format_read_group("PG:", $rg_pg, '"', arg='--rg ') | |
97 $format_read_group("PI:", $rg_pi, '"', arg='--rg ') | |
98 $format_read_group("PU:", $rg_pu, '"', arg='--rg ') | |
99 #end if | |
100 | |
81 ## Analysis type | 101 ## Analysis type |
82 #if ( str( $analysis_type.analysis_type_selector ) == "simple" and str( $analysis_type.presets ) != "no_presets" ): | 102 #if ( str( $analysis_type.analysis_type_selector ) == "simple" and str( $analysis_type.presets ) != "no_presets" ): |
83 $analysis_type.presets | 103 $analysis_type.presets |
84 #elif str( $analysis_type.analysis_type_selector ) == "full": | 104 #elif str( $analysis_type.analysis_type_selector ) == "full": |
85 #if str( $analysis_type.input_options.input_options_selector ) == "yes": | 105 #if str( $analysis_type.input_options.input_options_selector ) == "yes": |
86 --skip "${analysis_type.input_options.skip}" | 106 --skip "${analysis_type.input_options.skip}" |
87 --qupto "${analysis_type.input_options.qupto}" | 107 --qupto "${analysis_type.input_options.qupto}" |
88 --trim5 "${analysis_type.input_options.trim5}" | 108 --trim5 "${analysis_type.input_options.trim5}" |
89 --trim3 "${analysis_type.input_options.trim3}" | 109 --trim3 "${analysis_type.input_options.trim3}" |
90 ${analysis_type.input_options.qv_encoding} | 110 ${analysis_type.input_options.qv_encoding} |
91 ${analysis_type.input_options.solexa-quals} | 111 ${analysis_type.input_options.solexa_quals} |
92 ${analysis_type.input_options.int-quals} | 112 ${analysis_type.input_options.int_quals} |
93 #end if | 113 #end if |
94 | 114 |
95 #if str( $analysis_type.alignment_options.alignment_options_selector ) == "yes": | 115 #if str( $analysis_type.alignment_options.alignment_options_selector ) == "yes": |
96 -N "${$analysis_type.alignment_options.N}" | 116 -N "${analysis_type.alignment_options.N}" |
97 -L "${$analysis_type.alignment_options.L}" | 117 -L "${analysis_type.alignment_options.L}" |
98 -i "${$analysis_type.alignment_options.i}" | 118 -i "${analysis_type.alignment_options.i}" |
99 --n_ceil "${$analysis_type.alignment_options.n_ceil}" | 119 --n-ceil "${analysis_type.alignment_options.n_ceil}" |
100 --dpad "${$analysis_type.alignment_options.dpad}" | 120 --dpad "${analysis_type.alignment_options.dpad}" |
101 --gbar "${$analysis_type.alignment_options.gbar}" | 121 --gbar "${analysis_type.alignment_options.gbar}" |
102 ${analysis_type.alignment_options.ignore-quals} | 122 ${analysis_type.alignment_options.ignore_quals} |
103 ${analysis_type.alignment_options.nofw} | 123 ${analysis_type.alignment_options.nofw} |
104 ${analysis_type.alignment_options.norc} | 124 ${analysis_type.alignment_options.norc} |
105 ${analysis_type.alignment_options.no_1mm_upfront} | 125 ${analysis_type.alignment_options.no_1mm_upfront} |
106 #if str( $analysis_type.alignment_options.align_mode.align_mode_selector ) == "end-to-end": | 126 #if str( $analysis_type.alignment_options.align_mode.align_mode_selector ) == "end-to-end": |
107 --end-to-end | 127 --end-to-end |
108 --score-min "${$analysis_type.alignment_options.align_mode.core-min}" | 128 --score-min "${analysis_type.alignment_options.align_mode.score_min_ete}" |
109 #elif str( $analysis_type.alignment_options.align_mode.align_mode_selector ) == "local": | 129 #elif str( $analysis_type.alignment_options.align_mode.align_mode_selector ) == "local": |
110 --local | 130 --local |
111 --score-min "${$analysis_type.alignment_options.align_mode.core-min}" | 131 --score-min "${analysis_type.alignment_options.align_mode.score_min_loc}" |
112 #end if | 132 #end if |
113 #end if | 133 #end if |
114 | 134 |
115 #if str( $analysis_type.scoring_options.scoring_options_selector ) == "yes": | 135 #if str( $analysis_type.scoring_options.scoring_options_selector ) == "yes": |
116 --ma "${analysis_type.scoring_options.ma}" | 136 #if ( str( $analysis_type.alignment_options.alignment_options_selector ) == "yes" and str( $analysis_type.alignment_options.align_mode.align_mode_selector ) == "local" ): |
137 --ma "${analysis_type.scoring_options.ma}" | |
138 #end if | |
117 --mp "${analysis_type.scoring_options.mp}" | 139 --mp "${analysis_type.scoring_options.mp}" |
118 --np "${analysis_type.scoring_options.np}" | 140 --np "${analysis_type.scoring_options.np}" |
119 --rdg "${analysis_type.scoring_options.rdg_read_open},${analysis_type.scoring_options.rdg_read_extend}" | 141 --rdg "${analysis_type.scoring_options.rdg_read_open},${analysis_type.scoring_options.rdg_read_extend}" |
120 --rfg "${analysis_type.scoring_options.rfg_ref_open},${analysis_type.scoring_options.rfg_ref_extend}" | 142 --rfg "${analysis_type.scoring_options.rfg_ref_open},${analysis_type.scoring_options.rfg_ref_extend}" |
121 #end if | 143 #end if |
122 | 144 |
123 #if str( $analysis_type.reporting_options.reporting_options_selector ) == "k": | 145 #if str( $analysis_type.reporting_options.reporting_options_selector ) == "k": |
124 -k "${analysis_type.reporting_options.k}" | 146 -k "${analysis_type.reporting_options.k}" |
125 #elif str( $analysis_type.reporting_options.reporting_options_selector ) == "a": | 147 #elif str( $analysis_type.reporting_options.reporting_options_selector ) == "a": |
126 -a | 148 -a |
127 #end if | 149 #end if |
128 | 150 |
129 #if str( $analysis_type.effort_options.effort_options_selector ) == "yes": | 151 #if str( $analysis_type.effort_options.effort_options_selector ) == "yes": |
130 -D "${analysis_type.effort_options.D}" | 152 -D "${analysis_type.effort_options.D}" |
131 -R "${analysis_type.effort_options.R}" | 153 -R "${analysis_type.effort_options.R}" |
132 #end if | 154 #end if |
133 | 155 |
134 #if str( $analysis_type.sam_options.sam_options_selector ) == "yes": | 156 #if str( $analysis_type.sam_options.sam_options_selector ) == "yes": |
135 ${analysis_type.sam_options.no-unal} | 157 ${analysis_type.sam_options.no_unal} |
136 ${analysis_type.sam_options.omit-sec-seq} | 158 ${analysis_type.sam_options.omit_sec_seq} |
137 #end if | 159 #end if |
138 | 160 |
139 #if str( $analysis_type.other_options.other_options_selector ) == "yes": | 161 #if str( $analysis_type.other_options.other_options_selector ) == "yes": |
140 ${analysis_type.other_options.reorder} | 162 ${analysis_type.other_options.reorder} |
141 ${analysis_type.other_options.non-deterministic} | 163 ${analysis_type.other_options.non_deterministic} |
142 --seed "${analysis_type.other_options.seed}" | 164 --seed "${analysis_type.other_options.seed}" |
143 #end if | 165 #end if |
144 | 166 |
145 #elif str( $analysis_type.analysis_type_selector ) == "cline": | 167 #elif str( $analysis_type.analysis_type_selector ) == "cline": |
146 ${analysis_type.cline} | 168 ${analysis_type.cline} |
147 #end if | 169 #end if |
148 | 170 |
149 ## view/sort and output BAM file | 171 ## output file |
150 | samtools view -Su - | samtools sort -o - - > $output | 172 #if ( str( $analysis_type.analysis_type_selector ) != "full" or str( $analysis_type.sam_opt ) != "true" ): |
151 | 173 | samtools view -Su - | samtools sort -o - - > $output |
174 #else | |
175 > $output_sam | |
176 #end if | |
177 | |
152 ## rename unaligned sequence files | 178 ## rename unaligned sequence files |
153 #if $library.type == "paired" and $output_unaligned_reads_l and $output_unaligned_reads_r: | 179 #if $library.type == "paired" and $output_unaligned_reads_l and $output_unaligned_reads_r: |
154 #set left = str($output_unaligned_reads_l).replace( '.dat', '.1.dat' ) | 180 #from os.path import splitext |
155 #set right = str($output_unaligned_reads_l).replace( '.dat', '.2.dat' ) | 181 #set _unaligned_root, _unaligned_ext = splitext( str( $output_unaligned_reads_l ) ) |
156 | 182 && mv "${ _unaligned_root }.1${_unaligned_ext}" "${ output_unaligned_reads_l }" |
157 ; mv $left $output_unaligned_reads_l; | 183 && mv "${ _unaligned_root }.2${_unaligned_ext}" "${ output_unaligned_reads_r }" |
158 mv $right $output_unaligned_reads_r | |
159 #end if | 184 #end if |
160 | 185 |
161 </command> | 186 </command> |
162 | |
163 <!-- basic error handling --> | 187 <!-- basic error handling --> |
164 <stdio> | 188 <stdio> |
165 <exit_code range="1:" level="fatal" description="Tool exception" /> | 189 <exit_code range="1:" level="fatal" description="Tool exception" /> |
166 </stdio> | 190 </stdio> |
167 | 191 |
168 <inputs> | 192 <inputs> |
169 <!-- single/paired --> | 193 <!-- single/paired --> |
170 <conditional name="library"> | 194 <conditional name="library"> |
171 <param name="type" type="select" label="Is this single or paired library"> | 195 <param name="type" type="select" label="Is this single or paired library"> |
172 <option value="single">Single-end</option> | 196 <option value="single">Single-end</option> |
173 <option value="paired">Paired-end</option> | 197 <option value="paired">Paired-end</option> |
174 <option value="paired_collection">Paired-end Dataset Collection</option> | 198 <option value="paired_collection">Paired-end Dataset Collection</option> |
175 </param> | 199 </param> |
176 | 200 |
177 <when value="single"> | 201 <when value="single"> |
178 <param name="input_1" format="fastqsanger" type="data" label="FASTQ file" help="Nucleotide-space: Must have Sanger-scaled quality values with ASCII offset 33"/> | 202 <param name="input_1" format="fastqsanger" type="data" label="FASTQ file" help="Must be of datatype "fastqsanger"" /> |
179 <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> | 203 <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> |
180 </when> | 204 </when> |
181 <when value="paired"> | 205 <when value="paired"> |
182 <param name="input_1" format="fastqsanger" type="data" label="FASTQ file" help="Nucleotide-space: Must have Sanger-scaled quality values with ASCII offset 33" /> | 206 <param name="input_1" format="fastqsanger" type="data" label="FASTQ file #1" help="Must be of datatype "fastqsanger"" /> |
183 <param name="input_2" format="fastqsanger" type="data" label="FASTQ file" help="Nucleotide-space: Must have Sanger-scaled quality values with ASCII offset 33" /> | 207 <param name="input_2" format="fastqsanger" type="data" label="FASTQ file #2" help="Must be of datatype "fastqsanger"" /> |
184 <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> | 208 <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> |
185 <conditional name="paired_options"> | 209 <conditional name="paired_options"> |
186 <param name="paired_options_selector" type="select" label="Do you want to set paired-end options?" help="See "Alignment Options" section of Help below for information"> | 210 <param name="paired_options_selector" type="select" label="Do you want to set paired-end options?" help="See "Alignment Options" section of Help below for information"> |
187 <option value="no" selected="True">No</option> | 211 <option value="no" selected="True">No</option> |
188 <option value="yes">Yes</option> | 212 <option value="yes">Yes</option> |
189 </param> | 213 </param> |
190 <when value="yes"> | 214 <when value="yes"> |
191 <param name="I" type="integer" value="0" min="0" label="Set the minimum fragment length for valid paired-end alignments" help="-I/--minins; E.g. if `-I 60` is specified and a paired-end alignment consists of two 20-bp alignments in the appropriate orientation with a 20-bp gap between them, that alignment is considered valid (as long as `-X` is also satisfied). A 19-bp gap would not be valid in that case. If trimming options `-3` or `-5` are also used, the `-I` constraint is applied with respect to the untrimmed mates. The larger the difference between `-I` and `-X`, the slower Bowtie 2 will run. This is because larger differences bewteen `-I` and `-X` require that Bowtie 2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), Bowtie 2 is very efficient. Default=0"/> | 215 <param name="I" type="integer" value="0" min="0" label="Set the minimum fragment length for valid paired-end alignments" help="-I/--minins; E.g. if `-I 60` is specified and a paired-end alignment consists of two 20-bp alignments in the appropriate orientation with a 20-bp gap between them, that alignment is considered valid (as long as `-X` is also satisfied). A 19-bp gap would not be valid in that case. If trimming options `-3` or `-5` are also used, the `-I` constraint is applied with respect to the untrimmed mates. The larger the difference between `-I` and `-X`, the slower Bowtie 2 will run. This is because larger differences bewteen `-I` and `-X` require that Bowtie 2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), Bowtie 2 is very efficient. Default=0"/> |
192 <param name="X" type="integer" value="500" min="0" lable="Set the maximum fragment length for valid paired-end alignments" help="-X/--maxins; E.g. if `-X 100` is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as `-I` is also satisfied). A 61-bp gap would not be valid in that case. If trimming options `-3` or `-5` are also used, the `-X` constraint is applied with respect to the untrimmed mates, not the trimmed mates; Deafult=500"/> | 216 <param name="X" type="integer" value="500" min="0" label="Set the maximum fragment length for valid paired-end alignments" help="-X/--maxins; E.g. if `-X 100` is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as `-I` is also satisfied). A 61-bp gap would not be valid in that case. If trimming options `-3` or `-5` are also used, the `-X` constraint is applied with respect to the untrimmed mates, not the trimmed mates; Default=500"/> |
193 <param name="fr_rf_ff" type="select" display="radio" label="Select the upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand" help="--fr, --rf, or --ff; E.g., if `--fr` is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (`-I` and `-X`) are met, that alignment is valid. Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. `--rf` likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. ` --ff` requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented; Default=--fr (appropriatefor Illumina's Paired-end Sequencing Assay)"> | 217 <param name="fr_rf_ff" type="select" display="radio" label="Select the upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand" help="--fr, --rf, or --ff; E.g., if `--fr` is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (`-I` and `-X`) are met, that alignment is valid. Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. `--rf` likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. `--ff` requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented; Default=--fr (appropriate for Illumina's Paired-end Sequencing Assay)"> |
194 <option value="--fr" selected="True">--fr</option> | 218 <option value="--fr" selected="True">--fr</option> |
195 <option value="--rf">--fr</option> | 219 <option value="--rf">--rf</option> |
196 <option value="--ff">--ff</option> | 220 <option value="--ff">--ff</option> |
197 </param> | 221 </param> |
198 <param name="no_mixed" type="boolean" truevalue="--no-mixed" falsevalue="" checked="False" label="Disable no-mixed behavior" help="--no-mixed; By default, when `bowtie2` cannot find a concordant or discordant alignment for a pair, it then tries to find alignments for the individual mates; default=False"/> | 222 <param name="no_mixed" type="boolean" truevalue="--no-mixed" falsevalue="" checked="False" label="Disable no-mixed behavior" help="--no-mixed; By default, when `bowtie2` cannot find a concordant or discordant alignment for a pair, it then tries to find alignments for the individual mates; default=False"/> |
199 <param name="no_discordant" type="boolean" truevalue="--no-discordant" falsevalue="" checked="False" label="Disable no-discordant behavior" help="--no-discordant; By default, `bowtie2` looks for discordant alignments if it cannot find any concordant alignments. A discordant alignment is an alignment where both mates align uniquely, but that does not satisfy the paired-end constraints (`--fr`/`--rf`/`--ff`, `-I`, `-X`); default=False"/> | 223 <param name="no_discordant" type="boolean" truevalue="--no-discordant" falsevalue="" checked="False" label="Disable no-discordant behavior" help="--no-discordant; By default, `bowtie2` looks for discordant alignments if it cannot find any concordant alignments. A discordant alignment is an alignment where both mates align uniquely, but that does not satisfy the paired-end constraints (`--fr`/`--rf`/`--ff`, `-I`, `-X`); default=False"/> |
200 <param name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" checked="False" label="Allow mate dovetailing" help="--dovetail; If the mates `dovetail`, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant. See also: `Mates can overlap, contain or dovetail each other` in help section below; default=False"/> | 224 <param name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" checked="False" label="Allow mate dovetailing" help="--dovetail; If the mates `dovetail`, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant. Default=False"/> |
201 <param name="no_contain" type="boolean" truevalue="--no-contain" falsevalue="" checked="False" label="Allow one mate alignment to contain another" help="--no-contain; If one mate alignment contains the other, consider that to be non-concordant. See also: `Mates can overlap, contain or dovetail each other` in help section; default=False"/> | 225 <param name="no_contain" type="boolean" truevalue="--no-contain" falsevalue="" checked="False" label="Allow one mate alignment to contain another" help="--no-contain; If one mate alignment contains the other, consider that to be non-concordant. Default=False"/> |
202 <param name="no_overlap" type="boolean" truevalue="--no-overlap" falsevalue="" checked="False" label="Allow mate alignments to overlap" help="--no-overlap; If one mate alignment overlaps the other at all, consider that to be non-concordant. See also: `Mates can overlap, contain or dovetail each other` in help section; default=False"/> | 226 <param name="no_overlap" type="boolean" truevalue="--no-overlap" falsevalue="" checked="False" label="Allow mate alignments to overlap" help="--no-overlap; If one mate alignment overlaps the other at all, consider that to be non-concordant. Default=False"/> |
203 </when> | 227 </when> |
204 <when value="no"> | 228 <when value="no"> |
205 <!-- do nothing --> | 229 <!-- do nothing --> |
206 </when> | 230 </when> |
207 </conditional> | 231 </conditional> |
208 </when> | 232 </when> |
209 <when value="paired_collection"> | 233 <when value="paired_collection"> |
210 <param name="input_1" format="fastqsanger" type="data_collection" collection_type="paired" label="FASTQ Paired Dataset" help="Nucleotide-space: Must have Sanger-scaled quality values with ASCII offset 33" /> | 234 <param name="input_1" format="fastqsanger" type="data_collection" collection_type="paired" label="FASTQ Paired Dataset" help="Must be of datatype "fastqsanger"" /> |
211 <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> | 235 <param name="unaligned_file" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write unaligned reads (in fastq format) to separate file(s)" help="--un/--un-conc; This triggers --un parameter for single reads and --un-conc for paired reads" /> |
212 <conditional name="paired_options"> | 236 <conditional name="paired_options"> |
213 <param name="paired_options_selector" type="select" label="Do you want to set paired-end options?" help="See "Alignment Options" section of Help below for information"> | 237 <param name="paired_options_selector" type="select" label="Do you want to set paired-end options?" help="See "Alignment Options" section of Help below for information"> |
214 <option value="no" selected="True">No</option> | 238 <option value="no" selected="True">No</option> |
215 <option value="yes">Yes</option> | 239 <option value="yes">Yes</option> |
216 </param> | 240 </param> |
217 <when value="yes"> | 241 <when value="yes"> |
218 <param name="I" type="integer" value="0" min="0" label="Set the minimum fragment length for valid paired-end alignments" help="-I/--minins; E.g. if `-I 60` is specified and a paired-end alignment consists of two 20-bp alignments in the appropriate orientation with a 20-bp gap between them, that alignment is considered valid (as long as `-X` is also satisfied). A 19-bp gap would not be valid in that case. If trimming options `-3` or `-5` are also used, the `-I` constraint is applied with respect to the untrimmed mates. The larger the difference between `-I` and `-X`, the slower Bowtie 2 will run. This is because larger differences bewteen `-I` and `-X` require that Bowtie 2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), Bowtie 2 is very efficient. Default=0"/> | 242 <param name="I" type="integer" value="0" min="0" label="Set the minimum fragment length for valid paired-end alignments" help="-I/--minins; E.g. if `-I 60` is specified and a paired-end alignment consists of two 20-bp alignments in the appropriate orientation with a 20-bp gap between them, that alignment is considered valid (as long as `-X` is also satisfied). A 19-bp gap would not be valid in that case. If trimming options `-3` or `-5` are also used, the `-I` constraint is applied with respect to the untrimmed mates. The larger the difference between `-I` and `-X`, the slower Bowtie 2 will run. This is because larger differences bewteen `-I` and `-X` require that Bowtie 2 scan a larger window to determine if a concordant alignment exists. For typical fragment length ranges (200 to 400 nucleotides), Bowtie 2 is very efficient. Default=0"/> |
219 <param name="X" type="integer" value="500" min="0" lable="Set the maximum fragment length for valid paired-end alignments" help="-X/--maxins; E.g. if `-X 100` is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as `-I` is also satisfied). A 61-bp gap would not be valid in that case. If trimming options `-3` or `-5` are also used, the `-X` constraint is applied with respect to the untrimmed mates, not the trimmed mates; Deafult=500"/> | 243 <param name="X" type="integer" value="500" min="0" label="Set the maximum fragment length for valid paired-end alignments" help="-X/--maxins; E.g. if `-X 100` is specified and a paired-end alignment consists of two 20-bp alignments in the proper orientation with a 60-bp gap between them, that alignment is considered valid (as long as `-I` is also satisfied). A 61-bp gap would not be valid in that case. If trimming options `-3` or `-5` are also used, the `-X` constraint is applied with respect to the untrimmed mates, not the trimmed mates; Default=500"/> |
220 <param name="fr_rf_ff" type="select" display="radio" label="Select the upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand" help="--fr, --rf, or --ff; E.g., if `--fr` is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (`-I` and `-X`) are met, that alignment is valid. Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. `--rf` likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. ` --ff` requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented; Default=--fr (appropriatefor Illumina's Paired-end Sequencing Assay)"> | 244 <param name="fr_rf_ff" type="select" display="radio" label="Select the upstream/downstream mate orientations for a valid paired-end alignment against the forward reference strand" help="--fr, --rf, or --ff; E.g., if `--fr` is specified and there is a candidate paired-end alignment where mate 1 appears upstream of the reverse complement of mate 2 and the fragment length constraints (`-I` and `-X`) are met, that alignment is valid. Also, if mate 2 appears upstream of the reverse complement of mate 1 and all other constraints are met, that too is valid. `--rf` likewise requires that an upstream mate1 be reverse-complemented and a downstream mate2 be forward-oriented. `--ff` requires both an upstream mate 1 and a downstream mate 2 to be forward-oriented; Default=--fr (appropriate for Illumina's Paired-end Sequencing Assay)"> |
221 <option value="--fr" selected="True">--fr</option> | 245 <option value="--fr" selected="True">--fr</option> |
222 <option value="--rf">--fr</option> | 246 <option value="--rf">--rf</option> |
223 <option value="--ff">--ff</option> | 247 <option value="--ff">--ff</option> |
224 </param> | 248 </param> |
225 <param name="no_mixed" type="boolean" truevalue="--no-mixed" falsevalue="" checked="False" label="Disable no-mixed behavior" help="--no-mixed; By default, when `bowtie2` cannot find a concordant or discordant alignment for a pair, it then tries to find alignments for the individual mates; default=False"/> | 249 <param name="no_mixed" type="boolean" truevalue="--no-mixed" falsevalue="" checked="False" label="Disable no-mixed behavior" help="--no-mixed; By default, when `bowtie2` cannot find a concordant or discordant alignment for a pair, it then tries to find alignments for the individual mates; default=False"/> |
226 <param name="no_discordant" type="boolean" truevalue="--no-discordant" falsevalue="" checked="False" label="Disable no-discordant behavior" help="--no-discordant; By default, `bowtie2` looks for discordant alignments if it cannot find any concordant alignments. A discordant alignment is an alignment where both mates align uniquely, but that does not satisfy the paired-end constraints (`--fr`/`--rf`/`--ff`, `-I`, `-X`); default=False"/> | 250 <param name="no_discordant" type="boolean" truevalue="--no-discordant" falsevalue="" checked="False" label="Disable no-discordant behavior" help="--no-discordant; By default, `bowtie2` looks for discordant alignments if it cannot find any concordant alignments. A discordant alignment is an alignment where both mates align uniquely, but that does not satisfy the paired-end constraints (`--fr`/`--rf`/`--ff`, `-I`, `-X`); default=False"/> |
227 <param name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" checked="False" label="Allow mate dovetailing" help="--dovetail; If the mates `dovetail`, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant. See also: `Mates can overlap, contain or dovetail each other` in help section below; default=False"/> | 251 <param name="dovetail" type="boolean" truevalue="--dovetail" falsevalue="" checked="False" label="Allow mate dovetailing" help="--dovetail; If the mates `dovetail`, that is if one mate alignment extends past the beginning of the other such that the wrong mate begins upstream, consider that to be concordant. Default=False"/> |
228 <param name="no_contain" type="boolean" truevalue="--no-contain" falsevalue="" checked="False" label="Allow one mate alignment to contain another" help="--no-contain; If one mate alignment contains the other, consider that to be non-concordant. See also: `Mates can overlap, contain or dovetail each other` in help section; default=False"/> | 252 <param name="no_contain" type="boolean" truevalue="--no-contain" falsevalue="" checked="False" label="Allow one mate alignment to contain another" help="--no-contain; If one mate alignment contains the other, consider that to be non-concordant. Default=False"/> |
229 <param name="no_overlap" type="boolean" truevalue="--no-overlap" falsevalue="" checked="False" label="Allow mate alignments to overlap" help="--no-overlap; If one mate alignment overlaps the other at all, consider that to be non-concordant. See also: `Mates can overlap, contain or dovetail each other` in help section; default=False"/> | 253 <param name="no_overlap" type="boolean" truevalue="--no-overlap" falsevalue="" checked="False" label="Allow mate alignments to overlap" help="--no-overlap; If one mate alignment overlaps the other at all, consider that to be non-concordant. Default=False"/> |
230 </when> | 254 </when> |
231 <when value="no"> | 255 <when value="no"> |
232 <!-- do nothing --> | 256 <!-- do nothing --> |
233 </when> | 257 </when> |
234 </conditional> | 258 </conditional> |
253 <param name="own_file" type="data" format="fasta" metadata_name="dbkey" label="Select reference genome" /> | 277 <param name="own_file" type="data" format="fasta" metadata_name="dbkey" label="Select reference genome" /> |
254 </when> | 278 </when> |
255 </conditional> | 279 </conditional> |
256 | 280 |
257 <!-- read group settings --> | 281 <!-- read group settings --> |
258 <conditional name="read_group"> | 282 <expand macro="read_group_conditional" /> |
259 <param name="read_group_selector" type="select" label="Specify the read group for this file?" help="Specifying readgroup information can greatly simplify your downstream analyses by allowing combining multiple datasets. See help below for more details"> | |
260 <option value="yes">Yes</option> | |
261 <option value="no" selected="True">No</option> | |
262 </param> | |
263 <when value="yes"> | |
264 <param name="rgid" type="text" size="25" label="Read group identifier (ID). Each @RG line must have a unique ID. The value of ID is used in the RG tags of alignment records. Must be unique among all read groups in header section." help="--rg-id; Required if RG specified. Read group IDs may be modified when merging SAM files in order to handle collisions." /> | |
265 <param name="rglb" type="text" size="25" label="Library name (LB)" help="--rg; Required if RG specified" /> | |
266 <param name="rgpl" type="text" size="25" label="Platform/technology used to produce the reads (PL)" help="--rg; Required if RG specified. Valid values : CAPILLARY, LS454, ILLUMINA, SOLID, HELICOS, IONTORRENT and PACBIO" /> | |
267 <param name="rgsm" type="text" size="25" label="Sample (SM)" help="--rg; Required if RG specified. Use pool name where a pool is being sequenced" /> | |
268 </when> | |
269 <when value="no" /> | |
270 </conditional> | |
271 | |
272 <conditional name="analysis_type"> | 283 <conditional name="analysis_type"> |
273 <param name="analysis_type_selector" type="select" label="Select analysis mode"> | 284 <param name="analysis_type_selector" type="select" label="Select analysis mode"> |
274 <option value="simple">1: Default setting only</option> | 285 <option value="simple">1: Default setting only</option> |
275 <option value="full">2: Full parameter list</option> | 286 <option value="full">2: Full parameter list</option> |
276 </param> | 287 </param> |
292 <param name="input_options_selector" type="select" label="Do you want to tweak input options?" help="See "Input Options" section of Help below for information"> | 303 <param name="input_options_selector" type="select" label="Do you want to tweak input options?" help="See "Input Options" section of Help below for information"> |
293 <option value="yes">Yes</option> | 304 <option value="yes">Yes</option> |
294 <option value="no" selected="true">No</option> | 305 <option value="no" selected="true">No</option> |
295 </param> | 306 </param> |
296 <when value="yes"> | 307 <when value="yes"> |
297 <param name="skip" type="integer" min="0" value="0" lable="Skip (i.e. do not align) the first that many reads or pairs in the input" help="-s/--skip; default=0"/> | 308 <param name="skip" type="integer" min="0" value="0" label="Skip (i.e. do not align) the first that many reads or pairs in the input" help="-s/--skip; default=0"/> |
298 <param name="qupto" type="integer" min="-1" value="-1" label="Align the first that many reads or read pairs from the input (after the -s/--skip reads or pairs have been skipped), then stop" help="-u/--qupto; default=-1 (no limit)"/> | 309 <param name="qupto" type="integer" min="1" value="100000000" label="Align the first that many reads or read pairs from the input (after the -s/--skip reads or pairs have been skipped), then stop" help="-u/--qupto; for default behavior (no limit) leave this value very large"/> |
299 <param name="trim5" type="integer" min="0" value="0" label="Trim that many bases from 5' (left) end of each read before alignment" help="-5/--trim5; default=0"/> | 310 <param name="trim5" type="integer" min="0" value="0" label="Trim that many bases from 5' (left) end of each read before alignment" help="-5/--trim5; default=0"/> |
300 <param name="trim3" type="integer" min="0" value="0" label="Trim that many bases from 3' (right) end of each read before alignment" help="-3/--trim3; default=0"/> | 311 <param name="trim3" type="integer" min="0" value="0" label="Trim that many bases from 3' (right) end of each read before alignment" help="-3/--trim3; default=0"/> |
301 <param name="qv_encoding" type="select" display="radio" label="Select quality score encoding" help="See help below for more details"> | 312 <param name="qv_encoding" type="select" display="radio" label="Select quality score encoding" help="See help below for more details"> |
302 <option value="--phred33">Input qualities are ASCII chars equal to the Phred quality plus 33. This is also called the "Phred+33" encoding, which is used by the very latest Illumina pipelines (--phred33)</option> | 313 <option value="--phred33" selected="True">Input qualities are ASCII chars equal to the Phred quality plus 33. This is also called the "Phred+33" encoding, which is used by the very latest Illumina pipelines (--phred33)</option> |
303 <option value="--phred64" selected="True">Input qualities are ASCII chars equal to the Phred quality plus 64. This is also called the "Phred+64" encoding (--phred64)</option> | 314 <option value="--phred64">Input qualities are ASCII chars equal to the Phred quality plus 64. This is also called the "Phred+64" encoding (--phred64)</option> |
304 </param> | 315 </param> |
305 <param name="solexa-quals" type="boolean" truevalue="--solexa-quals" falsevalue="" checked="False" label="Convert input qualities from Solexa (which can be negative) to Phred (which can't). This scheme was used in older Illumina GA Pipeline versions (prior to 1.3)" help="--solexa-quals; default=False"/> | 316 <param name="solexa_quals" type="boolean" truevalue="--solexa-quals" falsevalue="" checked="False" label="Convert input qualities from Solexa (which can be negative) to Phred (which can't). This scheme was used in older Illumina GA Pipeline versions (prior to 1.3)" help="--solexa-quals; default=False"/> |
306 <param name="int-quals" type="boolean" truevalue="--int-quals" falsevalue="" checked="False" label="Quality values are represented in the read input file as space-separated ASCII integers, e.g., 40 40 30 40..., rather than ASCII characters, e.g., II?I.... Integers are treated as being on the Phred quality scale unless --solexa-quals is also specified" help="--int-quals; default=False"/> | 317 <param name="int_quals" type="boolean" truevalue="--int-quals" falsevalue="" checked="False" label="Quality values are represented in the read input file as space-separated ASCII integers, e.g., 40 40 30 40..., rather than ASCII characters, e.g., II?I.... Integers are treated as being on the Phred quality scale unless --solexa-quals is also specified" help="--int-quals; default=False"/> |
307 </when> | 318 </when> |
308 <when value="no"> | 319 <when value="no"> |
309 <!-- do nothing --> | 320 <!-- do nothing --> |
310 </when> | 321 </when> |
311 </conditional> | 322 </conditional> |
314 <option value="yes">Yes</option> | 325 <option value="yes">Yes</option> |
315 <option value="no" selected="true">No</option> | 326 <option value="no" selected="true">No</option> |
316 </param> | 327 </param> |
317 <when value="yes"> | 328 <when value="yes"> |
318 <param name="N" type="integer" min="0" max="1" value="0" label="Set the number of mismatches to be allowed in a seed alignment during multiseed alignment (see `Multiseed alignment` section of help below)" help="-N; Can be set to 0 or 1. Setting this higher makes alignment slower (often much slower) but increases sensitivity; default=0"/> | 329 <param name="N" type="integer" min="0" max="1" value="0" label="Set the number of mismatches to be allowed in a seed alignment during multiseed alignment (see `Multiseed alignment` section of help below)" help="-N; Can be set to 0 or 1. Setting this higher makes alignment slower (often much slower) but increases sensitivity; default=0"/> |
319 <param name="L" type="integer" min="0" value="20" label="Sets the length of the seed substrings to align during multiseed alignment (see `Multiseed alignment` section of help below)" help="-L; Smaller values make alignment slower but more senstive. Default: the `--sensitive` preset is used by default, which sets `-L` to 20 both in `--end-to-end` mode and in `--local` mode"/> | 330 <param name="L" type="integer" min="0" max="32" value="22" label="Sets the length of the seed substrings to align during multiseed alignment (see `Multiseed alignment` section of help below)" help="-L; Smaller values make alignment slower but more sensitive. Default=22"/> |
320 <param name="i" type="text" value="S,1,1.15" size="10" label="Set a function governing the interval between seed substrings to use during multiseed alignment (see `Multiseed alignment` section of help below). Also see description of this option below in the help section" help="-i; Since it's best to use longer intervals for longer reads, this parameter sets the interval as a function of the read length, rather than a single one-size-fits-all number. For instance, specifying `-i S,1,2.5` sets the interval function `f` to `f(x) = 1 + 2.5 * sqrt(x)`, where x is the read length. See also `Setting function options` below in help section. If the function returns a result less than 1, it is rounded up to 1. Default: the `--sensitive` preset is used by default, which sets `-i` to `S,1,1.15` in `--end-to-end` mode to `-i S,1,0.75` in `--local` mode"/> | 331 <param name="i" type="text" value="S,1,1.15" label="Set a function governing the interval between seed substrings to use during multiseed alignment (see `Multiseed alignment` section of help below). Also see description of this option below in the help section" help="-i; Since it's best to use longer intervals for longer reads, this parameter sets the interval as a function of the read length, rather than a single one-size-fits-all number. For instance, specifying `-i S,1,2.5` sets the interval function `f` to `f(x) = 1 + 2.5 * sqrt(x)`, where x is the read length. If the function returns a result less than 1, it is rounded up to 1. Default=`S,1,1.15`"/> |
321 <param name="n_ceil" type="text" value="`L,0,0.15" label="Set a function governing the maximum number of ambiguous characters (usually `N`s and/or `.`s) allowed in a read as a function of read length" help="--n-ceil; For instance, specifying `-L,0,0.15` sets the N-ceiling function `f` to `f(x) = 0 + 0.15 * x`, where x is the read length. See also: [setting function options]. Reads exceeding this ceiling are [filtered out]. Default=`L,0,0.15`"/> | 332 <param name="n_ceil" type="text" value="L,0,0.15" label="Set a function governing the maximum number of ambiguous characters (usually `N`s and/or `.`s) allowed in a read as a function of read length" help="--n-ceil; For instance, specifying `L,0,0.15` sets the N-ceiling function `f` to `f(x) = 0 + 0.15 * x`, where x is the read length. Reads exceeding this ceiling are filtered out. Default=`L,0,0.15`"/> |
322 <param name="dpad" type="integer" min="0" value="15" lable="Pad dynamic programming problems by that many columns on either side to allow gaps" help="--dpad; default=15"/> | 333 <param name="dpad" type="integer" min="0" value="15" label="Pad dynamic programming problems by that many columns on either side to allow gaps" help="--dpad; default=15"/> |
323 <param name="gbar" type="integer" min="0" value="4" label="Disallow gaps within that many positions of the beginning or end of the read" help="--gbar; default=4"/> | 334 <param name="gbar" type="integer" min="0" value="4" label="Disallow gaps within that many positions of the beginning or end of the read" help="--gbar; default=4"/> |
324 <param name="ignore-quals" type="boolean" truevalue="--ignore-quals" falsevalue="" selected="False" label="When calculating a mismatch penalty, always consider the quality value at the mismatched position to be the highest possible, regardless of the actual value" help="--ignore-quals; input is treated as though all quality values are high; default=False"/> | 335 <param name="ignore_quals" type="boolean" truevalue="--ignore-quals" falsevalue="" selected="False" label="When calculating a mismatch penalty, always consider the quality value at the mismatched position to be the highest possible, regardless of the actual value" help="--ignore-quals; input is treated as though all quality values are high; default=False"/> |
325 <param name="nofw" type="boolean" truevalue="--nofw" falsevalue="" selected="False" label="Do not attempt to align unpaired reads to the forward (Watson) reference strand" help="In paired-end mode, `--nofw` and `--norc` pertain to the fragments; i.e. specifying `--nofw` causes `bowtie2` to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand. Default=False"/> | 336 <param name="nofw" type="boolean" truevalue="--nofw" falsevalue="" selected="False" label="Do not attempt to align unpaired reads to the forward (Watson) reference strand" help="In paired-end mode, `--nofw` and `--norc` pertain to the fragments; i.e. specifying `--nofw` causes `bowtie2` to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand. Default=False"/> |
326 <param name="norc" type="boolean" truevalue="--norc" falsevalue="" selected="False" label="Do not attempt to align unpaired reads to the reverse (Crick) reference strand" help="In paired-end mode, `--nofw` and `--norc` pertain to the fragments; i.e. specifying `--nofw` causes `bowtie2` to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand. Default=False"/> | 337 <param name="norc" type="boolean" truevalue="--norc" falsevalue="" selected="False" label="Do not attempt to align unpaired reads to the reverse (Crick) reference strand" help="In paired-end mode, `--nofw` and `--norc` pertain to the fragments; i.e. specifying `--nofw` causes `bowtie2` to explore only those paired-end configurations corresponding to fragments from the reverse-complement (Crick) strand. Default=False"/> |
327 <param name="no_1mm_upfront" type="boolean" truevalue="--no-1mm-upfront" falsevalue="" selected="False" label="Prevent searching for 1-mismatch end-to-end alignments before using the multiseed heuristic (see `Multiseed alignment` section of help baelow)" help="--no-1mm-upfront; By default, Bowtie 2 will attempt to find either an exact or a 1-mismatch end-to-end alignment for the read *before* trying the [multiseed heuristic]. Such alignments can be found very quickly, and many short read alignments have exact or near-exact end-to-end alignments. However, this can lead to unexpected alignments when the user also sets options governing the [multiseed heuristic], like `-L` and `-N`. For instance, if the user specifies `-N 0` and `-L` equal to the length of the read, the user will be surprised to find 1-mismatch alignments reported. This option prevents Bowtie 2 from searching for 1-mismatch end-to-end alignments before using the [multiseed heuristic], which leads to the expected behavior when combined with options such as `-L` and `-N`. This comes at the expense of speed; Default=False"/> | 338 <param name="no_1mm_upfront" type="boolean" truevalue="--no-1mm-upfront" falsevalue="" selected="False" label="Prevent searching for 1-mismatch end-to-end alignments before using the multiseed heuristic (see `Multiseed alignment` section of help below)" help="--no-1mm-upfront; By default, Bowtie 2 will attempt to find either an exact or a 1-mismatch end-to-end alignment for the read *before* trying the multiseed heuristic. Such alignments can be found very quickly, and many short read alignments have exact or near-exact end-to-end alignments. However, this can lead to unexpected alignments when the user also sets options governing the multiseed heuristic, like `-L` and `-N`. For instance, if the user specifies `-N 0` and `-L` equal to the length of the read, the user will be surprised to find 1-mismatch alignments reported. This option prevents Bowtie 2 from searching for 1-mismatch end-to-end alignments before using the multiseed heuristic, which leads to the expected behavior when combined with options such as `-L` and `-N`. This comes at the expense of speed; Default=False"/> |
328 <conditional name="align_mode"> | 339 <conditional name="align_mode"> |
329 <param name="align_mode_selector" type="select" display="radio" label="Select between `--local` and `--end-to-end` alignment modes" help="--local and --end-to-end; see help below for detailed explanation; default=--end-to-end"> | 340 <param name="align_mode_selector" type="select" display="radio" label="Select between `--local` and `--end-to-end` alignment modes" help="--local and --end-to-end; see help below for detailed explanation; default=--end-to-end"> |
330 <option value="end-to-end" selected="True">End to End (--end-to-end)</option> | 341 <option value="end-to-end" selected="True">End to End (--end-to-end)</option> |
331 <option value="local">Local (--local)</option> | 342 <option value="local">Local (--local)</option> |
332 </param> | 343 </param> |
333 <when value="end-to-end"> | 344 <when value="end-to-end"> |
334 <param name="score-min" type="text" value="G,20,8" label="Set a function governing the minimum alignment score needed for an alignment to be considered `valid` (i.e. good enough to report)" help="--score-min; This is a function of read length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` to `f(x) = 0 + -0.6 * x`, where `x` is the read length. See also: [setting function options]. The default in `--end-to-end` mode is `L,-0.6,-0.6` and the default in `--local` mode is `G,20,8`"/> | 345 <param name="score_min_ete" type="text" value="L,-0.6,-0.6" label="Set a function governing the minimum alignment score needed for an alignment to be considered `valid` (i.e. good enough to report)" help="--score-min; This is a function of read length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` to `f(x) = 0 + -0.6 * x`, where `x` is the read length. The default in `--end-to-end` mode is `L,-0.6,-0.6` and the default in `--local` mode is `G,20,8`"/> |
335 </when> | 346 </when> |
336 <when value="local"> | 347 <when value="local"> |
337 <param name="score-min" type="text" value="L,-0.6,-0.6" label="Set a function governing the minimum alignment score needed for an alignment to be considered `valid` (i.e. good enough to report)" help="--score-min; This is a function of read length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` to `f(x) = 0 + -0.6 * x`, where `x` is the read length. See also: [setting function options]. The default in `--end-to-end` mode is `L,-0.6,-0.6` and the default in `--local` mode is `G,20,8`"/> | 348 <param name="score_min_loc" type="text" value="G,20,8" label="Set a function governing the minimum alignment score needed for an alignment to be considered `valid` (i.e. good enough to report)" help="--score-min; This is a function of read length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` to `f(x) = 0 + -0.6 * x`, where `x` is the read length. The default in `--end-to-end` mode is `L,-0.6,-0.6` and the default in `--local` mode is `G,20,8`"/> |
338 </when> | 349 </when> |
339 </conditional> | 350 </conditional> |
340 </when> | 351 </when> |
341 <when value="no"> | 352 <when value="no"> |
342 <!-- do nothing --> | 353 <!-- do nothing --> |
347 <option value="yes">Yes</option> | 358 <option value="yes">Yes</option> |
348 <option value="no" selected="true">No</option> | 359 <option value="no" selected="true">No</option> |
349 </param> | 360 </param> |
350 <when value="yes"> | 361 <when value="yes"> |
351 <param name="ma" type="integer" value="2" label="Set the match bonus" help="--ma; In `--local` mode match bonus is added to the alignment score for each position where a read character aligns to a reference character and the characters match. Not used in `--end-to-end` mode; Default=2"/> | 362 <param name="ma" type="integer" value="2" label="Set the match bonus" help="--ma; In `--local` mode match bonus is added to the alignment score for each position where a read character aligns to a reference character and the characters match. Not used in `--end-to-end` mode; Default=2"/> |
352 <param name="mp" type="text" size="10" value="6,2" label="Set the maximum (`MX`) and minimum (`MN`) mismatch penalties, both integers" help="--mp; A number less than or equal to `MX` and greater than or equal to `MN` is subtracted from the alignment score for each position where a read character aligns to a reference character, the characters do not match, and neither is an `N`. If `--ignore-quals` is specified, the number subtracted quals `MX`. Otherwise, the number subtracted is `MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) )` where Q is the Phred quality value; Default=6,2"/> | 363 <param name="mp" type="text" value="6,2" label="Set the maximum (`MX`) and minimum (`MN`) mismatch penalties, both integers" help="--mp; A number less than or equal to `MX` and greater than or equal to `MN` is subtracted from the alignment score for each position where a read character aligns to a reference character, the characters do not match, and neither is an `N`. If `--ignore-quals` is specified, the number subtracted quals `MX`. Otherwise, the number subtracted is `MN + floor( (MX-MN)(MIN(Q, 40.0)/40.0) )` where Q is the Phred quality value; Default=6,2"/> |
353 <param name="np" type="integer" value="1" label="Sets penalty for positions where the read, reference, or both, contain an ambiguous character such as `N`" help="--np; Default=1"/> | 364 <param name="np" type="integer" value="1" label="Sets penalty for positions where the read, reference, or both, contain an ambiguous character such as `N`" help="--np; Default=1"/> |
354 <param name="rdg_read_open" type="integer" value="5" label="Set the read gap opening penalty" help="--rdg; this is the first component of --rdg flag - opening penalty; Default=5"/> | 365 <param name="rdg_read_open" type="integer" value="5" label="Set the read gap opening penalty" help="--rdg; this is the first component of --rdg flag - opening penalty; Default=5"/> |
355 <param name="rdg_read_extend" type="integer" value="3" label="Set the read gap extension penalty" help="--rdg; this is the second component of --rdg flag - extension penalty; Default=3"/> | 366 <param name="rdg_read_extend" type="integer" value="3" label="Set the read gap extension penalty" help="--rdg; this is the second component of --rdg flag - extension penalty; Default=3"/> |
356 <param name="rfg_ref_open" type="integer" value="5" label="Set the reference gap opening penalty" help="--rfg; this is the first component of --rfg flag - opening penalty; Default=5"/> | 367 <param name="rfg_ref_open" type="integer" value="5" label="Set the reference gap opening penalty" help="--rfg; this is the first component of --rfg flag - opening penalty; Default=5"/> |
357 <param name="rfg_ref_extend" type="integer" value="3" label="Set the reference gap extension penalty" help="--rfg; this is the second component of --rfg flag - extension penalty; Default=3"/> | 368 <param name="rfg_ref_extend" type="integer" value="3" label="Set the reference gap extension penalty" help="--rfg; this is the second component of --rfg flag - extension penalty; Default=3"/> |
367 <option value="a">Set -a option</option> | 378 <option value="a">Set -a option</option> |
368 </param> | 379 </param> |
369 <when value="no"> | 380 <when value="no"> |
370 <!-- do nothing --> | 381 <!-- do nothing --> |
371 </when> | 382 </when> |
372 <when value="-k"> | 383 <when value="k"> |
373 <param name="k" type="integer" min="0" value="1" label="Searches for at most that many distinct, valid alignments for each read" help="-k; see detalied description of this option in the help section below. Note: Bowtie 2 is not designed with large values for `-k` in mind, and when aligning reads to long, repetitive genomes large `-k` can be very, very slow"/> | 384 <param name="k" type="integer" min="1" value="1" label="Searches for at most that many distinct, valid alignments for each read" help="-k; see detailed description of this option in the help section below. Note: Bowtie 2 is not designed with large values for `-k` in mind, and when aligning reads to long, repetitive genomes large `-k` can be very, very slow"/> |
374 </when> | 385 </when> |
375 <when value="-a"> | 386 <when value="a"> |
376 <!-- do nothing here; set -a flag on the command line--> | 387 <!-- do nothing here; set -a flag on the command line--> |
377 </when> | 388 </when> |
378 </conditional> | 389 </conditional> |
379 <conditional name="effort_options"> | 390 <conditional name="effort_options"> |
380 <param name="effort_options_selector" type="select" label="Do you want to tweak effort options?" help="See "Effort Options" section of Help below for information"> | 391 <param name="effort_options_selector" type="select" label="Do you want to tweak effort options?" help="See "Effort Options" section of Help below for information"> |
381 <option value="yes">Yes</option> | 392 <option value="yes">Yes</option> |
382 <option value="no" selected="true">No</option> | 393 <option value="no" selected="true">No</option> |
383 </param> | 394 </param> |
384 <when value="yes"> | 395 <when value="yes"> |
385 <param name="D" type="integer" value="15" min="0" label="Attemp that many consecutive seed extension attempts to `fail` before Bowtie 2 moves on, using the alignments found so far" help="-D; A seed extension `fails` if it does not yield a new best or a new second-best alignment. This limit is automatically adjusted up when -k or -a are specified. Default=15"/> | 396 <param name="D" type="integer" value="15" min="0" label="Attempt that many consecutive seed extension attempts to `fail` before Bowtie 2 moves on, using the alignments found so far" help="-D; A seed extension `fails` if it does not yield a new best or a new second-best alignment. This limit is automatically adjusted up when -k or -a are specified. Default=15"/> |
386 <param name="R" type="integer" value="2" min="0" label="Set the maximum number of times Bowtie 2 will `re-seed` reads with repetitive seeds" help="When `re-seeding`, Bowtie 2 simply chooses a new set of reads (same length, same number of mismatches allowed) at different offsets and searches for more alignments. A read is considered to have repetitive seeds if the total number of seed hits divided by the number of seeds that aligned at least once is greater than 300. Default=2"/> | 397 <param name="R" type="integer" value="2" min="0" label="Set the maximum number of times Bowtie 2 will `re-seed` reads with repetitive seeds" help="When `re-seeding`, Bowtie 2 simply chooses a new set of reads (same length, same number of mismatches allowed) at different offsets and searches for more alignments. A read is considered to have repetitive seeds if the total number of seed hits divided by the number of seeds that aligned at least once is greater than 300. Default=2"/> |
387 </when> | 398 </when> |
388 <when value="no"> | 399 <when value="no"> |
389 <!-- do nothing --> | 400 <!-- do nothing --> |
390 </when> | 401 </when> |
394 <param name="sam_options_selector" type="select" label="Do you want to tweak SAM/BAM Options?" help="See "Output Options" section of Help below for information"> | 405 <param name="sam_options_selector" type="select" label="Do you want to tweak SAM/BAM Options?" help="See "Output Options" section of Help below for information"> |
395 <option value="yes">Yes</option> | 406 <option value="yes">Yes</option> |
396 <option value="no" selected="true">No</option> | 407 <option value="no" selected="true">No</option> |
397 </param> | 408 </param> |
398 <when value="yes"> | 409 <when value="yes"> |
399 <param name="no-unal" type="boolean" truevalue="--no-unal" falsevalue="" label="Suppress SAM records for reads that failed to align" help="--no-unal; Default=False"/> | 410 <param name="no_unal" type="boolean" truevalue="--no-unal" falsevalue="" label="Suppress SAM records for reads that failed to align" help="--no-unal; Default=False"/> |
400 <param name="omit-sec-seq" type="boolean" truevalue="--omit-sec-seq" falsevalue="" label="Suppress SEQ and QUAL strings for secondary alignments" help="--omit-sec-seq; Default=False"/> | 411 <param name="omit_sec_seq" type="boolean" truevalue="--omit-sec-seq" falsevalue="" label="Suppress SEQ and QUAL strings for secondary alignments" help="--omit-sec-seq; Default=False"/> |
401 </when> | 412 </when> |
402 <when value="no"> | 413 <when value="no"> |
403 <!-- do nothing --> | 414 <!-- do nothing --> |
404 </when> | 415 </when> |
405 </conditional> | 416 </conditional> |
409 <option value="no" selected="true">No</option> | 420 <option value="no" selected="true">No</option> |
410 </param> | 421 </param> |
411 <when value="yes"> | 422 <when value="yes"> |
412 <param name="reorder" type="boolean" truevalue="--reorder" falsevalue="" label="Guarantee that output SAM records are printed in an order corresponding to the order of the reads in the original input file" help="--reorder; Default=False"/> | 423 <param name="reorder" type="boolean" truevalue="--reorder" falsevalue="" label="Guarantee that output SAM records are printed in an order corresponding to the order of the reads in the original input file" help="--reorder; Default=False"/> |
413 <param name="seed" type="integer" value="0" min="0" label="Use this number as the seed for pseudo-random number generator" help="--seed; Default=0"/> | 424 <param name="seed" type="integer" value="0" min="0" label="Use this number as the seed for pseudo-random number generator" help="--seed; Default=0"/> |
414 <param name="non-deterministic" type="boolean" truevalue="--non-deterministic" falsevalue="" label="Re-initialize the pseudo-random generator for each read using the current time" help="--non-deterministic; see Help below for explanation of this option; default=False"/> | 425 <param name="non_deterministic" type="boolean" truevalue="--non-deterministic" falsevalue="" label="Re-initialize the pseudo-random generator for each read using the current time" help="--non-deterministic; see Help below for explanation of this option; default=False"/> |
415 </when> | 426 </when> |
416 <when value="no"> | 427 <when value="no"> |
417 <!-- do nothing --> | 428 <!-- do nothing --> |
418 </when> | 429 </when> |
419 </conditional> | 430 </conditional> |
431 <param name="sam_opt" type="boolean" truevalue="true" falsevalue="false" label="Would you like the output to be a SAM file" help="By default, the output from this Bowtie2 wrapper is a sorted BAM file."/> | |
420 </when> | 432 </when> |
421 </conditional> | 433 </conditional> |
422 </inputs> | 434 </inputs> |
423 | 435 |
424 <!-- define outputs --> | 436 <!-- define outputs --> |
426 <outputs> | 438 <outputs> |
427 | 439 |
428 <data format="fastqsanger" name="output_unaligned_reads_l" label="${tool.name} on ${on_string}: unaligned reads (L)" > | 440 <data format="fastqsanger" name="output_unaligned_reads_l" label="${tool.name} on ${on_string}: unaligned reads (L)" > |
429 <filter>library['unaligned_file'] is True</filter> | 441 <filter>library['unaligned_file'] is True</filter> |
430 <actions> | 442 <actions> |
431 <action type="format"> | 443 <conditional name="library.type"> |
432 <option type="from_param" name="library.input_1" param_attribute="ext" /> | 444 <when value="single"> |
433 </action> | 445 <action type="format"> |
446 <option type="from_param" name="library.input_1" param_attribute="ext" /> | |
447 </action> | |
448 </when> | |
449 <when value="paired"> | |
450 <action type="format"> | |
451 <option type="from_param" name="library.input_1" param_attribute="ext" /> | |
452 </action> | |
453 </when> | |
454 <when value="paired_collection"> | |
455 <action type="format"> | |
456 <option type="from_param" name="library.input_1" param_attribute="forward.ext" /> | |
457 </action> | |
458 </when> | |
459 </conditional> | |
434 </actions> | 460 </actions> |
435 </data> | 461 </data> |
436 <data format="fastqsanger" name="output_unaligned_reads_r" label="${tool.name} on ${on_string}: unaligned reads (R)"> | 462 <data format="fastqsanger" name="output_unaligned_reads_r" label="${tool.name} on ${on_string}: unaligned reads (R)"> |
437 <filter>( library['type'] == "paired" or library['type'] == "paired_collection" ) and library['unaligned_file'] is True</filter> | 463 <filter>( library['type'] == "paired" or library['type'] == "paired_collection" ) and library['unaligned_file'] is True</filter> |
438 <actions> | 464 <actions> |
439 <action type="format"> | 465 <conditional name="library.type"> |
440 <option type="from_param" name="library.input_1" param_attribute="ext" /> | 466 <when value="paired"> |
441 </action> | 467 <action type="format"> |
468 <option type="from_param" name="library.input_2" param_attribute="ext" /> | |
469 </action> | |
470 </when> | |
471 <when value="paired_collection"> | |
472 <action type="format"> | |
473 <option type="from_param" name="library.input_1" param_attribute="reverse.ext" /> | |
474 </action> | |
475 </when> | |
476 </conditional> | |
442 </actions> | 477 </actions> |
443 </data> | 478 </data> |
444 | 479 |
445 <data format="bam" name="output" label="${tool.name} on ${on_string}: aligned reads in BAM format"> | 480 <data format="bam" name="output" label="${tool.name} on ${on_string}: aligned reads (sorted BAM)"> |
481 <filter>analysis_type['analysis_type_selector'] == "simple" or analysis_type['sam_opt'] is False</filter> | |
446 <actions> | 482 <actions> |
447 <conditional name="reference_genome.source"> | 483 <conditional name="reference_genome.source"> |
448 <when value="indexed"> | 484 <when value="indexed"> |
449 <action type="metadata" name="dbkey"> | 485 <action type="metadata" name="dbkey"> |
450 <option type="from_data_table" name="bowtie2_indexes" column="1" offset="0"> | 486 <option type="from_data_table" name="bowtie2_indexes" column="1" offset="0"> |
459 </action> | 495 </action> |
460 </when> | 496 </when> |
461 </conditional> | 497 </conditional> |
462 </actions> | 498 </actions> |
463 </data> | 499 </data> |
500 | |
501 <data format="sam" name="output_sam" label="${tool.name} on ${on_string}: aligned reads (SAM)"> | |
502 <filter>analysis_type['analysis_type_selector'] == "full" and analysis_type['sam_opt'] is True</filter> | |
503 <actions> | |
504 <conditional name="reference_genome.source"> | |
505 <when value="indexed"> | |
506 <action type="metadata" name="dbkey"> | |
507 <option type="from_data_table" name="bowtie2_indexes" column="1" offset="0"> | |
508 <filter type="param_value" column="0" value="#" compare="startswith" keep="False"/> | |
509 <filter type="param_value" ref="reference_genome.index" column="0"/> | |
510 </option> | |
511 </action> | |
512 </when> | |
513 <when value="history"> | |
514 <action type="metadata" name="dbkey"> | |
515 <option type="from_param" name="reference_genome.own_file" param_attribute="dbkey" /> | |
516 </action> | |
517 </when> | |
518 </conditional> | |
519 </actions> | |
520 </data> | |
521 | |
464 </outputs> | 522 </outputs> |
465 | 523 |
466 <tests> | 524 <tests> |
467 <test> | 525 <test> |
468 <!-- basic test on single paired default run --> | 526 <!-- basic test on single paired default run --> |
475 <param name="input_1" value="bowtie2-fq1.fq" ftype="fastqsanger"/> | 533 <param name="input_1" value="bowtie2-fq1.fq" ftype="fastqsanger"/> |
476 <param name="input_2" value="bowtie2-fq2.fq" ftype="fastqsanger"/> | 534 <param name="input_2" value="bowtie2-fq2.fq" ftype="fastqsanger"/> |
477 <param name="own_file" value="bowtie2-ref.fasta" /> | 535 <param name="own_file" value="bowtie2-ref.fasta" /> |
478 <output name="output" file="bowtie2-test1.bam" ftype="bam" lines_diff="2"/> | 536 <output name="output" file="bowtie2-test1.bam" ftype="bam" lines_diff="2"/> |
479 </test> | 537 </test> |
538 <test> | |
539 <!-- basic test on single paired default run --> | |
540 <param name="type" value="paired"/> | |
541 <param name="selection" value="no"/> | |
542 <param name="paired_options_selector" value="no"/> | |
543 <param name="unaligned_file" value="false"/> | |
544 <param name="analysis_type_selector" value="simple"/> | |
545 <param name="rg_selector" value="set"/> | |
546 <param name="ID" value="rg1"/> | |
547 <param name="PL" value="CAPILLARY"/> | |
548 <param name="source" value="history" /> | |
549 <param name="input_1" value="bowtie2-fq1.fq" ftype="fastqsanger"/> | |
550 <param name="input_2" value="bowtie2-fq2.fq" ftype="fastqsanger"/> | |
551 <param name="own_file" value="bowtie2-ref.fasta" /> | |
552 <output name="output" file="bowtie2-test2.bam" ftype="bam" lines_diff="2"/> | |
553 </test> | |
480 </tests> | 554 </tests> |
481 | 555 |
482 <help> | 556 <help> |
483 | 557 |
484 **Bowtie2 Overview** | 558 **Bowtie2 Overview** |
539 Input qualities are ASCII chars equal to the Phred quality plus 33. This is | 613 Input qualities are ASCII chars equal to the Phred quality plus 33. This is |
540 also called the "Phred+33" encoding, which is used by the very latest Illumina | 614 also called the "Phred+33" encoding, which is used by the very latest Illumina |
541 pipelines. | 615 pipelines. |
542 | 616 |
543 --phred64 | 617 --phred64 |
544 Input qualities are ASCII chars equal to the [Phred quality] plus 64. This is | 618 Input qualities are ASCII chars equal to the Phred quality plus 64. This is |
545 also called the "Phred+64" encoding. | 619 also called the "Phred+64" encoding. |
546 | 620 |
547 --solexa-quals | 621 --solexa-quals |
548 Convert input qualities from Solexa Phred quality (which can be negative) to | 622 Convert input qualities from Solexa Phred quality (which can be negative) to |
549 Phred Phred quality (which can't). This scheme was used in older Illumina GA | 623 Phred Phred quality (which can't). This scheme was used in older Illumina GA |
550 Pipeline versions (prior to 1.3). Default: off. | 624 Pipeline versions (prior to 1.3). Default: off. |
551 | 625 |
552 --int-quals | 626 --int-quals |
553 Quality values are represented in the read input file as space-separated ASCII integers, e.g., `40 40 30 40`..., rather than ASCII characters, e.g., `II?I`.... | 627 Quality values are represented in the read input file as space-separated ASCII integers, e.g., `40 40 30 40`..., rather than ASCII characters, e.g., `II?I`.... |
554 Integers are treated as being on the [Phred quality] scale unless | 628 Integers are treated as being on the Phred quality scale unless |
555 `--solexa-quals` is also specified. Default: off. | 629 `--solexa-quals` is also specified. Default: off. |
556 | 630 |
557 ------ | 631 ------ |
558 | 632 |
559 **Presets in `--end-to-end` mode**:: | 633 **Presets in `--end-to-end` mode**:: |
589 ------ | 663 ------ |
590 | 664 |
591 **Alignment options**:: | 665 **Alignment options**:: |
592 | 666 |
593 -N <int> | 667 -N <int> |
594 Sets the number of mismatches to allowed in a seed alignment during [multiseed | 668 Sets the number of mismatches to allowed in a seed alignment during multiseed |
595 alignment]. Can be set to 0 or 1. Setting this higher makes alignment slower | 669 alignment. Can be set to 0 or 1. Setting this higher makes alignment slower |
596 (often much slower) but increases sensitivity. Default: 0. | 670 (often much slower) but increases sensitivity. Default: 0. |
597 | 671 |
598 -L <int> | 672 -L <int> |
599 Sets the length of the seed substrings to align during [multiseed alignment]. | 673 Sets the length of the seed substrings to align during multiseed alignment. |
600 Smaller values make alignment slower but more senstive. Default: the | 674 Smaller values make alignment slower but more sensitive. Default: the |
601 `--sensitive` preset is used by default, which sets `-L` to 20 both in | 675 `--sensitive` preset is used by default, which sets `-L` to 22 in |
602 `--end-to-end` mode and in `--local` mode. | 676 `--end-to-end` mode and to 20 in `--local` mode. |
603 | 677 |
604 -i <func> | 678 -i <func> |
605 Sets a function governing the interval between seed substrings to use during | 679 Sets a function governing the interval between seed substrings to use during |
606 [multiseed alignment]. For instance, if the read has 30 characers, and seed | 680 multiseed alignment. For instance, if the read has 30 characers, and seed |
607 length is 10, and the seed interval is 6, the seeds extracted will be: | 681 length is 10, and the seed interval is 6, the seeds extracted will be: |
608 | 682 |
609 Read: TAGCTACGCTCTACGCTATCATGCATAAAC | 683 Read: TAGCTACGCTCTACGCTATCATGCATAAAC |
610 Seed 1 fw: TAGCTACGCT | 684 Seed 1 fw: TAGCTACGCT |
611 Seed 1 rc: AGCGTAGCTA | 685 Seed 1 rc: AGCGTAGCTA |
618 | 692 |
619 Since it's best to use longer intervals for longer reads, this parameter sets | 693 Since it's best to use longer intervals for longer reads, this parameter sets |
620 the interval as a function of the read length, rather than a single | 694 the interval as a function of the read length, rather than a single |
621 one-size-fits-all number. For instance, specifying `-i S,1,2.5` sets the | 695 one-size-fits-all number. For instance, specifying `-i S,1,2.5` sets the |
622 interval function `f` to `f(x) = 1 + 2.5 * sqrt(x)`, where x is the read length. | 696 interval function `f` to `f(x) = 1 + 2.5 * sqrt(x)`, where x is the read length. |
623 See also: [setting function options]. If the function returns a result less than | 697 If the function returns a result less than |
624 1, it is rounded up to 1. Default: the `--sensitive` preset is used by | 698 1, it is rounded up to 1. Default: the `--sensitive` preset is used by |
625 default, which sets `-i` to `S,1,1.15` in `--end-to-end` mode to `-i S,1,0.75` | 699 default, which sets `-i` to `S,1,1.15` in `--end-to-end` mode to `-i S,1,0.75` |
626 in `--local` mode. | 700 in `--local` mode. |
627 | 701 |
628 --n-ceil <func> | 702 --n-ceil <func> |
629 Sets a function governing the maximum number of ambiguous characters (usually | 703 Sets a function governing the maximum number of ambiguous characters (usually |
630 `N`s and/or `.`s) allowed in a read as a function of read length. For instance, | 704 `N`s and/or `.`s) allowed in a read as a function of read length. For instance, |
631 specifying `-L,0,0.15` sets the N-ceiling function `f` to `f(x) = 0 + 0.15 * x`, | 705 specifying `-L,0,0.15` sets the N-ceiling function `f` to `f(x) = 0 + 0.15 * x`, |
632 where x is the read length. See also: [setting function options]. Reads | 706 where x is the read length. Reads exceeding this ceiling are filtered out. |
633 exceeding this ceiling are [filtered out]. Default: `L,0,0.15`. | 707 Default: `L,0,0.15`. |
634 | 708 |
635 --dpad <int> | 709 --dpad <int> |
636 "Pads" dynamic programming problems by `<int>` columns on either side to allow | 710 "Pads" dynamic programming problems by `<int>` columns on either side to allow |
637 gaps. Default: 15. | 711 gaps. Default: 15. |
638 | 712 |
656 paired-end configurations corresponding to fragments from the reverse-complement | 730 paired-end configurations corresponding to fragments from the reverse-complement |
657 (Crick) strand. Default: both strands enabled. | 731 (Crick) strand. Default: both strands enabled. |
658 | 732 |
659 --no-1mm-upfront | 733 --no-1mm-upfront |
660 By default, Bowtie 2 will attempt to find either an exact or a 1-mismatch | 734 By default, Bowtie 2 will attempt to find either an exact or a 1-mismatch |
661 end-to-end alignment for the read *before* trying the [multiseed heuristic]. Such | 735 end-to-end alignment for the read *before* trying the multiseed heuristic. Such |
662 alignments can be found very quickly, and many short read alignments have exact or | 736 alignments can be found very quickly, and many short read alignments have exact or |
663 near-exact end-to-end alignments. However, this can lead to unexpected | 737 near-exact end-to-end alignments. However, this can lead to unexpected |
664 alignments when the user also sets options governing the [multiseed heuristic], | 738 alignments when the user also sets options governing the multiseed heuristic, |
665 like `-L` and `-N`. For instance, if the user specifies `-N 0` and `-L` equal | 739 like `-L` and `-N`. For instance, if the user specifies `-N 0` and `-L` equal |
666 to the length of the read, the user will be surprised to find 1-mismatch alignments | 740 to the length of the read, the user will be surprised to find 1-mismatch alignments |
667 reported. This option prevents Bowtie 2 from searching for 1-mismatch end-to-end | 741 reported. This option prevents Bowtie 2 from searching for 1-mismatch end-to-end |
668 alignments before using the [multiseed heuristic], which leads to the expected | 742 alignments before using the multiseed heuristic, which leads to the expected |
669 behavior when combined with options such as `-L` and `-N`. This comes at the | 743 behavior when combined with options such as `-L` and `-N`. This comes at the |
670 expense of speed. | 744 expense of speed. |
671 | 745 |
672 --end-to-end | 746 --end-to-end |
673 In this mode, Bowtie 2 requires that the entire read align from one end to the | 747 In this mode, Bowtie 2 requires that the entire read align from one end to the |
719 | 793 |
720 --score-min <func> | 794 --score-min <func> |
721 Sets a function governing the minimum alignment score needed for an alignment to | 795 Sets a function governing the minimum alignment score needed for an alignment to |
722 be considered "valid" (i.e. good enough to report). This is a function of read | 796 be considered "valid" (i.e. good enough to report). This is a function of read |
723 length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` | 797 length. For instance, specifying `L,0,-0.6` sets the minimum-score function `f` |
724 to `f(x) = 0 + -0.6 * x`, where `x` is the read length. See also: [setting | 798 to `f(x) = 0 + -0.6 * x`, where `x` is the read length. The default in `--end-to-end` mode is `L,-0.6,-0.6` and |
725 function options]. The default in `--end-to-end` mode is `L,-0.6,-0.6` and | |
726 the default in `--local` mode is `G,20,8`. | 799 the default in `--local` mode is `G,20,8`. |
727 | 800 |
728 ----- | 801 ----- |
729 | 802 |
730 **Reporting options**:: | 803 **Reporting options**:: |
838 (`--fr`/`--rf`/`--ff`, `-I`, `-X`). This option disables that behavior. | 911 (`--fr`/`--rf`/`--ff`, `-I`, `-X`). This option disables that behavior. |
839 | 912 |
840 --dovetail | 913 --dovetail |
841 If the mates "dovetail", that is if one mate alignment extends past the | 914 If the mates "dovetail", that is if one mate alignment extends past the |
842 beginning of the other such that the wrong mate begins upstream, consider that | 915 beginning of the other such that the wrong mate begins upstream, consider that |
843 to be concordant. See also: [Mates can overlap, contain or dovetail each | 916 to be concordant. Default: mates cannot dovetail in a concordant alignment. |
844 other]. Default: mates cannot dovetail in a concordant alignment. | |
845 | 917 |
846 --no-contain | 918 --no-contain |
847 If one mate alignment contains the other, consider that to be non-concordant. | 919 If one mate alignment contains the other, consider that to be non-concordant. |
848 See also: [Mates can overlap, contain or dovetail each other]. Default: a mate | 920 Default: a mate can contain the other in a concordant alignment. |
849 can contain the other in a concordant alignment. | |
850 | 921 |
851 --no-overlap | 922 --no-overlap |
852 If one mate alignment overlaps the other at all, consider that to be | 923 If one mate alignment overlaps the other at all, consider that to be |
853 non-concordant. See also: [Mates can overlap, contain or dovetail each other]. | 924 non-concordant. Default: mates can overlap in a concordant alignment. |
854 Default: mates can overlap in a concordant alignment. | |
855 | 925 |
856 ------ | 926 ------ |
857 | 927 |
858 **SAM options**:: | 928 **SAM options**:: |
859 | 929 |
864 value set to `<text>`. | 934 value set to `<text>`. |
865 | 935 |
866 --rg <text> | 936 --rg <text> |
867 Add `<text>` (usually of the form `TAG:VAL`, e.g. `SM:Pool1`) as a field on the | 937 Add `<text>` (usually of the form `TAG:VAL`, e.g. `SM:Pool1`) as a field on the |
868 `@RG` header line. Note: in order for the `@RG` line to appear, `--rg-id` | 938 `@RG` header line. Note: in order for the `@RG` line to appear, `--rg-id` |
869 must also be specified. This is because the `ID` tag is required by the [SAM | 939 must also be specified. This is because the `ID` tag is required by the SAM |
870 Spec][SAM]. Specify `--rg` multiple times to set multiple fields. See the | 940 Specification. Specify `--rg` multiple times to set multiple fields. See the |
871 [SAM Spec][SAM] for details about what fields are legal. | 941 SAM Specification for details about what fields are legal. |
872 | 942 |
873 --omit-sec-seq | 943 --omit-sec-seq |
874 When printing secondary alignments, Bowtie 2 by default will write out the `SEQ` | 944 When printing secondary alignments, Bowtie 2 by default will write out the `SEQ` |
875 and `QUAL` strings. Specifying this option causes Bowtie 2 to print an asterix | 945 and `QUAL` strings. Specifying this option causes Bowtie 2 to print an asterix |
876 in those fields instead. | 946 in those fields instead. |