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 &amp;&amp; 17 bowtie2-build "$reference_genome.own_file" genome &amp;&amp;
15 ln -s "$reference_genome.own_file" genome.fa &amp;&amp; 18 ln -s "$reference_genome.own_file" genome.fa &amp;&amp;
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 - - &gt; $output
174 #else
175 &gt; $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 &amp;&amp; mv "${ _unaligned_root }.1${_unaligned_ext}" "${ output_unaligned_reads_l }"
157 ; mv $left $output_unaligned_reads_l; 183 &amp;&amp; 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 &quot;fastqsanger&quot;" />
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 &quot;fastqsanger&quot;" />
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 &quot;fastqsanger&quot;" />
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 &quot;Alignment Options&quot; 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 &quot;Alignment Options&quot; 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 &quot;fastqsanger&quot;" />
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 &quot;Alignment Options&quot; 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 &quot;Alignment Options&quot; 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 &quot;Input Options&quot; section of Help below for information"> 303 <param name="input_options_selector" type="select" label="Do you want to tweak input options?" help="See &quot;Input Options&quot; 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 &quot;Effort Options&quot; section of Help below for information"> 391 <param name="effort_options_selector" type="select" label="Do you want to tweak effort options?" help="See &quot;Effort Options&quot; 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 &quot;Output Options&quot; 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 &quot;Output Options&quot; 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 &lt;int&gt; 667 -N &lt;int&gt;
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 &lt;int&gt; 672 -L &lt;int&gt;
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 &lt;func&gt; 678 -i &lt;func&gt;
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 &lt;func&gt; 702 --n-ceil &lt;func&gt;
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 &lt;int&gt; 709 --dpad &lt;int&gt;
636 "Pads" dynamic programming problems by `&lt;int&gt;` columns on either side to allow 710 "Pads" dynamic programming problems by `&lt;int&gt;` 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 &lt;func&gt; 794 --score-min &lt;func&gt;
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 `&lt;text&gt;`. 934 value set to `&lt;text&gt;`.
865 935
866 --rg &lt;text&gt; 936 --rg &lt;text&gt;
867 Add `&lt;text&gt;` (usually of the form `TAG:VAL`, e.g. `SM:Pool1`) as a field on the 937 Add `&lt;text&gt;` (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.