comparison trim_galore_wrapper.xml @ 1:898db63d2e84 draft

upgrade to new version
author bgruening
date Wed, 17 Jul 2013 15:05:43 -0400
parents 3c1664caa8e3
children 9109c2c3be1e
comparison
equal deleted inserted replaced
0:3c1664caa8e3 1:898db63d2e84
1 <tool id="trim_galore" name="Trim Galore" version="0.2.4.1"> 1 <tool id="trim_galore" name="Trim Galore" version="0.2.8">
2 <!-- Wrapper compatible with Trim Galore version 0.2.4.0 --> 2 <!-- Wrapper compatible with Trim Galore version 0.2.8 -->
3 <description>adaptive quality and adapter trimmer</description> 3 <description>adaptive quality and adapter trimmer</description>
4 <version_command interpreter="perl">trim_galore --version</version_command> 4 <version_command interpreter="perl">trim_galore --version</version_command>
5 <requirements> 5 <requirements>
6 <requirement type="package" version="1.1">cutadapt</requirement> 6 <requirement type="package" version="1.1">cutadapt</requirement>
7 <requirement type="package" version="0.10.1">fastqc</requirement> 7 <requirement type="package" version="0.10.1">fastqc</requirement>
8 </requirements> 8 </requirements>
9 <command interpreter="perl"> 9 <command interpreter="perl">
10 #from glob import glob 10 #from glob import glob
11 #import tempfile, os 11 #import tempfile, os
12 12
13 ##
14 ## Creating a temporary directory where trim_galore will store all result files
15 ##
16
17 #set $temp_dir = os.path.abspath(tempfile.mkdtemp())
18
19
20 ## trim_galore removes .fastq and .fq file extensions of input files.
21 ## That is essential if Galaxy provides links to files (these can have real extensions), but that behaviour is causing an inconsitency in output filenaming.
22 ## Fix: link every file to $TMP without file extension
23
24 #if $singlePaired.sPaired == "single":
25 #set $input_singles_tmp_handle = tempfile.NamedTemporaryFile( dir=$temp_dir )
26 #set $input_singles_tmp = $input_singles_tmp_handle.name
27 #silent $input_singles_tmp_handle.close()
28 #silent os.system("ln -s %s %s" % (str($singlePaired.input_singles), $input_singles_tmp))
29 #else:
30 #set $input_mate1_tmp_handle = tempfile.NamedTemporaryFile( dir=$temp_dir )
31 #set $input_mate2_tmp_handle = tempfile.NamedTemporaryFile( dir=$temp_dir )
32
33 #set $input_mate1_tmp = $input_mate1_tmp_handle.name
34 #silent $input_mate1_tmp_handle.close()
35
36 #set $input_mate2_tmp = $input_mate2_tmp_handle.name
37 #silent $input_mate2_tmp_handle.close()
38
39 #silent os.system("ln -s %s %s" % (str($singlePaired.input_mate1), $input_mate1_tmp))
40 #silent os.system("ln -s %s %s" % (str($singlePaired.input_mate2), $input_mate2_tmp))
41 #end if
42
13 trim_galore 43 trim_galore
14 44
15 ## 45 ##
16 ## Input parameters 46 ## Input parameters
17 ## 47 ##
33 -e $params.error_rate 63 -e $params.error_rate
34 64
35 ## default 20 65 ## default 20
36 --length $params.min_length 66 --length $params.min_length
37 67
68 #if int($params.clip_R1) > 0:
69 --clip_R1 $params.clip_R1
70 #end if
71
72 #if int($params.clip_R2) > 0:
73 --clip_R2 $params.clip_R2
74 #end if
75
38 #if $params.retain_unpaired.settingsType == "retain_unpaired_output": 76 #if $params.retain_unpaired.settingsType == "retain_unpaired_output":
39 --retain_unpaired 77 --retain_unpaired
40 --length_1 $params.retain_unpaired.length_1 78 --length_1 $params.retain_unpaired.length_1
41 --length_2 $params.retain_unpaired.length_2 79 --length_2 $params.retain_unpaired.length_2
42 #end if 80 #end if
52 $rrbs.rrbs 90 $rrbs.rrbs
53 $rrbs.non_directional 91 $rrbs.non_directional
54 92
55 #end if 93 #end if
56 94
57 ##
58 ## Creating a temporary directory where trim_galore will store all result files
59 ##
60
61 #set $temp_dir = os.path.abspath(tempfile.mkdtemp())
62
63 --output_dir $temp_dir 95 --output_dir $temp_dir
64 --suppress_warn 96 --suppress_warn
65 97
66 98
67 #if $singlePaired.sPaired == "single": 99 #if $singlePaired.sPaired == "single":
77 --no_report_file 109 --no_report_file
78 #end if 110 #end if
79 #end if 111 #end if
80 112
81 ## input sequence 113 ## input sequence
82 $singlePaired.input_singles 114 $input_singles_tmp
83 #else: 115 #else:
84 --paired 116 --paired
85 #if $singlePaired.input_mate1.ext == "fastqillumina": 117 #if $singlePaired.input_mate1.ext == "fastqillumina":
86 --phred64 118 --phred64
87 #elif $singlePaired.input_mate1.ext == "fastqsanger": 119 #elif $singlePaired.input_mate1.ext == "fastqsanger":
98 --no_report_file 130 --no_report_file
99 #end if 131 #end if
100 #end if 132 #end if
101 133
102 ## input sequences 134 ## input sequences
103 $singlePaired.input_mate1 135 $input_mate1_tmp
104 $singlePaired.input_mate2 136 $input_mate2_tmp
105 137
106 #end if 138 #end if
107 139
108 &amp;&amp; 140 &amp;&amp;
109 141
111 ## Trim Galore! run is finished. Move the result files to the proper place 143 ## Trim Galore! run is finished. Move the result files to the proper place
112 ## 144 ##
113 145
114 146
115 #if $singlePaired.sPaired == "single": 147 #if $singlePaired.sPaired == "single":
116 #set $single_end_path = os.path.join($temp_dir, os.path.basename(str($singlePaired.input_singles)) + '_trimmed.fq') 148 #set $single_end_path = os.path.join($temp_dir, os.path.basename(str($input_singles_tmp)) + '_trimmed.fq')
117 mv $single_end_path $trimmed_reads_single; 149 mv $single_end_path $trimmed_reads_single;
118 150
119 #if $params.settingsType == "custom": 151 #if $params.settingsType == "custom":
120 #if $params.report: 152 #if $params.report:
121 #set $report_path = os.path.join($temp_dir, os.path.basename(str($singlePaired.input_singles)) + '_trimming_report.txt') 153 #set $report_path = os.path.join($temp_dir, os.path.basename(str($input_singles_tmp)) + '_trimming_report.txt')
122 mv $report_path $report_file; 154 mv $report_path $report_file;
123 #end if 155 #end if
124 #end if 156 #end if
125 157
126 #else: 158 #else:
127 #set $paired_end_path_1 = os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate1)) + '_val_1.fq') 159 #set $paired_end_path_1 = os.path.join($temp_dir, os.path.basename(str($input_mate1_tmp)) + '_val_1.fq')
128 #set $paired_end_path_2 = os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate2)) + '_val_2.fq') 160 #set $paired_end_path_2 = os.path.join($temp_dir, os.path.basename(str($input_mate2_tmp)) + '_val_2.fq')
129 mv $paired_end_path_1 $trimmed_reads_pair1; 161 mv $paired_end_path_1 $trimmed_reads_pair1;
130 mv $paired_end_path_2 $trimmed_reads_pair2; 162 mv $paired_end_path_2 $trimmed_reads_pair2;
131 163
132 #if $params.settingsType == "custom": 164 #if $params.settingsType == "custom":
133 #if $params.retain_unpaired.settingsType == "retain_unpaired_output": 165 #if $params.retain_unpaired.settingsType == "retain_unpaired_output":
134 #set $unpaired_path_1 = os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate1)) + '_unpaired_1.fq') 166 #set $unpaired_path_1 = os.path.join($temp_dir, os.path.basename(str($input_mate1_tmp)) + '_unpaired_1.fq')
135 #set $unpaired_path_2 = os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate2)) + '_unpaired_2.fq') 167 #set $unpaired_path_2 = os.path.join($temp_dir, os.path.basename(str($input_mate2_tmp)) + '_unpaired_2.fq')
136 mv $unpaired_path_1 $unpaired_reads_1; 168 mv $unpaired_path_1 $unpaired_reads_1;
137 mv $unpaired_path_2 $unpaired_reads_2; 169 mv $unpaired_path_2 $unpaired_reads_2;
138 #end if 170 #end if
139 171
140 #if $params.report: 172 #if $params.report:
141 #set $report_path = os.path.join($temp_dir, os.path.basename(str($singlePaired.input_mate1)) + '_trimming_report.txt') 173 #set $report_path = os.path.join($temp_dir, os.path.basename(str($input_mate1_tmp)) + '_trimming_report.txt')
142 mv $report_path $report_file; 174 mv $report_path $report_file;
143 #end if 175 #end if
144 176
145 #end if 177 #end if
146 #end if 178 #end if
147 179
148 ## delete the temp_dir 180 ## delete the temp_dir
149 rm -rf $temp_dir 181 ##rm -rf $temp_dir
150 182
151 </command> 183 </command>
152 <inputs> 184 <inputs>
153 185
154 <!-- Input Parameters --> 186 <!-- Input Parameters -->
186 </param> 218 </param>
187 <param name="stringency" type="integer" value="1" label="Overlap with adapter sequence required to trim a sequence" /> 219 <param name="stringency" type="integer" value="1" label="Overlap with adapter sequence required to trim a sequence" />
188 <param name="error_rate" type="float" value="0.1" label="Maximum allowed error rate" /> 220 <param name="error_rate" type="float" value="0.1" label="Maximum allowed error rate" />
189 <param name="min_length" type="integer" value="20" label="Discard reads that became shorter than length INT" /> 221 <param name="min_length" type="integer" value="20" label="Discard reads that became shorter than length INT" />
190 222
223 <param name="clip_R1" type="integer" value="0" label="nstructs Trim Galore to remove INT bp from the 5' end of read 1" />
224 <param name="clip_R2" type="integer" value="0" label="nstructs Trim Galore to remove INT bp from the 5' end of read 2" />
225
191 <param name="report" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Generate a report file" help="" /> 226 <param name="report" type="boolean" truevalue="true" falsevalue="false" checked="False" label="Generate a report file" help="" />
192 227
193 <conditional name="retain_unpaired"> 228 <conditional name="retain_unpaired">
194 <param name="settingsType" type="select" label="specify if you would like to retain unpaired reads"> 229 <param name="settingsType" type="select" label="specify if you would like to retain unpaired reads">
195 <option value="no_output">Do not output unpaired reads</option> 230 <option value="no_output">Do not output unpaired reads</option>
304 339
305 It is developed by Krueger F at the Babraham Institute. 340 It is developed by Krueger F at the Babraham Institute.
306 341
307 ------ 342 ------
308 343
309 **Know what you are doing**
310
311 .. class:: warningmark
312
313 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.
314
315 .. __: http://www.bioinformatics.babraham.ac.uk/projects/bismark/
316
317 ------
318
319 **Input formats**
320
321 Bismark accepts files in either Sanger FASTQ format (galaxy type *fastqsanger*), Illumina FASTQ format (galaxy type *fastqillumina*) or FASTA format (galaxy type *fasta*). Use the FASTQ Groomer to prepare your files.
322
323 ------
324
325 **A Note on Built-in Reference Genomes**
326
327 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.
328
329 ------
330
331 The final output of Bismark is in SAM format by default.
332
333 **Outputs**
334
335 The output is in SAM format, and has the following columns::
336
337 Column Description
338 -------- --------------------------------------------------------
339 1 QNAME seq-ID
340 2 FLAG this flag tries to take the strand a bisulfite read
341 originated from into account
342 (this is different from ordinary DNA alignment flags!)
343 3 RNAME chromosome
344 4 POS start position
345 5 MAPQ always 255
346 6 CIGAR extended CIGAR string
347 7 MRNM Mate Reference sequence NaMe ('=' if same as RNAME)
348 8 MPOS 1-based Mate POSition
349 9 ISIZE Inferred insert SIZE
350 10 SEQ query SEQuence on the same strand as the reference
351 11 QUAL Phred33 scale
352 12 NM-tag edit distance to the reference)
353 13 XX-tag base-by-base mismatches to the reference.
354 This does not include indels.
355 14 XM-tag methylation call string
356 15 XR-tag read conversion state for the alignment
357 16 XG-tag genome conversion state for the alignment
358
359
360 Each read of paired-end alignments is written out in a separate line in the above format.
361
362
363 It looks like this (scroll sideways to see the entire example)::
364
365 QNAME FLAG RNAME POS MAPQ CIAGR MRNM MPOS ISIZE SEQ QUAL OPT
366 HWI-EAS91_1_30788AAXX:1:1:1761:343 4 * 0 0 * * 0 0 AAAAAAANNAAAAAAAAAAAAAAAAAAAAAAAAAAACNNANNGAGTNGNNNNNNNGCTTCCCACAGNNCTGG hhhhhhh;;hhhhhhhhhhh^hOhhhhghhhfhhhgh;;h;;hhhh;h;;;;;;;hhhhhhghhhh;;Phhh
367 HWI-EAS91_1_30788AAXX:1:1:1578:331 4 * 0 0 * * 0 0 GTATAGANNAATAAGAAAAAAAAAAATGAAGACTTTCNNANNTCTGNANNNNNNNTCTTTTTTCAGNNGTAG hhhhhhh;;hhhhhhhhhhhhhhhhhhhhhhhhhhhh;;h;;hhhh;h;;;;;;;hhhhhhhhhhh;;hhVh
368
369 -------
370
371 **Bismark settings**
372
373 All of the options have a default value. You can change any of them. If any Bismark function is missing please contact the tool author or your Galaxy admin.
374
375 ------
376
377 **Bismark parameter list**
378
379 This is an exhaustive list of Bismark options:
380
381 ------
382
383 **OPTIONS**
384
385
386 Input::
387
388 --singles A comma- or space-separated list of files containing the reads to be aligned (e.g.
389 lane1.fq,lane2.fq lane3.fq). Reads may be a mix of different lengths. Bismark will
390 produce one mapping result and one report file per input file.
391
392 -1 mates1 Comma-separated list of files containing the #1 mates (filename usually includes
393 "_1"), e.g. flyA_1.fq,flyB_1.fq). Sequences specified with this option must
394 correspond file-for-file and read-for-read with those specified in mates2.
395 Reads may be a mix of different lengths. Bismark will produce one mapping result
396 and one report file per paired-end input file pair.
397
398 -2 mates2 Comma-separated list of files containing the #2 mates (filename usually includes
399 "_2"), e.g. flyA_1.fq,flyB_1.fq). Sequences specified with this option must
400 correspond file-for-file and read-for-read with those specified in mates1.
401 Reads may be a mix of different lengths.
402
403 -q/--fastq The query input files (specified as mate1,mate2 or singles are FASTQ
404 files (usually having extension .fg or .fastq). This is the default. See also
405 --solexa-quals.
406
407 -f/--fasta The query input files (specified as mate1,mate2 or singles are FASTA
408 files (usually havin extension .fa, .mfa, .fna or similar). All quality values
409 are assumed to be 40 on the Phred scale.
410
411 -s/--skip INT Skip (i.e. do not align) the first INT reads or read pairs from the input.
412
413 -u/--upto INT Only aligns the first INT reads or read pairs from the input. Default: no limit.
414
415 --phred33-quals FASTQ qualities are ASCII chars equal to the Phred quality plus 33. Default: on.
416
417 --phred64-quals FASTQ qualities are ASCII chars equal to the Phred quality plus 64. Default: off.
418
419 --solexa-quals Convert FASTQ qualities from solexa-scaled (which can be negative) to phred-scaled
420 (which can't). The formula for conversion is:
421 phred-qual = 10 * log(1 + 10 ** (solexa-qual/10.0)) / log(10). Used with -q. This
422 is usually the right option for use with (unconverted) reads emitted by the GA
423 Pipeline versions prior to 1.3. Works only for Bowtie 1. Default: off.
424
425 --solexa1.3-quals Same as --phred64-quals. This is usually the right option for use with (unconverted)
426 reads emitted by GA Pipeline version 1.3 or later. Default: off.
427
428
429 Alignment::
430
431 -n/--seedmms INT The maximum number of mismatches permitted in the "seed", i.e. the first L base pairs
432 of the read (where L is set with -l/--seedlen). This may be 0, 1, 2 or 3 and the
433 default is 1. This option is only available for Bowtie 1 (for Bowtie 2 see -N).
434
435 -l/--seedlen The "seed length"; i.e., the number of bases of the high quality end of the read to
436 which the -n ceiling applies. The default is 28. Bowtie (and thus Bismark) is faster for
437 larger values of -l. This option is only available for Bowtie 1 (for Bowtie 2 see -L).
438
439 -e/--maqerr INT Maximum permitted total of quality values at all mismatched read positions throughout
440 the entire alignment, not just in the "seed". The default is 70. Like Maq, bowtie rounds
441 quality values to the nearest 10 and saturates at 30. This value is not relevant for
442 Bowtie 2.
443
444 --chunkmbs INT The number of megabytes of memory a given thread is given to store path descriptors in
445 --best mode. Best-first search must keep track of many paths at once to ensure it is
446 always extending the path with the lowest cumulative cost. Bowtie tries to minimize the
447 memory impact of the descriptors, but they can still grow very large in some cases. If
448 you receive an error message saying that chunk memory has been exhausted in --best mode,
449 try adjusting this parameter up to dedicate more memory to the descriptors. This value
450 is not relevant for Bowtie 2. Default: 512.
451
452 -I/--minins INT The minimum insert size for valid paired-end alignments. E.g. if -I 60 is specified and
453 a paired-end alignment consists of two 20-bp alignments in the appropriate orientation
454 with a 20-bp gap between them, that alignment is considered valid (as long as -X is also
455 satisfied). A 19-bp gap would not be valid in that case. Default: 0.
456
457 -X/--maxins INT The maximum insert size for valid paired-end alignments. E.g. if -X 100 is specified and
458 a paired-end alignment consists of two 20-bp alignments in the proper orientation with a
459 60-bp gap between them, that alignment is considered valid (as long as -I is also satisfied).
460 A 61-bp gap would not be valid in that case. Default: 500.
461
462
463
464 Output::
465
466 --non_directional The sequencing library was constructed in a non strand-specific manner, alignments to all four
467 bisulfite strands will be reported. Default: OFF.
468
469 (The current Illumina protocol for BS-Seq is directional, in which case the strands complementary
470 to the original strands are merely theoretical and should not exist in reality. Specifying directional
471 alignments (which is the default) will only run 2 alignment threads to the original top (OT)
472 or bottom (OB) strands in parallel and report these alignments. This is the recommended option
473 for sprand-specific libraries).
474
475 --sam-no-hd Suppress SAM header lines (starting with @). This might be useful when very large input files are
476 split up into several smaller files to run concurrently and the output files are to be merged.
477
478 --quiet Print nothing besides alignments.
479
480 --vanilla Performs bisulfite mapping with Bowtie 1 and prints the 'old' output (as in Bismark 0.5.X) instead
481 of SAM format output.
482
483 -un/--unmapped Write all reads that could not be aligned to a file in the output directory. Written reads will
484 appear as they did in the input, without any translation of quality values that may have
485 taken place within Bowtie or Bismark. Paired-end reads will be written to two parallel files with _1
486 and _2 inserted in their filenames, i.e. _unmapped_reads_1.txt and unmapped_reads_2.txt. Reads
487 with more than one valid alignment with the same number of lowest mismatches (ambiguous mapping)
488 are also written to _unmapped_reads.txt unless the option --ambiguous is specified as well.
489
490 --ambiguous Write all reads which produce more than one valid alignment with the same number of lowest
491 mismatches or other reads that fail to align uniquely to a file in the output directory.
492 Written reads will appear as they did in the input, without any of the translation of quality
493 values that may have taken place within Bowtie or Bismark. Paired-end reads will be written to two
494 parallel files with _1 and _2 inserted in theit filenames, i.e. _ambiguous_reads_1.txt and
495 _ambiguous_reads_2.txt. These reads are not written to the file specified with --un.
496
497 -o/--output_dir DIR Write all output files into this directory. By default the output files will be written into
498 the same folder as the input file(s). If the specified folder does not exist, Bismark will attempt
499 to create it first. The path to the output folder can be either relative or absolute.
500
501 --temp_dir DIR Write temporary files to this directory instead of into the same directory as the input files. If
502 the specified folder does not exist, Bismark will attempt to create it first. The path to the
503 temporary folder can be either relative or absolute.
504
505 ------
506
507 Bowtie 2 alignment options::
508
509 -N INT Sets the number of mismatches to allowed in a seed alignment during multiseed alignment.
510 Can be set to 0 or 1. Setting this higher makes alignment slower (often much slower)
511 but increases sensitivity. Default: 0. This option is only available for Bowtie 2 (for
512 Bowtie 1 see -n).
513
514 -L INT Sets the length of the seed substrings to align during multiseed alignment. Smaller values
515 make alignment slower but more senstive. Default: the --sensitive preset of Bowtie 2 is
516 used by default, which sets -L to 20. This option is only available for Bowtie 2 (for
517 Bowtie 1 see -l).
518
519 --ignore-quals When calculating a mismatch penalty, always consider the quality value at the mismatched
520 position to be the highest possible, regardless of the actual value. I.e. input is treated
521 as though all quality values are high. This is also the default behavior when the input
522 doesn't specify quality values (e.g. in -f mode). This option is invariable and on by default.
523
524
525 Bowtie 2 paired-end options::
526
527 --no-mixed This option disables Bowtie 2's behavior to try to find alignments for the individual mates if
528 it cannot find a concordant or discordant alignment for a pair. This option is invariable and
529 and on by default.
530
531 --no-discordant Normally, Bowtie 2 looks for discordant alignments if it cannot find any concordant alignments.
532 A discordant alignment is an alignment where both mates align uniquely, but that does not
533 satisfy the paired-end constraints (--fr/--rf/--ff, -I, -X). This option disables that behavior
534 and it is on by default.
535
536
537 Bowtie 2 effort options::
538
539 -D INT Up to INT consecutive seed extension attempts can "fail" before Bowtie 2 moves on, using
540 the alignments found so far. A seed extension "fails" if it does not yield a new best or a
541 new second-best alignment. Default: 15.
542
543 -R INT INT is the maximum number of times Bowtie 2 will "re-seed" reads with repetitive seeds.
544 When "re-seeding," Bowtie 2 simply chooses a new set of reads (same length, same number of
545 mismatches allowed) at different offsets and searches for more alignments. A read is considered
546 to have repetitive seeds if the total number of seed hits divided by the number of seeds
547 that aligned at least once is greater than 300. Default: 2.
548
549
550 Bowtie 2 Scoring options::
551
552 --score_min "func" Sets a function governing the minimum alignment score needed for an alignment to be considered
553 "valid" (i.e. good enough to report). This is a function of read length. For instance, specifying
554 L,0,-0.2 sets the minimum-score function f to f(x) = 0 + -0.2 * x, where x is the read length.
555 See also: setting function options at http://bowtie-bio.sourceforge.net/bowtie2. The default is
556 L,0,-0.2.
557
558
559 Bowtie 2 Reporting options::
560
561 --most_valid_alignments INT This used to be the Bowtie 2 parameter -M. As of Bowtie 2 version 2.0.0 beta7 the option -M is
562 deprecated. It will be removed in subsequent versions. What used to be called -M mode is still the
563 default mode, but adjusting the -M setting is deprecated. Use the -D and -R options to adjust the
564 effort expended to find valid alignments.
565
566 For reference, this used to be the old (now deprecated) description of -M:
567 Bowtie 2 searches for at most INT+1 distinct, valid alignments for each read. The search terminates when it
568 can't find more distinct valid alignments, or when it finds INT+1 distinct alignments, whichever
569 happens first. Only the best alignment is reported. Information from the other alignments is used to
570 estimate mapping quality and to set SAM optional fields, such as AS:i and XS:i. Increasing -M makes
571 Bowtie 2 slower, but increases the likelihood that it will pick the correct alignment for a read that
572 aligns many places. For reads that have more than INT+1 distinct, valid alignments, Bowtie 2 does not
573 guarantee that the alignment reported is the best possible in terms of alignment score. -M is
574 always used and its default value is set to 10.
575 344
576 </help> 345 </help>
577 </tool> 346 </tool>