comparison bowtie_transcriptome_wrapper/bowtie_transcriptomic_wrapper_test.xml @ 24:65e9b881213b draft default tip

Uploaded
author jackcurragh
date Mon, 27 Mar 2023 09:53:42 +0000
parents
children
comparison
equal deleted inserted replaced
23:1157b2d3f288 24:65e9b881213b
1 <tool id="bowtie_trans_wrapper5" name="Bowtie Transcriptome Alignment" version="1b">
2 <description>Align to Transcriptome using Bowtie</description>
3 <requirements>
4 <requirement type="package" version="1.2.0">bowtie</requirement>
5 <requirement type="package" version="1.13">samtools</requirement>
6
7 </requirements>
8 <version_command>bowtie --version</version_command>
9 <command>
10 python '$__tool_directory__/bowtie_transcriptome_wrapper.py'
11 ## Set number of threads
12 --threads="\${GALAXY_SLOTS:-4}"
13 ## Outputs
14 --output="${output}"
15 #if str( $singlePaired.sPaired ) == "single"
16 #if $output_unmapped_reads_l
17 --output_unmapped_reads="${output_unmapped_reads_l}"
18 #end if
19 #if $output_suppressed_reads_l
20 --output_suppressed_reads="${output_suppressed_reads_l}"
21 #end if
22 --galaxy_input_format="${singlePaired.sInput1.ext}"
23 #else
24 #if $output_unmapped_reads_l and $output_unmapped_reads_r
25 --output_unmapped_reads_l="${output_unmapped_reads_l}"
26 --output_unmapped_reads_r="${output_unmapped_reads_r}"
27 #end if
28 #if $output_suppressed_reads_l and $output_suppressed_reads_l
29 --output_suppressed_reads_l="${output_suppressed_reads_l}"
30 --output_suppressed_reads_r="${output_suppressed_reads_r}"
31 #end if
32 --galaxy_input_format="${singlePaired.pInput1.ext}"
33 #end if
34 ## Inputs
35 --dataType="solexa" ##this indicates that nucleotide base space is used in the wrapper
36 --suppressHeader="${suppressHeader}"
37 --genomeSource="${refGenomeSource.genomeSource}"
38 #if $refGenomeSource.genomeSource == "history":
39 ##index already exists
40 #if $refGenomeSource.ownFile.extension.startswith( 'bowtie_' ):
41 ##user previously built
42 --ref="${refGenomeSource.ownFile.extra_files_path}/${refGenomeSource.ownFile.metadata.base_name}"
43 --do_not_build_index
44 #else:
45 ##build index on the fly
46 --ref="${refGenomeSource.ownFile}"
47 --indexSettings="${refGenomeSource.indexParams.indexSettings}"
48 #if $refGenomeSource.indexParams.indexSettings == "indexFull":
49 --iautoB="${refGenomeSource.indexParams.autoBehavior.autoB}"
50 #if $refGenomeSource.indexParams.autoBehavior.autoB == "set":
51 --ipacked="${refGenomeSource.indexParams.autoBehavior.packed}"
52 --ibmax="${refGenomeSource.indexParams.autoBehavior.bmax}"
53 --ibmaxdivn="${refGenomeSource.indexParams.autoBehavior.bmaxdivn}"
54 --idcv="${refGenomeSource.indexParams.autoBehavior.dcv}"
55 #end if
56 --inodc="${refGenomeSource.indexParams.nodc}"
57 --inoref="${refGenomeSource.indexParams.noref}"
58 --ioffrate="${refGenomeSource.indexParams.offrate}"
59 --iftab="${refGenomeSource.indexParams.ftab}"
60 --intoa="${refGenomeSource.indexParams.ntoa}"
61 --iendian="${refGenomeSource.indexParams.endian}"
62 --iseed="${refGenomeSource.indexParams.seed}"
63 #end if
64 #end if
65 #else
66 ##use pre-built index
67 --ref="${refGenomeSource.index.fields.path}"
68 #end if
69 --paired="${singlePaired.sPaired}"
70 #if $singlePaired.sPaired == "single":
71 --input1="${singlePaired.sInput1}"
72 --params="${singlePaired.sParams.sSettingsType}"
73 #if $singlePaired.sParams.sSettingsType == "full":
74 --skip="${singlePaired.sParams.sSkip}"
75 --alignLimit="${singlePaired.sParams.sAlignLimit}"
76 --trimH="${singlePaired.sParams.sTrimH}"
77 --trimL="${singlePaired.sParams.sTrimL}"
78 #if $singlePaired.sParams.alignModeOption.alignMode == 'nMode'
79 --mismatchSeed="${singlePaired.sParams.alignModeOption.sMismatchSeed}"
80 --mismatchQual="${singlePaired.sParams.alignModeOption.sMismatchQual}"
81 --seedLen="${singlePaired.sParams.alignModeOption.sSeedLen}"
82 --rounding="${singlePaired.sParams.alignModeOption.sRounding}"
83 #else
84 --maxMismatches="${singlePaired.sParams.alignModeOption.maxMismatches}"
85 #end if
86 --forwardAlign="${singlePaired.sParams.sForwardAlign}"
87 --reverseAlign="${singlePaired.sParams.sReverseAlign}"
88 --tryHard="${singlePaired.sParams.sBestOption.sTryHardOption.sTryHard}"
89 --allValAligns="${singlePaired.sParams.sAllValAlignsOption.sAllValAligns}"
90 #if $singlePaired.sParams.sAllValAlignsOption.sAllValAligns == "noAllValAligns"
91 --valAlign="${singlePaired.sParams.sAllValAlignsOption.sValAlign}"
92 #end if
93 --suppressAlign="${singlePaired.sParams.sSuppressAlign}"
94 --best="${singlePaired.sParams.sBestOption.sBest}"
95 #if $singlePaired.sParams.sBestOption.sBest == "doBest":
96 --strata="${singlePaired.sParams.sBestOption.sdStrata}"
97 #if $singlePaired.sParams.sBestOption.sTryHardOption.sTryHard == "noTryHard"
98 --maxBacktracks="${singlePaired.sParams.sBestOption.sTryHardOption.sdMaxBacktracks}"
99 #end if
100 #else:
101 #if $singlePaired.sParams.sBestOption.sTryHardOption.sTryHard == "noTryHard"
102 --maxBacktracks="${singlePaired.sParams.sBestOption.sTryHardOption.snMaxBacktracks}"
103 #end if
104 #end if
105 --offrate="${singlePaired.sParams.sOffrate}"
106 --seed="${singlePaired.sParams.sSeed}"
107 #end if
108 #else:
109 --input1="${singlePaired.pInput1}"
110 --input2="${singlePaired.pInput2}"
111 --maxInsert="${singlePaired.pMaxInsert}"
112 --mateOrient="${singlePaired.pMateOrient}"
113 --params="${singlePaired.pParams.pSettingsType}"
114 #if $singlePaired.pParams.pSettingsType == "full":
115 --skip="${singlePaired.pParams.pSkip}"
116 --alignLimit="${singlePaired.pParams.pAlignLimit}"
117 --trimH="${singlePaired.pParams.pTrimH}"
118 --trimL="${singlePaired.pParams.pTrimL}"
119 #if $singlePaired.pParams.alignModeOption.alignMode == 'nMode'
120 --mismatchSeed="${singlePaired.pParams.alignModeOption.pMismatchSeed}"
121 --mismatchQual="${singlePaired.pParams.alignModeOption.pMismatchQual}"
122 --seedLen="${singlePaired.pParams.alignModeOption.pSeedLen}"
123 --rounding="${singlePaired.pParams.alignModeOption.pRounding}"
124 #else
125 --maxMismatches="${singlePaired.pParams.alignModeOption.maxMismatches}"
126 #end if
127 --minInsert="${singlePaired.pParams.pMinInsert}"
128 --forwardAlign="${singlePaired.pParams.pForwardAlign}"
129 --reverseAlign="${singlePaired.pParams.pReverseAlign}"
130 --tryHard="${singlePaired.pParams.pBestOption.pTryHardOption.pTryHard}"
131 --allValAligns="${singlePaired.pParams.pAllValAlignsOption.pAllValAligns}"
132 #if $singlePaired.pParams.pAllValAlignsOption.pAllValAligns == "noAllValAligns"
133 --valAlign="${singlePaired.pParams.pAllValAlignsOption.pValAlign}"
134 #end if
135 --suppressAlign="${singlePaired.pParams.pSuppressAlign}"
136 --best="${singlePaired.pParams.pBestOption.pBest}"
137 #if $singlePaired.pParams.pBestOption.pBest == "doBest":
138 --strata="${singlePaired.pParams.pBestOption.pdStrata}"
139 #if $singlePaired.pParams.pBestOption.pTryHardOption.pTryHard == "noTryHard"
140 --maxAlignAttempt="${singlePaired.pParams.pBestOption.pTryHardOption.pMaxAlignAttempt}"
141 --maxBacktracks="${singlePaired.pParams.pBestOption.pTryHardOption.pdMaxBacktracks}"
142 #end if
143 #else:
144 #if $singlePaired.pParams.pBestOption.pTryHardOption.pTryHard == "noTryHard"
145 --maxAlignAttempt="${singlePaired.pParams.pBestOption.pTryHardOption.pMaxAlignAttempt}"
146 --maxBacktracks="${singlePaired.pParams.pBestOption.pTryHardOption.pnMaxBacktracks}"
147 #end if
148 #end if
149 --offrate="${singlePaired.pParams.pOffrate}"
150 --seed="${singlePaired.pParams.pSeed}"
151 #end if
152 #end if
153 #if $save_mapping_stats
154 --output_mapping_stats="$mapping_stats"
155 #end if
156 </command>
157 <inputs>
158 <conditional name="refGenomeSource">
159 <param name="genomeSource" type="select" label="Will you select a reference from your history or use a built-in index?" help="Built-ins were indexed using default options">
160 <option value="indexed">Use a built-in index</option>
161 <option value="history">Use one from the history</option>
162 </param>
163 <when value="indexed">
164 <param name="index" type="select" label="Select a reference" help="if your reference of interest is not listed - contact RiboGalaxy team">
165 <options from_data_table="bowtie_transcriptome_references">
166 <filter type="sort_by" column="2" />
167 <validator type="no_options" message="No indexes are available" />
168 </options>
169 </param>
170 </when>
171 <when value="history">
172 <param name="ownFile" type="data" format="bowtie_base_index,fasta" label="Select the reference" />
173 <conditional name="indexParams">
174 <param name="indexSettings" type="select" label="Choose whether to use Default options for building indices or to Set your own" help="These settings are ignored when using a prebuilt index">
175 <option value="indexPreSet">Default</option>
176 <option value="indexFull">Set your own</option>
177 </param>
178 <when value="indexPreSet" />
179 <when value="indexFull">
180 <conditional name="autoBehavior">
181 <param name="autoB" type="select" label="Choose to use automatic or specified behavior for some parameters (-a)" help="Allows you to set --packed, --bmax, --bmaxdivn, and --dcv">
182 <option value="auto">Automatic behavior</option>
183 <option value="set">Set values (sets --noauto and allows others to be set)</option>
184 </param>
185 <when value="auto" />
186 <when value="set">
187 <param name="packed" type="select" label="Whether or not to use a packed representation for DNA strings (--packed)" help="Packed representation saves memory but makes indexing 2-3 times slower">
188 <option value="unpacked">Use regular representation</option>
189 <option value="packed">Use packed representation</option>
190 </param>
191 <param name="bmax" type="integer" value="-1" label="Maximum number of suffixes allowed in a block (--bmax)" help="-1 for not specified. Must be at least 1" />
192 <param name="bmaxdivn" type="integer" value="4" label="Maximum number of suffixes allowed in a block as a fraction of the length of the reference (--bmaxdivn)" />
193 <param name="dcv" type="integer" value="1024" min="3" label="The period for the difference-cover sample (--dcv)" help="A larger period yields less memory overhead, but may make suffix sorting slower, especially if repeats are present" />
194 </when>
195 </conditional>
196 <param name="nodc" type="select" label="Whether or not to disable the use of the difference-cover sample (--nodc)" help="Suffix sorting becomes quadratic-time in the worst case (with a very repetitive reference)">
197 <option value="dc">Use difference-cover sample</option>
198 <option value="nodc">Disable difference-cover sample</option>
199 </param>
200 <param name="noref" type="select" label="Whether or not to build the part of the reference index used only in paired-end alignment (-r)">
201 <option value="ref">Build all index files</option>
202 <option value="noref">Do not build paired-end alignment index files</option>
203 </param>
204 <param name="offrate" type="integer" value="5" min="0" label="The indexer will mark every 2^n Burrows-Wheeler rows with their corresponding location on the genome (-o)" help="Marking more rows makes reference-position lookups faster, but requires more memory to hold the annotations at runtime" />
205 <param name="ftab" type="integer" value="10" min="1" label="The size of the ftab lookup table used to calculate an initial Burrows-Wheeler range with respect to the first n characters of the query (-t)" help="ftab size is 4^(n+1) bytes" />
206 <param name="ntoa" type="select" label="Whether or not to convert Ns in the reference sequence to As (--ntoa)">
207 <option value="no">Do not convert Ns</option>
208 <option value="yes">Convert Ns to As</option>
209 </param>
210 <param name="endian" type="select" label="Endianness to use when serializing integers to the index file (--big/--little)" help="Little is most appropriate for Intel- and AMD-based architecture">
211 <option value="little">Little</option>
212 <option value="big">Big</option>
213 </param>
214 <param name="seed" type="integer" value="-1" label="Seed for the pseudorandom number generator (--seed)" help="Use -1 to use default" />
215 </when> <!-- indexFull -->
216 </conditional> <!-- indexParams -->
217 </when> <!-- history -->
218 </conditional> <!-- refGenomeSource -->
219 <conditional name="singlePaired">
220 <param name="sPaired" type="select" label="Is this library mate-paired?">
221 <option value="single">Single-end</option>
222 <option value="paired">Paired-end</option>
223 </param>
224 <when value="single">
225 <param name="sInput1" type="data" format="fastq,fastqsanger,fastqillumina,fastqsolexa" label="FASTQ file" help="Must have ASCII encoded quality scores"/>
226 <conditional name="sParams">
227 <param name="sSettingsType" type="select" label="Bowtie settings to use" help="For most mapping needs use Commonly used settings. If you want full control use Full parameter list">
228 <option value="preSet">Commonly used</option>
229 <option value="full" selected="true">Full parameter list</option>
230 </param>
231 <when value="preSet" />
232 <when value="full">
233 <param name="sSkip" type="integer" value="0" label="Skip the first n reads (-s)" />
234 <param name="sAlignLimit" type="integer" value="-1" label="Only align the first n reads (-u)" help="-1 for off" />
235 <param name="sTrimH" type="integer" value="0" label="Trim n bases from high-quality (left) end of each read before alignment (-5)" />
236 <param name="sTrimL" type="integer" value="0" label="Trim n bases from low-quality (right) end of each read before alignment (-3)" />
237 <conditional name="alignModeOption">
238 <param name="alignMode" type="select" label="Alignment mode">
239 <option value="nMode">Maq-like: quality-aware, limit mismatches in seed (-n)</option>
240 <option value="vMode" selected="true">ignore qualities, limit end-to-end mismatches (-v)</option>
241 </param>
242 <when value="nMode">
243 <param name="sMismatchSeed" type="integer" value="2" min="0" max="3" label="Maximum number of mismatches permitted in the seed (-n)" help="May be 0, 1, 2, or 3" />
244 <param name="sMismatchQual" type="integer" value="70" min="1" label="Maximum permitted total of quality values at all mismatched read positions (-e)" />
245 <param name="sSeedLen" type="integer" value="28" min="5" label="Seed length (-l)" help="Minimum value is 5" />
246 <param name="sRounding" type="select" label="Whether or not to round to the nearest 10 and saturating at 30 (--nomaqround)" help="Maq accepts quality values in the Phred quality scale, but internally rounds values to the nearest 10, with a maximum of 30. By default, bowtie also rounds this way">
247 <option value="round">Round to nearest 10</option>
248 <option value="noRound">Do not round to nearest 10</option>
249 </param>
250 </when>
251 <when value="vMode">
252 <param name="maxMismatches" type="integer" value="3" min="0" max="3" label="Maximum number of mismatches (-v)" help="May be 0, 1, 2, or 3" />
253 <param name="sSeedLen" type="integer" value="25" min="5" label="Seed length (-l)" help="Minimum value is 5" />
254 </when>
255 </conditional>
256 <param name="sForwardAlign" type="select" label="Choose whether or not to attempt to align against the forward reference strand (--nofw)">
257 <option value="forward">Align against the forward reference strand</option>
258 <option value="noForward">Do not align against the forward reference strand</option>
259 </param>
260 <param name="sReverseAlign" type="select" label="Choose whether or not to attempt to align against the reverse-complement reference strand (--norc)">
261 <option value="reverse">Align against the reverse-complement reference strand</option>
262 <option value="noReverse" selected="true">Do not align against the reverse-complement reference strand</option>
263 </param>
264 <conditional name="sBestOption">
265 <param name="sBest" type="select" label="Whether or not to make Bowtie guarantee that reported singleton alignments are 'best' in terms of stratum and in terms of the quality values at the mismatched positions (--best)" help="Removes all strand bias. Only affects which alignments are reported by Bowtie. Runs slower with best option">
266 <option value="noBest">Do not use best</option>
267 <option value="doBest">Use best</option>
268 </param>
269 <when value="noBest">
270 <conditional name="sTryHardOption">
271 <param name="sTryHard" type="select" label="Whether or not to try as hard as possible to find valid alignments when they exist (-y)" help="Tryhard mode is much slower than regular mode">
272 <option value="noTryHard">Do not try hard</option>
273 <option value="doTryHard">Try hard</option>
274 </param>
275 <when value="noTryHard">
276 <param name="snMaxBacktracks" type="integer" value="125" min="0" label="Maximum number of backtracks permitted when aligning a read (--maxbts)" />
277 </when>
278 <when value="doTryHard" />
279 </conditional>
280 </when>
281 <when value="doBest">
282 <param name="sdStrata" type="select" label="Whether or not to report only those alignments that fall in the best stratum if many valid alignments exist and are reportable (--strata)">
283 <option value="noStrata">Do not use strata option</option>
284 <option value="doStrata">Use strata option</option>
285 </param>
286 <conditional name="sTryHardOption">
287 <param name="sTryHard" type="select" label="Whether or not to try as hard as possible to find valid alignments when they exist (-y)" help="Tryhard mode is much slower than regular mode">
288 <option value="noTryHard">Do not try hard</option>
289 <option value="doTryHard">Try hard</option>
290 </param>
291 <when value="noTryHard">
292 <param name="sdMaxBacktracks" type="integer" value="800" min="0" label="Maximum number of backtracks permitted when aligning a read (--maxbts)" />
293 </when>
294 <when value="doTryHard" />
295 </conditional>
296 </when>
297 </conditional> <!-- bestOption -->
298 <conditional name="sAllValAlignsOption">
299 <param name="sAllValAligns" type="select" label="Whether or not to report all valid alignments per read (-a)">
300 <option value="noAllValAligns">Do not report all valid alignments</option>
301 <option value="doAllValAligns" selected="true">Report all valid alignments</option>
302 </param>
303 <when value="noAllValAligns">
304 <param name="sValAlign" type="integer" value="1" min="1" label="Report up to n valid alignments per read (-k)" />
305 </when>
306 <when value="doAllValAligns" />
307 </conditional>
308 <param name="sSuppressAlign" type="integer" value="-1" label="Suppress all alignments for a read if more than n reportable alignments exist (-m)" help="-1 for no limit" />
309 <param name="sMaxFile" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write all reads with a number of valid alignments exceeding the limit set with the -m option to a file (--max)" />
310 <param name="sUnmappedFile" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write all reads that could not be aligned to a file (--un)" />
311 <param name="sOffrate" type="integer" value="-1" label="Override the offrate of the index to n (-o)" help="-1 for default" />
312 <param name="sSeed" type="integer" value="-1" label="Seed for pseudo-random number generator (--seed)" help="-1 for default" />
313 </when> <!-- full -->
314 </conditional> <!-- sParams -->
315 </when> <!-- single -->
316 <when value="paired">
317 <param name="pInput1" type="data" format="fastq,fastqsanger,fastqillumina,fastqsolexa" label="Forward FASTQ file" help="Must have ASCII encoded quality scores"/>
318 <param name="pInput2" type="data" format="fastq,fastqsanger,fastqillumina,fastqsolexa" label="Reverse FASTQ file" help="File format must match the Forward FASTQ file">
319 <options options_filter_attribute="ext" from_parameter="tool.app.datatypes_registry.datatypes_by_extension" transform_lines="obj.keys()">
320 <column name="name" index="0"/>
321 <column name="value" index="0"/>
322 <filter type="param_value" ref="pInput1" ref_attribute="ext" column="0"/>
323 </options>
324 </param>
325 <param name="pMaxInsert" type="integer" value="1000" label="Maximum insert size for valid paired-end alignments (-X)" />
326 <param name="pMateOrient" type="select" label="The upstream/downstream mate orientation for valid paired-end alignment against the forward reference strand (--fr/--rf/--ff)">
327 <option value="fr">FR (for Illumina)</option>
328 <option value="rf">RF</option>
329 <option value="ff">FF (for SOLiD)</option>
330 </param>
331 <conditional name="pParams">
332 <param name="pSettingsType" type="select" label="Bowtie settings to use" help="For most mapping needs use Commonly used settings. If you want full control use Full parameter list">
333 <option value="preSet">Commonly used</option>
334 <option value="full">Full parameter list</option>
335 </param>
336 <when value="preSet" />
337 <when value="full">
338 <param name="pSkip" type="integer" value="0" label="Skip the first n pairs (-s)" />
339 <param name="pAlignLimit" type="integer" value="-1" label="Only align the first n pairs (-u)" help="-1 for off" />
340 <param name="pTrimH" type="integer" value="0" label="Trim n bases from high-quality (left) end of each read before alignment (-5)" />
341 <param name="pTrimL" type="integer" value="0" label="Trim n bases from low-quality (right) end of each read before alignment (-3)" />
342 <conditional name="alignModeOption">
343 <param name="alignMode" type="select" label="Alignment mode">
344 <option value="nMode">Maq-like: quality-aware, limit mismatches in seed (-n)</option>
345 <option value="vMode" selected="true">ignore qualities, limit end-to-end mismatches (-v)</option>
346 </param>
347 <when value="nMode">
348 <param name="pMismatchSeed" type="integer" value="2" min="0" max="3" label="Maximum number of mismatches permitted in the seed (-n)" help="May be 0, 1, 2, or 3" />
349 <param name="pMismatchQual" type="integer" value="70" min="1" label="Maximum permitted total of quality values at all mismatched read positions (-e)" />
350 <param name="pSeedLen" type="integer" value="28" min="5" label="Seed length (-l)" help="Minimum value is 5" />
351 <param name="pRounding" type="select" label="Whether or not to round to the nearest 10 and saturating at 30 (--nomaqround)" help="Maq accepts quality values in the Phred quality scale, but internally rounds values to the nearest 10, with a maximum of 30. By default, bowtie also rounds this way">
352 <option value="round">Round to nearest 10</option>
353 <option value="noRound">Do not round to nearest 10</option>
354 </param>
355 </when>
356 <when value="vMode">
357 <param name="maxMismatches" type="integer" value="" min="0" max="3" label="Maximum number of mismatches (-v)" help="May be 0, 1, 2, or 3" />
358 <param name="pSeedLen" type="integer" value="25" min="5" label="Seed length (-l)" help="Minimum value is 5" />
359 </when>
360 </conditional>
361 <param name="pMinInsert" type="integer" value="0" label="Minimum insert size for valid paired-end alignments (-I)" />
362 <param name="pForwardAlign" type="select" label="Choose whether or not to attempt to align against the forward reference strand (--nofw)">
363 <option value="forward">Align against the forward reference strand</option>
364 <option value="noForward">Do not align against the forward reference strand</option>
365 </param>
366 <param name="pReverseAlign" type="select" label="Choose whether or not to attempt to align against the reverse-complement reference strand (--norc)">
367 <option value="reverse">Align against the reverse-complement reference strand</option>
368 <option value="noReverse" selected="true">Do not align against the reverse-complement reference strand</option>
369 </param>
370 <conditional name="pBestOption">
371 <param name="pBest" type="select" label="Whether or not to make Bowtie guarantee that reported singleton alignments are 'best' in terms of stratum and in terms of the quality values at the mismatched positions (--best)" help="Removes all strand bias. Only affects which alignments are reported by Bowtie. Runs slower with best option">
372 <option value="noBest">Do not use best</option>
373 <option value="doBest">Use best</option>
374 </param>
375 <when value="noBest">
376 <conditional name="pTryHardOption">
377 <param name="pTryHard" type="select" label="Whether or not to try as hard as possible to find valid alignments when they exist (-y)" help="Tryhard mode is much slower than regular mode">
378 <option value="noTryHard">Do not try hard</option>
379 <option value="doTryHard">Try hard</option>
380 </param>
381 <when value="noTryHard">
382 <param name="pMaxAlignAttempt" type="integer" value="100" min="1" label="Maximum number of attempts Bowtie will make to match an alignment for one mate with an alignment for the opposite mate (--pairtries)" />
383 <param name="pnMaxBacktracks" type="integer" value="125" min="0" label="Maximum number of backtracks permitted when aligning a read (--maxbts)" />
384 </when>
385 <when value="doTryHard" />
386 </conditional>
387 </when>
388 <when value="doBest">
389 <param name="pdStrata" type="select" label="Whether or not to report only those alignments that fall in the best stratum if many valid alignments exist and are reportable (--strata)">
390 <option value="noStrata">Do not use strata option</option>
391 <option value="doStrata">Use strata option</option>
392 </param>
393 <conditional name="pTryHardOption">
394 <param name="pTryHard" type="select" label="Whether or not to try as hard as possible to find valid alignments when they exist (-y)" help="Tryhard mode is much slower than regular mode">
395 <option value="noTryHard">Do not try hard</option>
396 <option value="doTryHard">Try hard</option>
397 </param>
398 <when value="noTryHard">
399 <param name="pMaxAlignAttempt" type="integer" value="100" min="1" label="Maximum number of attempts Bowtie will make to match an alignment for one mate with an alignment for the opposite mate (--pairtries)" />
400 <param name="pdMaxBacktracks" type="integer" value="800" min="0" label="Maximum number of backtracks permitted when aligning a read (--maxbts)" />
401 </when>
402 <when value="doTryHard" />
403 </conditional>
404 </when>
405 </conditional>
406 <conditional name="pAllValAlignsOption">
407 <param name="pAllValAligns" type="select" label="Whether or not to report all valid alignments per pair (-a)">
408 <option value="noAllValAligns">Do not report all valid alignments</option>
409 <option value="doAllValAligns">Report all valid alignments</option>
410 </param>
411 <when value="noAllValAligns">
412 <param name="pValAlign" type="integer" value="1" min="1" label="Report up to n valid alignments per pair (-k)" />
413 </when>
414 <when value="doAllValAligns" />
415 </conditional>
416 <param name="pSuppressAlign" type="integer" value="-1" label="Suppress all alignments for a pair if more than n reportable alignments exist (-m)" help="-1 for no limit" />
417 <param name="pMaxFile" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write all reads with a number of valid alignments exceeding the limit set with the -m option to a file (--max)" />
418 <param name="pUnmappedFile" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Write all reads that could not be aligned to a file (--un)" />
419 <param name="pOffrate" type="integer" value="-1" label="Override the offrate of the index to n (-o)" help="-1 for default" />
420 <param name="pSeed" type="integer" value="-1" label="Seed for pseudo-random number generator (--seed)" help="-1 for default" />
421 </when> <!-- full -->
422 </conditional> <!-- pParams -->
423 </when> <!-- paired -->
424 </conditional> <!-- singlePaired -->
425 <param name="save_mapping_stats" type="boolean" checked="False" label="Save the bowtie mapping statistics to the history" />
426 <param name="suppressHeader" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Suppress the header in the output SAM file (--sam-nohead)" help="Bowtie produces SAM with several lines of header information by default" />
427 </inputs>
428 <outputs>
429 <data format="sam" name="output" label="${tool.name} on ${on_string}: mapped reads">
430 <actions>
431 <conditional name="refGenomeSource.genomeSource">
432 <when value="indexed">
433 <action type="metadata" name="dbkey">
434 <option type="from_data_table" name="bowtie_transcriptome_indexes_4" column="1" offset="0">
435 <filter type="param_value" column="0" value="#" compare="startswith" keep="False"/>
436 <filter type="param_value" ref="refGenomeSource.index" column="0"/>
437 </option>
438 </action>
439 </when>
440 <when value="history">
441 <action type="metadata" name="dbkey">
442 <option type="from_param" name="refGenomeSource.ownFile" param_attribute="dbkey" />
443 </action>
444 </when>
445 </conditional>
446 </actions>
447 </data>
448 <data format="txt" name="mapping_stats" label="${tool.name} on ${on_string}: mapping stats">
449 <filter>save_mapping_stats is True</filter>
450 </data>
451 <data format="fastq" name="output_suppressed_reads_l" label="${tool.name} on ${on_string}: suppressed reads (L)">
452 <filter>((
453 singlePaired['sPaired'] == "single" and
454 singlePaired['sParams']['sSettingsType'] == "full" and
455 singlePaired['sParams']['sMaxFile'] is True
456 ) or (
457 singlePaired['sPaired'] == "paired" and
458 singlePaired['pParams']['pSettingsType'] == "full" and
459 singlePaired['pParams']['pMaxFile'] is True
460 ))
461 </filter>
462 <actions>
463 <conditional name="singlePaired.sPaired">
464 <when value="single">
465 <action type="format">
466 <option type="from_param" name="singlePaired.sInput1" param_attribute="ext" />
467 </action>
468 </when>
469 <when value="paired">
470 <action type="format">
471 <option type="from_param" name="singlePaired.pInput1" param_attribute="ext" />
472 </action>
473 </when>
474 </conditional>
475 </actions>
476 </data>
477 <data format="fastq" name="output_suppressed_reads_r" label="${tool.name} on ${on_string}: suppressed reads (R)">
478 <filter>singlePaired['sPaired'] == "paired"</filter>
479 <filter>singlePaired['pParams']['pSettingsType'] == "full"</filter>
480 <filter>singlePaired['pParams']['pMaxFile'] is True</filter>
481 <actions>
482 <conditional name="singlePaired.sPaired">
483 <when value="single">
484 <action type="format">
485 <option type="from_param" name="singlePaired.sInput1" param_attribute="ext" />
486 </action>
487 </when>
488 <when value="paired">
489 <action type="format">
490 <option type="from_param" name="singlePaired.pInput1" param_attribute="ext" />
491 </action>
492 </when>
493 </conditional>
494 </actions>
495 </data>
496 <data format="fastq" name="output_unmapped_reads_l" label="${tool.name} on ${on_string}: unmapped reads (L)">
497 <filter>
498 ((
499 singlePaired['sPaired'] == "single" and
500 singlePaired['sParams']['sSettingsType'] == "full" and
501 singlePaired['sParams']['sUnmappedFile'] is True
502 ) or (
503 singlePaired['sPaired'] == "paired" and
504 singlePaired['pParams']['pSettingsType'] == "full" and
505 singlePaired['pParams']['pUnmappedFile'] is True
506 ))
507 </filter>
508 <actions>
509 <conditional name="singlePaired.sPaired">
510 <when value="single">
511 <action type="format">
512 <option type="from_param" name="singlePaired.sInput1" param_attribute="ext" />
513 </action>
514 </when>
515 <when value="paired">
516 <action type="format">
517 <option type="from_param" name="singlePaired.pInput1" param_attribute="ext" />
518 </action>
519 </when>
520 </conditional>
521 </actions>
522 </data>
523 <data format="fastq" name="output_unmapped_reads_r" label="${tool.name} on ${on_string}: unmapped reads (R)">
524 <filter>singlePaired['sPaired'] == "paired"</filter>
525 <filter>singlePaired['pParams']['pSettingsType'] == "full"</filter>
526 <filter>singlePaired['pParams']['pUnmappedFile'] is True</filter>
527 <actions>
528 <conditional name="singlePaired.sPaired">
529 <when value="single">
530 <action type="format">
531 <option type="from_param" name="singlePaired.sInput1" param_attribute="ext" />
532 </action>
533 </when>
534 <when value="paired">
535 <action type="format">
536 <option type="from_param" name="singlePaired.pInput1" param_attribute="ext" />
537 </action>
538 </when>
539 </conditional>
540 </actions>
541 </data>
542 </outputs>
543 <tests>
544 <test>
545 <!--
546 Bowtie command:
547 bowtie -q -p 4 -S +sam-nohead chrM_base test-data/bowtie_in2.fastqsanger > bowtie_out6_u.sam
548 sort bowtie_out6_u.sam > bowtie_out6.sam
549 -p is the number of threads. You need to replace the + with 2 dashes.
550 chrM_base needs to be the base location/name of the index files.
551 -->
552 <param name="genomeSource" value="indexed" />
553 <!-- this is the backwards-compatible "unique value" for this index, not an actual path -->
554 <param name="index" value="equCab2chrM" />
555 <param name="sPaired" value="single" />
556 <param name="sInput1" ftype="fastqsanger" value="bowtie_in2.fastqsanger" />
557 <param name="sSettingsType" value="preSet" />
558 <param name="suppressHeader" value="true" />
559 <output name="output" ftype="sam" file="bowtie_out6.sam" sort="True">
560 <metadata name="dbkey" value="equCab2" />
561 </output>
562 </test>
563 <test>
564 <!--
565 Bowtie command:
566 bowtie-build -f test-data/phiX.fasta phiX_base
567 bowtie -q -X 1000 +ff -p 4 -S +sam-nohead -n 2 -e 70 -l 28 +pairtries 100 +maxbts 800 +best +un bowtie_out8_u.fastq phiX_base -1 test-data/bowtie_in5.fastqsanger -2 test-data/bowtie_in6.fastqsanger > bowtie_out7_u.sam
568 sort bowtie_out7_u.sam > bowtie_out7.sam
569 sort bowtie_out8_u_1.sam > bowtie_out8_1.sam
570 sort bowtie_out8_u_2.sam > bowtie_out8_2.sam
571 Then also need to modify bowtie_out8_1.sam and bowtie_out8_2.sam so that all @ lines come before sequence lines.
572 -p is the number of threads. You need to replace the + with 2 dashes.
573 The two unmapped output files will be named bowtie_out8_1.fastq and bowtie_out8_2.fastq.
574 chrM_base is the index files' location/base name.
575 -->
576 <param name="genomeSource" value="history" />
577 <param name="ownFile" value="phiX.fasta" />
578 <param name="indexSettings" value="indexPreSet" />
579 <param name="sPaired" value="paired" />
580 <param name="pInput1" ftype="fastqsanger" value="bowtie_in5.fastqsanger" />
581 <param name="pInput2" ftype="fastqsanger" value="bowtie_in6.fastqsanger" />
582 <param name="pMaxInsert" value="1000" />
583 <param name="pMateOrient" value="ff" />
584 <param name="pSettingsType" value="full" />
585 <param name="pSkip" value="0" />
586 <param name="pAlignLimit" value="-1" />
587 <param name="pTrimH" value="0" />
588 <param name="pTrimL" value="0" />
589 <param name="alignMode" value="nMode" />
590 <param name="pMismatchSeed" value="2" />
591 <param name="pMismatchQual" value="70" />
592 <param name="pSeedLen" value="28" />
593 <param name="pRounding" value="round" />
594 <param name="pMinInsert" value="0" />
595 <param name="pMaxAlignAttempt" value="100" />
596 <param name="pForwardAlign" value="forward" />
597 <param name="pReverseAlign" value="reverse" />
598 <param name="pTryHard" value="noTryHard" />
599 <param name="pValAlign" value="1" />
600 <param name="pAllValAligns" value="noAllValAligns" />
601 <param name="pSuppressAlign" value="-1" />
602 <param name="pUnmappedFile" value="true" />
603 <param name="pMaxFile" value="false" />
604 <param name="pBest" value="doBest" />
605 <param name="pdMaxBacktracks" value="800" />
606 <param name="pdStrata" value="noStrata" />
607 <param name="pOffrate" value="-1" />
608 <param name="pSeed" value="-1" />
609 <param name="suppressHeader" value="true" />
610 <output name="output" ftype="sam" file="bowtie_out7.sam" sort="True" />
611 <output name="output_unmapped_reads_l" ftype="fastqsanger" file="bowtie_out8_1.fastq" sort="True" />
612 <output name="output_unmapped_reads_r" ftype="fastqsanger" file="bowtie_out8_2.fastq" sort="True" />
613 </test>
614 <!-- start testing of non-sanger variant fastq reads -->
615 <test>
616 <param name="genomeSource" value="history" />
617 <param name="ownFile" value="phiX.fasta" />
618 <param name="indexSettings" value="indexPreSet" />
619 <param name="sPaired" value="paired" />
620 <param name="pInput1" ftype="fastqillumina" value="bowtie_in5.fastqillumina" />
621 <param name="pInput2" ftype="fastqillumina" value="bowtie_in6.fastqillumina" />
622 <param name="pMaxInsert" value="1000" />
623 <param name="pMateOrient" value="ff" />
624 <param name="pSettingsType" value="full" />
625 <param name="pSkip" value="0" />
626 <param name="pAlignLimit" value="-1" />
627 <param name="pTrimH" value="0" />
628 <param name="pTrimL" value="0" />
629 <param name="alignMode" value="nMode" />
630 <param name="pMismatchSeed" value="2" />
631 <param name="pMismatchQual" value="70" />
632 <param name="pSeedLen" value="28" />
633 <param name="pRounding" value="round" />
634 <param name="pMinInsert" value="0" />
635 <param name="pMaxAlignAttempt" value="100" />
636 <param name="pForwardAlign" value="forward" />
637 <param name="pReverseAlign" value="reverse" />
638 <param name="pTryHard" value="noTryHard" />
639 <param name="pValAlign" value="1" />
640 <param name="pAllValAligns" value="noAllValAligns" />
641 <param name="pSuppressAlign" value="-1" />
642 <param name="pUnmappedFile" value="true" />
643 <param name="pMaxFile" value="false" />
644 <param name="pBest" value="doBest" />
645 <param name="pdMaxBacktracks" value="800" />
646 <param name="pdStrata" value="noStrata" />
647 <param name="pOffrate" value="-1" />
648 <param name="pSeed" value="-1" />
649 <param name="suppressHeader" value="true" />
650 <output name="output" ftype="sam" file="bowtie_out7.sam" sort="True" />
651 <output name="output_unmapped_reads_l" ftype="fastqillumina" file="bowtie_out8_1.fastqillumina.sorted" sort="True" />
652 <output name="output_unmapped_reads_r" ftype="fastqillumina" file="bowtie_out8_2.fastqillumina.sorted" sort="True" />
653 </test>
654 <test>
655 <param name="genomeSource" value="history" />
656 <param name="ownFile" value="phiX.fasta" />
657 <param name="indexSettings" value="indexPreSet" />
658 <param name="sPaired" value="paired" />
659 <param name="pInput1" ftype="fastqsolexa" value="bowtie_in5.fastqsolexa" />
660 <param name="pInput2" ftype="fastqsolexa" value="bowtie_in6.fastqsolexa" />
661 <param name="pMaxInsert" value="1000" />
662 <param name="pMateOrient" value="ff" />
663 <param name="pSettingsType" value="full" />
664 <param name="pSkip" value="0" />
665 <param name="pAlignLimit" value="-1" />
666 <param name="pTrimH" value="0" />
667 <param name="pTrimL" value="0" />
668 <param name="alignMode" value="nMode" />
669 <param name="pMismatchSeed" value="2" />
670 <param name="pMismatchQual" value="70" />
671 <param name="pSeedLen" value="28" />
672 <param name="pRounding" value="round" />
673 <param name="pMinInsert" value="0" />
674 <param name="pMaxAlignAttempt" value="100" />
675 <param name="pForwardAlign" value="forward" />
676 <param name="pReverseAlign" value="reverse" />
677 <param name="pTryHard" value="noTryHard" />
678 <param name="pValAlign" value="1" />
679 <param name="pAllValAligns" value="noAllValAligns" />
680 <param name="pSuppressAlign" value="-1" />
681 <param name="pUnmappedFile" value="true" />
682 <param name="pMaxFile" value="false" />
683 <param name="pBest" value="doBest" />
684 <param name="pdMaxBacktracks" value="800" />
685 <param name="pdStrata" value="noStrata" />
686 <param name="pOffrate" value="-1" />
687 <param name="pSeed" value="-1" />
688 <param name="suppressHeader" value="true" />
689 <output name="output" ftype="sam" file="bowtie_out7.sam" sort="True" />
690 <output name="output_unmapped_reads_l" ftype="fastqsolexa" file="bowtie_out8_1.fastqsolexa.sorted" sort="True" />
691 <output name="output_unmapped_reads_r" ftype="fastqsolexa" file="bowtie_out8_2.fastqsolexa.sorted" sort="True" />
692 </test>
693 <!-- end testing of non-sanger variant fastq reads -->
694 <test>
695 <!--
696 Bowtie command:
697 bowtie -q -p 4 -S +sam-nohead -n 2 -e 70 -l 28 -y -k 1 chrM_base test-data/bowtie_in2.fastqsanger > bowtie_out9_u.sam
698 sort bowtie_out9_u.sam > bowtie_out9.sam
699 -p is the number of threads. You need to replace the + with 2 dashes.
700 chrM_base is the index files' location/base name.
701 -->
702 <param name="genomeSource" value="indexed" />
703 <!-- this is the backwards-compatible "unique value" for this index, not an actual path -->
704 <param name="index" value="equCab2chrM" />
705 <param name="sPaired" value="single" />
706 <param name="sInput1" ftype="fastqsanger" value="bowtie_in2.fastqsanger" />
707 <param name="sSettingsType" value="full" />
708 <param name="sSkip" value="0" />
709 <param name="sAlignLimit" value="-1" />
710 <param name="sTrimH" value="0" />
711 <param name="sTrimL" value="0" />
712 <param name="alignMode" value="nMode" />
713 <param name="sMismatchSeed" value="2" />
714 <param name="sMismatchQual" value="70" />
715 <param name="sSeedLen" value="28" />
716 <param name="sRounding" value="round" />
717 <param name="sForwardAlign" value="forward" />
718 <param name="sReverseAlign" value="reverse" />
719 <param name="sTryHard" value="doTryHard" />
720 <param name="sValAlign" value="1" />
721 <param name="sAllValAligns" value="noAllValAligns" />
722 <param name="sSuppressAlign" value="-1" />
723 <param name="sUnmappedFile" value="false" />
724 <param name="sMaxFile" value="false" />
725 <param name="sBest" value="noBest" />
726 <param name="sOffrate" value="-1" />
727 <param name="sSeed" value="-1" />
728 <param name="suppressHeader" value="true" />
729 <output name="output" ftype="sam" file="bowtie_out9.sam" sort="True">
730 <metadata name="dbkey" value="equCab2" />
731 </output>
732 </test>
733 <test>
734 <!--
735 Bowtie command:
736 bowtie-build +offrate 5 +ftabchars 10 +little -f test-data/phiX.fasta phiX_base
737 bowtie -q -X 1000 +ff -p 4 -S +sam-nohead phiX_base -1 test-data/bowtie_in5.fastqsanger -2 test-data/bowtie_in6.fastqsanger > bowtie_out10_u.sam
738 sort bowtie_out10_u.sam > bowtie_out10.sam
739 -p is the number of threads. You need to replace the + with 2 dashes.
740 chrM_base is the index files' location/base name.
741 -->
742 <param name="genomeSource" value="history" />
743 <param name="ownFile" value="phiX.fasta" />
744 <param name="indexSettings" value="indexFull" />
745 <param name="autoB" value="auto" />
746 <param name="nodc" value="dc" />
747 <param name="noref" value="ref" />
748 <param name="offrate" value="5" />
749 <param name="ftab" value="10" />
750 <param name="ntoa" value="no" />
751 <param name="endian" value="little" />
752 <param name="seed" value="-1" />
753 <param name="sPaired" value="paired" />
754 <param name="pInput1" ftype="fastqsanger" value="bowtie_in5.fastqsanger" />
755 <param name="pInput2" ftype="fastqsanger" value="bowtie_in6.fastqsanger" />
756 <param name="pMaxInsert" value="1000" />
757 <param name="pMateOrient" value="ff" />
758 <param name="pSettingsType" value="preSet" />
759 <param name="suppressHeader" value="true" />
760 <output name="output" ftype="sam" file="bowtie_out10.sam" sort="True" />
761 </test>
762 <test>
763 <!--
764 Bowtie command:
765 bowtie-build +offrate 5 +ftabchars 10 +little -f test-data/phiX.fasta phiX_base
766 bowtie -q -X 1000 +ff -p 4 -S +sam-nohead phiX_base -1 test-data/bowtie_in5.fastqsanger -2 test-data/bowtie_in6.fastqsanger > bowtie_out10_u.sam
767 sort bowtie_out10_u.sam > bowtie_out10.sam
768 -p is the number of threads. You need to replace the + with 2 dashes.
769 chrM_base is the index files' location/base name.
770 -->
771 <param name="genomeSource" value="history" />
772 <param name="ownFile" value="phiX.fasta" />
773 <param name="indexSettings" value="indexFull" />
774 <param name="autoB" value="auto" />
775 <param name="nodc" value="dc" />
776 <param name="noref" value="ref" />
777 <param name="offrate" value="5" />
778 <param name="ftab" value="10" />
779 <param name="ntoa" value="no" />
780 <param name="endian" value="little" />
781 <param name="seed" value="-1" />
782 <param name="sPaired" value="paired" />
783 <param name="pInput1" ftype="fastqsanger" value="bowtie_in5.fastqsanger" />
784 <param name="pInput2" ftype="fastqsanger" value="bowtie_in6.fastqsanger" />
785 <param name="pMaxInsert" value="1000" />
786 <param name="pMateOrient" value="ff" />
787 <param name="pSettingsType" value="preSet" />
788 <param name="suppressHeader" value="true" />
789 <param name="save_mapping_stats" value="true" />
790 <output name="output" ftype="sam" file="bowtie_out10.sam" sort="True" />
791 <output name="mapping_stats" ftype="txt" file="bowtie_out11.txt" sort="True" />
792 </test>
793 </tests>
794
795 <help>
796
797 **What it does**
798
799 Bowtie_ is a short read aligner designed to be ultrafast and memory-efficient. It is developed by Ben Langmead and Cole Trapnell. Please cite: Langmead B, Trapnell C, Pop M, Salzberg SL. Ultrafast and memory-efficient alignment of short DNA sequences to the human genome. Genome Biology 10:R25.
800
801 .. _Bowtie: http://bowtie-bio.sourceforge.net/index.shtml
802
803 ------
804
805 **Know what you are doing**
806
807 .. class:: warningmark
808
809 There is no such thing (yet) as an automated gearshift in short read mapping. It is all like stick-shift driving in San Francisco. In other words = running this tool with default parameters will probably not give you meaningful results. A way to deal with this is to **understand** the parameters by carefully reading the `documentation`__ and experimenting. Fortunately, Galaxy makes experimenting easy.
810
811 .. __: http://bowtie-bio.sourceforge.net/index.shtml
812
813 ------
814
815 **Input formats**
816
817 Bowtie accepts files in Sanger FASTQ format. Use the FASTQ Groomer to prepare your files.
818
819 ------
820
821 **A Note on Built-in Reference Genomes**
822
823 The default variant for all genomes is "Full", defined as all primary chromosomes (or scaffolds/contigs) including mitochondrial plus associated unmapped, plasmid, and other segments. When only one version of a genome is available in this tool, it represents the default "Full" variant. Some genomes will have more than one variant available. The "Canonical Male" or sometimes simply "Canonical" variant contains the primary chromosomes for a genome. For example a human "Canonical" variant contains chr1-chr22, chrX, chrY, and chrM. The "Canonical Female" variant contains the primary chromosomes excluding chrY.
824
825 ------
826
827 **Outputs**
828
829 The output is in SAM format, and has the following columns::
830
831 Column Description
832 -------- --------------------------------------------------------
833 1 QNAME Query (pair) NAME
834 2 FLAG bitwise FLAG
835 3 RNAME Reference sequence NAME
836 4 POS 1-based leftmost POSition/coordinate of clipped sequence
837 5 MAPQ MAPping Quality (Phred-scaled)
838 6 CIGAR extended CIGAR string
839 7 MRNM Mate Reference sequence NaMe ('=' if same as RNAME)
840 8 MPOS 1-based Mate POSition
841 9 ISIZE Inferred insert SIZE
842 10 SEQ query SEQuence on the same strand as the reference
843 11 QUAL query QUALity (ASCII-33 gives the Phred base quality)
844 12 OPT variable OPTional fields in the format TAG:VTYPE:VALUE
845
846 The flags are as follows::
847
848 Flag Description
849 ------ -------------------------------------
850 0x0001 the read is paired in sequencing
851 0x0002 the read is mapped in a proper pair
852 0x0004 the query sequence itself is unmapped
853 0x0008 the mate is unmapped
854 0x0010 strand of the query (1 for reverse)
855 0x0020 strand of the mate
856 0x0040 the read is the first read in a pair
857 0x0080 the read is the second read in a pair
858 0x0100 the alignment is not primary
859
860 It looks like this (scroll sideways to see the entire example)::
861
862 QNAME FLAG RNAME POS MAPQ CIAGR MRNM MPOS ISIZE SEQ QUAL OPT
863 HWI-EAS91_1_30788AAXX:1:1:1761:343 4 * 0 0 * * 0 0 AAAAAAANNAAAAAAAAAAAAAAAAAAAAAAAAAAACNNANNGAGTNGNNNNNNNGCTTCCCACAGNNCTGG hhhhhhh;;hhhhhhhhhhh^hOhhhhghhhfhhhgh;;h;;hhhh;h;;;;;;;hhhhhhghhhh;;Phhh
864 HWI-EAS91_1_30788AAXX:1:1:1578:331 4 * 0 0 * * 0 0 GTATAGANNAATAAGAAAAAAAAAAATGAAGACTTTCNNANNTCTGNANNNNNNNTCTTTTTTCAGNNGTAG hhhhhhh;;hhhhhhhhhhhhhhhhhhhhhhhhhhhh;;h;;hhhh;h;;;;;;;hhhhhhhhhhh;;hhVh
865
866 -------
867
868 **Bowtie settings**
869
870 All of the options have a default value. You can change any of them. Most of the options in Bowtie have been implemented here.
871
872 ------
873
874 **Bowtie parameter list**
875
876 This is an exhaustive list of Bowtie options:
877
878 For indexing (bowtie-build)::
879
880 -a No auto behavior. Disable the default behavior where bowtie automatically
881 selects values for --bmax/--bmaxdivn/--dcv/--packed parameters according
882 to the memory available. [off]
883 --packed Packing. Use a packed representation for DNA strings. [auto]
884 --bmax INT Suffix maximum. The maximum number of suffixes allowed in a block. [auto]
885 --bmaxdivn INT Suffix maximum fraction. The maximum number of suffixes allowed in a block
886 expressed as a fraction of the length of the reference. [4]
887 --dcv INT Difference-cover sample. Use INT as the period for the difference-cover
888 sample. [1024]
889 --nodc INT No difference-cover sample. Disable the difference-cover sample. [off]
890 -r No reference indexes. Do not build the NAME.3.ebwt and NAME.4.ebwt portions
891 of the index. Used only for paired-end alignment. [off]
892 -o Offrate. How many Burrows-Wheeler rows get marked by the indexer. The
893 indexer will mark every 2^INT rows. The marked rows correspond to rows on
894 the genome. [5]
895 -t INT The ftab lookup table used to calculate an initial Burrows-Wheeler range
896 with respect to the first INT characters of the query. Ftab size is 4^(INT+1)
897 bytes. [10]
898 --ntoa N conversion. Convert Ns to As before building the index. Otherwise, Ns are
899 simply excluded from the index and Bowtie will not find alignments that
900 overlap them. [off]
901 --big Endianness. Endianness to use when serializing integers to the index file. [off]
902 --little Endianness. [--little]
903 --seed INT Random seed. Use INT as the seed for the pseudo-random number generator. [off]
904
905 For aligning (bowtie)::
906
907 -s INT Skip. Do not align the first INT reads or pairs in the input. [off]
908 -u INT Align limit. Only align the first INT reads/pairs from the input. [no limit]
909 -5 INT High-quality trim. Trim INT bases from the high-quality (left) end of each
910 read before alignment. [0]
911 -3 INT Low-quality trim. Trim INT bases from the low-quality (right) end of each
912 read before alignment. [0]
913 -n INT Mismatch seed. Maximum number of mismatches permitted in the seed (defined
914 with seed length option). Can be 0, 1, 2, or 3. [2]
915 -e INT Mismatch quality. Maximum permitted total of quality values at mismatched
916 read positions. Bowtie rounds quality values to the nearest 10 and saturates
917 at 30. [70]
918 -l INT Seed length. The number of bases on the high-quality end of the read to
919 which the -n ceiling applies. Must be at least 5. [28]
920 --nomaqround Suppress Maq rounding. Values are internally rounded to the nearest 10 and
921 saturate at 30. This options turns off that rounding. [off]
922 -v INT Maq- or SOAP-like alignment policy. This option turns off the default
923 Maq-like alignment policy in favor of a SOAP-like one. End-to-end alignments
924 with at most INT mismatches. [off]
925 -I INT Minimum insert. The minimum insert size for valid paired-end alignments.
926 Does checking on untrimmed reads if -5 or -3 is used. [0]
927 -X INT Maximum insert. The maximum insert size for valid paired-end alignments.
928 Does checking on untrimmed reads if -5 or -3 is used. [250]
929 --fr Mate orientation. The upstream/downstream mate orientations for a valid
930 paired-end alignment against the forward reference strand. [--fr]
931 --rf Mate orientation. [off]
932 --ff Mate orientation. [off]
933 --pairtries INT Maximum alignment attempts for paired-end data. [100]
934 --nofw No forward aligning. Choosing this option means that Bowtie will not attempt
935 to align against the forward reference strand. [off]
936 --norc No reverse-complement aligning. Setting this will mean that Bowtie will not
937 attempt to align against the reverse-complement reference strand. [off]
938 --un FILENAME Write all reads that could not be aligned to file [off]
939 --max FILENAME Write all reads with a number of valid alignments exceeding the limit
940 set with the -m option to file [off]
941 --maxbts INT Maximum backtracks. The maximum number of backtracks permitted when aligning
942 a read in -n 2 or -n 3 mode. [125 without --best] [800 with --best]
943 -y Try hard. Try as hard as possible to find valid alignments when they exist,
944 including paired-end alignments. [off]
945 --chunkmbs INT Thread memory. The number of megabytes of memory a given thread is given to
946 store path descriptors in --best mode. [32]
947 -k INT Valid alignments. The number of valid alignments per read or pair. [off]
948 -a All valid alignments. Choosing this means that all valid alignments per read
949 or pair will be reported. [off]
950 -m INT Suppress alignments. Suppress all alignments for a particular read or pair
951 if more than INT reportable alignments exist for it. [no limit]
952 --best Best mode. Make Bowtie guarantee that reported singleton alignments are
953 "best" in terms of stratum (the number of mismatches) and quality values at
954 mismatched position. [off]
955 --strata Best strata. When running in best mode, report alignments that fall into the
956 best stratum if there are ones falling into more than one. [off]
957 -o INT Offrate override. Override the offrate of the index with INT. Some row
958 markings are discarded when index read into memory. INT must be greater than
959 the value used to build the index (default: 5). [off]
960 --seed INT Random seed. Use INT as the seed for the pseudo-random number generator. [off]
961 --snpphred INT Use INT as the SNP penalty for decoding colorspace alignments. True ratio of
962 SNPs per base in the subject genome. [see --snpfrac]
963 --snpfrac DEC Use DEC as the estimated ratio of SNPs per base when decoding colorspace
964 alignments. [0.001]
965 --col-keepends Keep the extreme-end nucleotides and qualities when decoding colorspace
966 alignments. [off]
967
968 </help>
969 <citations>
970 <citation type="doi">10.1186/gb-2009-10-3-r25</citation>
971 </citations>
972 </tool>