comparison minimap2.xml @ 0:9b44afd426fd draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/minimap2 commit d467ba21d5a83a68e87625c9e9157b37eac03eda-dirty
author iuc
date Fri, 03 Nov 2017 16:57:51 -0400
parents
children acb6d016cabe
comparison
equal deleted inserted replaced
-1:000000000000 0:9b44afd426fd
1 <?xml version="1.0"?>
2 <tool id="minimap2" name="Map with minimap2" version="2.3" profile="17.01">
3 <description>- A fast pairwise aligner for genomic and spliced nucleotide sequences</description>
4 <requirements>
5 <requirement type="package" version="2.3">minimap2</requirement>
6 <requirement type="package" version="1.6">samtools</requirement>
7 </requirements>
8 <version_command>minimap2 --version</version_command>
9 <command>
10 <![CDATA[
11 ln -f -s '$reference_source.ref_file' reference.fa &&
12 minimap2 -a
13 -x $analysis_type_selector
14 ## indexing options
15 #if $indexing_options.k:
16 -k $indexing_options.k
17 #end if
18 #if $indexing_options.w:
19 -w $indexing_options.w
20 #end if
21 #if $indexing_options.I:
22 -I $indexing_options.I
23 #end if
24 ## Mapping options
25 #if $mapping_options.f:
26 -f $mapping_options.f
27 #end if
28 #if $mapping_options.g:
29 -g $mapping_options.g
30 #end if
31 #if $mapping_options.G:
32 -G $mapping_options.G
33 #end if
34 #if $mapping_options.F:
35 -F $mapping_options.F
36 #end if
37 #if $mapping_options.r:
38 -r $mapping_options.r
39 #end if
40 #if $mapping_options.n:
41 -n $mapping_options.n
42 #end if
43 #if $mapping_options.m:
44 -m $mapping_options.m
45 #end if
46 $mapping_options.X
47 #if $mapping_options.p:
48 -p $mapping_options.p
49 #end if
50 #if $mapping_options.N:
51 -N $mapping_options.N
52 #end if
53 ## Alignment options
54 #if $alignment_options.A:
55 -A $alignment_options.A
56 #end if
57 #if $alignment_options.B:
58 -B $alignment_options.B
59 #end if
60 #if $alignment_options.O:
61 -O $alignment_options.O
62 #end if
63 #if $alignment_options.E:
64 -E $alignment_options.E
65 #end if
66 #if $alignment_options.z:
67 $alignment_options.z
68 #end if
69 #if $alignment_options.s:
70 -s $alignment_options.s
71 #end if
72 #if $alignment_options.u:
73 -u $alignment_options.u
74 #end if
75 ## Output options
76 $io_options.Q
77 $io_options.L
78 #if $io_options.cs:
79 --cs $io_options.cs
80 #end if
81 #if $io_options.K:
82 -K $io_options.K
83 #end if
84 -t \${GALAXY_SLOTS:-4}
85 reference.fa
86 #if $fastq_input.fastq_input_selector in ['single', 'paired_iv']:
87 '$fastq_input.fastq_input1'
88 #else if $fastq_input.fastq_input_selector == 'paired':
89 '$fastq_input.fastq_input1' '$fastq_input.fastq_input2'
90 #else if $fastq_input.fastq_input_selector == 'paired_collection':
91 '$fastq_input.fastq_input1.forward' '$fastq_input.fastq_input2.reverse'
92 #end if
93 | samtools sort
94 -@\${GALAXY_SLOTS:-2}
95 -O BAM
96 #if $io_options.output_format == 'CRAM':
97 -l 0| samtools view -T reference.fa -C
98 #end if
99 > '$alignment_output'
100 ]]>
101 </command>
102 <inputs>
103 <conditional name="reference_source">
104 <param name="reference_source_selector" type="select" label="Will you select a reference genome from your history or use a built-in index?" help="Built-ins were indexed using default options. See `Indexes` section of help below">
105 <option value="cached">Use a built-in genome index</option>
106 <option value="history">Use a genome from history and build index</option>
107 </param>
108 <when value="cached">
109 <param name="ref_file" type="select" label="Using reference genome" help="Select genome from the list">
110 <options from_data_table="all_fasta">
111 <filter type="sort_by" column="2" />
112 <validator type="no_options" message="No reference genomes are available" />
113 </options>
114 <validator type="no_options" message="A built-in reference genome is not available for the build associated with the selected input file"/>
115 </param>
116 </when>
117 <when value="history">
118 <param name="ref_file" type="data" format="fasta" label="Use the following dataset as the reference sequence" help="You can upload a FASTA sequence to the history and use it as reference" />
119 </when>
120 </conditional>
121 <section name="indexing_options" title="Indexing options">
122 <!-- Homopolymer setting seems to not properly overwrite sr preset
123 <param argument="-H" name="H" type="boolean" optional="true" truevalue="-H" falsevalue="" label="Use homopolymer-compressed k-mer ?"/>
124 -->
125 <param argument="-k" type="integer" min="4" max="28" optional="true" label="k-mer size" help=""/>
126 <param argument="-w" type="integer" min="1" optional="true" label="minimizer window size" help=""/>
127 <param argument="-I" type="integer" min="1" optional="true" label="split index for every N input gigabases" help=""/>
128 </section>
129 <!-- start unchanged copy from bwa-mem -->
130 <conditional name="fastq_input">
131 <param name="fastq_input_selector" type="select" label="Single or Paired-end reads" help="Select between paired and single end data">
132 <option value="single">Single</option>
133 <option value="paired">Paired</option>
134 <option value="paired_collection">Paired Collection</option>
135 <option value="paired_iv">Paired Interleaved</option>
136 </param>
137 <when value="paired">
138 <param name="fastq_input1" type="data" format="fastqsanger,fastqsanger.gz,fasta" label="Select first set of reads" help="Specify dataset with forward reads"/>
139 <param name="fastq_input2" type="data" format="fastqsanger,fastqsanger.gz,fasta" label="Select second set of reads" help="Specify dataset with reverse reads"/>
140 </when>
141 <when value="single">
142 <param name="fastq_input1" type="data" format="fastqsanger,fastqsanger.gz,fasta" label="Select fastq dataset" help="Specify dataset with single reads"/>
143 </when>
144 <when value="paired_collection">
145 <param name="fastq_input1" format="fastqsanger,fastqsanger.gz,fasta" type="data_collection" collection_type="paired" label="Select a paired collection" help="See help section for an explanation of dataset collections"/>
146 </when>
147 <when value="paired_iv">
148 <param name="fastq_input1" type="data" format="fastqsanger,fastqsanger.gz,fasta" label="Select fastq dataset" help="Specify dataset with interleaved reads"/>
149 </when>
150 </conditional>
151 <!-- end unchanged copy from bwa-mem -->
152 <param name="analysis_type_selector" type="select" label="Select analysis mode (sets default)">
153 <option value="map-pb">-Hk19 (PacBio vs reference mapping)</option>
154 <option value="map-ont">-k15 (Oxford Nanopore vs reference mapping)</option>
155 <option value="asm5">-k19 -w19 -A1 -B19 -O39,81 -E3,1 -s200 -z200 (asm to ref mapping; break at 5% div.)</option>
156 <option value="asm10">-k19 -w19 -A1 -B9 -O16,41 -E2,1 -s200 -z200 (asm to ref mapping; break at 10% div.)</option>
157 <option value="ava-pb">-Hk19 -w5 -Xp0 -m100 -g10000 --max-chain-skip 25 (PacBio read overlap)</option>
158 <option value="ava-ont">-k15 -w5 -Xp0 -m100 -g10000 --max-chain-skip 25 (ONT read overlap)</option>
159 <option value="splice">long-read spliced alignment</option>
160 <option value="sr">short single-end reads without splicing</option>
161 </param>
162 <section name="mapping_options" title="Set advanced mapping options" help="Sets -f, -g, -G, -F, -r, -n, -m, -X, -p, and -N options." expanded="False">
163 <param argument="-f" type="float" value="" optional="true" label="filter out top FLOAT fraction of repetitive minimizers" help="default=0.0002"/>
164 <param argument="-g" type="integer" value="" optional="true" label="stop chain enlongation if there are no minimizers in INT-bp" help="default=5000"/>
165 <param argument="-G" type="integer" value="" optional="true" label="max intron length in thousand (effective with -xsplice; changing -r)" help="default=200"/>
166 <param argument="-F" type="integer" value="" optional="true" label="max fragment length (effective with -xsr or in the fragment mode)" help="default=800" />
167 <param argument="-r" type="integer" value="" optional="true" label="bandwidth used in chaining and DP-based alignment" help="default=500" />
168 <param argument="-n" type="integer" value="" optional="true" label="minimal number of minimizers on a chain" help="default=3"/>
169 <param argument="-m" type="integer" value="" optional="true" label="minimal chaining score (matching bases minus log gap penalty)" help="default=40"/>
170 <param argument="-X" type="boolean" truevalue="-X" falsevalue="" optional="true" label="skip self and dual mappings (for the all-vs-all mode)"/>
171 <param argument="-p" type="float" value="" max="1" optional="true" label="min secondary-to-primary score ratio" help="default=0.8"/>
172 <param argument="-N" type="integer" min="0" optional="true" label="retain at most INT secondary alignments" help="default=5"/>
173 </section>
174 <section name="alignment_options" title="Set advanced alignment options" help="Sets -Q, -L, -R, -c, --cs, and -K options." expanded="False">
175 <param argument="-A" type="integer" optional="true" label="Score for a sequence match" help="default=2"/>
176 <param argument="-B" type="integer" optional="true" label="Penalty for a mismatch" help="-B; default=4" />
177 <param argument="-O" type="text" optional="true" label="Gap open penalties for deletions and insertions" help="-O; default=4,24">
178 <sanitizer invalid_char="">
179 <valid initial="string.digits"><add value=","/> </valid>
180 </sanitizer>
181 </param>
182 <param argument="-E" type="text" optional="true" label="Gap extension penalties; a gap of size k cost &#39;-O + -E*k&#39;. If two numbers are specified, the first is the penalty of extending a deletion and the second for extending an insertion" help="-E; default=2,1">
183 <sanitizer invalid_char="">
184 <valid initial="string.digits"><add value=","/> </valid>
185 </sanitizer>
186 </param>
187 <param argument="-z" type="integer" optional="true" label="Z-drop score" help="default=400"/>
188 <param argument="-s" type="integer" optional="true" label="minimal peak DP alignment score" help="default=80"/>
189 <param argument="-u" type="select" optional="true" label="how to find GT-AG">
190 <option value="n">don't match GT-AG</option>
191 <option value="f">transcript strand</option>
192 <option value="b">both strands</option>
193 </param>
194 </section>
195 <section name="io_options" title="Set advanced output options" help="Sets -T, -h, -a, -C, -V, -Y, and -M options." expanded="False">
196 <param name="output_format" type="select" label="Produce BAM or CRAM file?">
197 <option value="BAM">BAM</option>
198 <option value="CRAM">CRAM</option>
199 </param>
200 <param argument="-Q" type="boolean" truevalue="-Q" falsevalue="" optional="true" label="don't output base quality"/>
201 <param argument="-L" type="boolean" truevalue="-L" falsevalue="" optional="true" label="write CIGAR with >65535 ops to the CG tag" help="Useful for very long reads in SAM/BAM format"/>
202 <param argument="-K" type="integer" optional="true" label="minibatch size for mapping (in megabyte)" help="default=500M"/>
203 <param argument="--cs" type="select" optional="true" label="Output cs tag?" help="The cs tag is a more compact standalone representation of the MD tag, see help below.">
204 <option value="none">no</option>
205 <option value="short">short</option>
206 <option value="long">long</option>
207 </param>
208 </section>
209 </inputs>
210 <outputs>
211 <data format="bam" name="alignment_output" label="${tool.name} on ${on_string} (mapped reads in ${io_options.output_format} format)">
212 <actions>
213 <conditional name="reference_source.reference_source_selector">
214 <when value="cached">
215 <action type="metadata" name="dbkey">
216 <option type="from_data_table" name="all_fasta" column="1" offset="0">
217 <filter type="param_value" column="0" value="#" compare="startswith" keep="False"/>
218 <filter type="param_value" ref="reference_source.ref_file" column="0"/>
219 </option>
220 </action>
221 </when>
222 <when value="history">
223 <action type="metadata" name="dbkey">
224 <option type="from_param" name="reference_source.ref_file" param_attribute="dbkey" />
225 </action>
226 </when>
227 </conditional>
228 </actions>
229 <change_format>
230 <when input="io_options.output_format" value="CRAM" format="cram" />
231 </change_format>
232 </data>
233 </outputs>
234 <tests>
235 <test>
236 <param name="reference_source_selector" value="history" />
237 <param name="ref_file" ftype="fasta" value="bwa-mem-mt-genome.fa"/>
238 <param name="fastq_input_selector" value="paired"/>
239 <param name="fastq_input1" ftype="fastqsanger" value="bwa-mem-fastq1.fq"/>
240 <param name="fastq_input2" ftype="fastqsanger" value="bwa-mem-fastq2.fq"/>
241 <param name="analysis_type_selector" value="sr"/>
242 <output name="alignment_output" ftype="bam" file="bwa-mem-test1.bam" lines_diff="2" />
243 </test>
244 <test>
245 <param name="reference_source_selector" value="history" />
246 <param name="ref_file" ftype="fasta" value="bwa-mem-mt-genome.fa"/>
247 <param name="fastq_input_selector" value="single"/>
248 <param name="fastq_input1" ftype="fastqsanger" value="bwa-mem-fasta1.fa"/>
249 <param name="analysis_type_selector" value="sr"/>
250 <output name="alignment_output" ftype="bam" file="bwa-mem-test1-fasta.bam" lines_diff="2" />
251 </test>
252 <test>
253 <param name="reference_source_selector" value="history" />
254 <param name="ref_file" ftype="fasta" value="bwa-mem-mt-genome.fa"/>
255 <param name="fastq_input_selector" value="paired"/>
256 <param name="fastq_input1" ftype="fastqsanger.gz" value="bwa-mem-fastq1.fq.gz"/>
257 <param name="fastq_input2" ftype="fastqsanger" value="bwa-mem-fastq2.fq"/>
258 <param name="analysis_type_selector" value="sr"/>
259 <output name="alignment_output" ftype="bam" file="bwa-mem-test1.bam" lines_diff="2" />
260 </test>
261 <test>
262 <param name="reference_source_selector" value="history" />
263 <param name="ref_file" ftype="fasta" value="bwa-mem-mt-genome.fa"/>
264 <param name="fastq_input_selector" value="paired"/>
265 <param name="fastq_input1" ftype="fastqsanger" value="bwa-mem-fastq1.fq"/>
266 <param name="fastq_input2" ftype="fastqsanger" value="bwa-mem-fastq2.fq"/>
267 <param name="analysis_type_selector" value="sr"/>
268 <output name="alignment_output" ftype="bam" file="bwa-mem-test2.bam" lines_diff="2" />
269 </test>
270 </tests>
271 <help>
272
273 Users’ Guide
274 ------------
275
276 Minimap2 is a versatile sequence alignment program that aligns DNA or
277 mRNA sequences against a large reference database. Typical use cases
278 include: (1) mapping PacBio or Oxford Nanopore genomic reads to the
279 human genome; (2) finding overlaps between long reads with error rate up
280 to ~15%; (3) splice-aware alignment of PacBio Iso-Seq or Nanopore cDNA
281 or Direct RNA reads against a reference genome; (4) aligning Illumina
282 single- or paired-end reads; (5) assembly-to-assembly alignment; (6)
283 full-genome alignment between two closely related species with
284 divergence below ~15%.
285
286 For ~10kb noisy reads sequences, minimap2 is tens of times faster than
287 mainstream long-read mappers such as BLASR, BWA-MEM, NGMLR and GMAP. It
288 is more accurate on simulated long reads and produces biologically
289 meaningful alignment ready for downstream analyses. For >100bp Illumina
290 short reads, minimap2 is three times as fast as BWA-MEM and Bowtie2, and
291 as accurate on simulated data. Detailed evaluations are available from
292 the `minimap2 preprint`.
293
294 General usage
295 ~~~~~~~~~~~~~
296
297 Minimap2 seamlessly works with gzip’d FASTA and FASTQ formats as input.
298 You don’t need to convert between FASTA and FASTQ or decompress gzip’d
299 files first.
300
301 For the human reference genome, minimap2 takes a few minutes to generate
302 a minimizer index for the reference before mapping. To reduce indexing
303 time, you can optionally save the index with option **-d** and replace
304 the reference sequence file with the index file on the minimap2 command
305 line:
306
307 ***Importantly***, it should be noted that once you build the index,
308 indexing parameters such as **-k**, **-w**, **-H** and **-I** can’t be
309 changed during mapping. If you are running minimap2 for different data
310 types, you will probably need to keep multiple indexes generated with
311 different parameters. This makes minimap2 different from BWA which
312 always uses the same index regardless of query data types.
313
314 Use cases
315 ~~~~~~~~~
316
317 Minimap2 uses the same base algorithm for all applications. However, due
318 to the different data types it supports (e.g. short vs long reads; DNA
319 vs mRNA reads), minimap2 needs to be tuned for optimal performance and
320 accuracy. It is usually recommended to choose a preset with option
321 **-x**, which sets multiple parameters at the same time. The default
322 setting is the same as ``map-ont``.
323
324 Map long noisy genomic reads
325 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
326
327 The difference between ``map-pb`` and ``map-ont`` is that ``map-pb``
328 uses homopolymer-compressed (HPC) minimizers as seeds, while ``map-ont``
329 uses ordinary minimizers as seeds. Emperical evaluation suggests HPC
330 minimizers improve performance and sensitivity when aligning PacBio
331 reads, but hurt when aligning Nanopore reads.
332
333 Map long mRNA/cDNA reads
334 ^^^^^^^^^^^^^^^^^^^^^^^^
335
336
337 There are different long-read RNA-seq technologies, including
338 tranditional full-length cDNA, EST, PacBio Iso-seq, Nanopore 2D cDNA-seq
339 and Direct RNA-seq. They produce data of varying quality and properties.
340 By default, ``-x splice`` assumes the read orientation relative to the
341 transcript strand is unknown. It tries two rounds of alignment to infer
342 the orientation and write the strand to the ``ts`` SAM/PAF tag if
343 possible. For Iso-seq, Direct RNA-seq and tranditional full-length
344 cDNAs, it would be desired to apply ``-u f`` to force minimap2 to
345 consider the forward transcript strand only. This speeds up alignment
346 with slight improvement to accuracy. For noisy Nanopore Direct RNA-seq
347 reads, it is recommended to use a smaller k-mer size for increased
348 sensitivity to the first or the last exons.
349
350 It is worth noting that by default ``-x splice`` prefers
351 GT[A/G]..[C/T]AG over GT[C/T]..[A/G]AG, and then over other splicing
352 signals. Considering one additional base improves the junction accuracy
353 for noisy reads, but reduces the accuracy when aligning against the
354 widely used SIRV control data. This is because SIRV does not honor the
355 evolutionarily conservative splicing signal. If you are studying SIRV,
356 you may apply ``--splice-flank=no`` to let minimap2 only model GT..AG,
357 ignoring the additional base.
358
359 Find overlaps between long reads
360 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
361
362 Similarly, ``ava-pb`` uses HPC minimizers while ``ava-ont`` uses
363 ordinary minimizers. It is usually not recommended to perform base-level
364 alignment in the overlapping mode because it is slow and may produce
365 false positive overlaps. However, if performance is not a concern, you
366 may try to add ``-a`` or ``-c`` anyway.
367
368 Map short accurate genomic reads
369 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
370
371
372 When two read files are specified, minimap2 reads from each file in turn
373 and merge them into an interleaved stream internally. Two reads are
374 considered to be paired if they are adjacent in the input stream and
375 have the same name (with the ``/[0-9]`` suffix trimmed if present).
376 Single- and paired-end reads can be mixed.
377
378 Minimap2 does not work well with short spliced reads. There are many
379 capable RNA-seq mappers for short reads.
380
381 Full genome/assembly alignment
382 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
383
384 For cross-species full-genome alignment, the scoring system needs to be
385 tuned according to the sequence divergence.
386
387 Advanced features
388 ~~~~~~~~~~~~~~~~~
389
390 Working with >65535 CIGAR operations
391 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
392
393 Due to a design flaw, BAM does not work with CIGAR strings with >65535
394 operations (SAM and CRAM work). However, for ultra-long nanopore reads
395 minimap2 may align ~1% of read bases with long CIGARs beyond the
396 capability of BAM. If you convert such SAM/CRAM to BAM, Picard and
397 recent samtools will throw an error and abort. Older samtools and other
398 tools may create corrupted BAM.
399
400 To avoid this issue, you can add option ``-L`` at the minimap2 command
401 line. This option moves a long CIGAR to the ``CG`` tag and leaves a
402 fully clipped CIGAR at the SAM CIGAR column. Current tools that don’t
403 read CIGAR (e.g. merging and sorting) still work with such BAM records;
404 tools that read CIGAR will effectively ignore these records. I have pull
405 requests to the SAM spec, htslib, htsjdk, bedtools2, Rsamtools and
406 igv.js. If they are accepted, future versions of these tools will
407 seamlessly recognize long-cigar records generated by option ``-L``.
408
409 **TD;DR**: if you work with ultra-long reads and use tools that only
410 process BAM files, please add option ``-L``.
411
412 The cs optional tag
413 ^^^^^^^^^^^^^^^^^^^
414
415 The ``cs`` SAM/PAF tag encodes bases at mismatches and INDELs. It
416 matches regular expression
417 ``/(:[0-9]+|\*[a-z][a-z]|[=\+\-][A-Za-z]+)+/``. Like CIGAR, ``cs``
418 consists of series of operations. Each leading character specifies the
419 operation; the following sequence is the one involved in the operation.
420
421 The ``cs`` tag is enabled by command line option ``--cs``. The following
422 alignment, for example:
423
424 .. code::
425
426 CGATCGATAAATAGAGTAG---GAATAGCA
427 |||||| |||||||||| |||| |||
428 CGATCG---AATAGAGTAGGTCGAATtGCA
429
430 is represented as ``:6-ata:10+gtc:4*at:3``, where ``:[0-9]+`` represents
431 an identical block, ``-ata`` represents a deltion, ``+gtc`` an insertion
432 and ``*at`` indicates reference base ``a`` is substituted with a query
433 base ``t``. It is similar to the ``MD`` SAM tag but is standalone and
434 easier to parse.
435
436 If ``--cs=long`` is used, the ``cs`` string also contains identical
437 sequences in the alignment. The above example will become
438 ``=CGATCG-ata=AATAGAGTAG+gtc=GAAT*at=GCA``. The long form of ``cs``
439 encodes both reference and query sequences in one string.
440
441 Algorithm overview
442 ~~~~~~~~~~~~~~~~~~
443
444 In the following, minimap2 command line options have a dash ahead and
445 are highlighted in bold. The description may help to tune minimap2
446 parameters.
447
448 1. Read **-I** [=*4G*] reference bases, extract
449 (**-k**,\ **-w**)-minimizers and index them in a hash table.
450
451 2. Read **-K** [=*200M*] query bases. For each query sequence, do step 3
452 through 7:
453
454 3. For each (**-k**,\ **-w**)-minimizer on the query, check against the
455 reference index. If a reference minimizer is not among the top **-f**
456 [=*2e-4*] most frequent, collect its the occurrences in the
457 reference, which are called *seeds*.
458
459 4. Sort seeds by position in the reference. Chain them with dynamic
460 programming. Each chain represents a potential mapping. For read
461 overlapping, report all chains and then go to step 8. For reference
462 mapping, do step 5 through 7:
463
464 5. Let *P* be the set of primary mappings, which is an empty set
465 initially. For each chain from the best to the worst according to
466 their chaining scores: if on the query, the chain overlaps with a
467 chain in *P* by **–mask-level** [=*0.5*] or higher fraction of the
468 shorter chain, mark the chain as *secondary* to the chain in *P*;
469 otherwise, add the chain to *P*.
470
471 6. Retain all primary mappings. Also retain up to **-N** [=*5*] top
472 secondary mappings if their chaining scores are higher than **-p**
473 [=*0.8*] of their corresponding primary mappings.
474
475 7. If alignment is requested, filter out an internal seed if it
476 potentially leads to both a long insertion and a long deletion.
477 Extend from the left-most seed. Perform global alignments between
478 internal seeds. Split the chain if the accumulative score along the
479 global alignment drops by **-z** [=*400*], disregarding long gaps.
480 Extend from the right-most seed. Output chains and their alignments.
481
482 8. If there are more query sequences in the input, go to step 2 until no
483 more queries are left.
484
485 9. If there are more reference sequences, reopen the query file from the
486 start and go to step 1; otherwise stop.
487
488 Limitations
489 -----------
490
491 - Minimap2 may produce suboptimal alignments through long
492 low-complexity regions where seed positions may be suboptimal. This
493 should not be a big concern because even the optimal alignment may be
494 wrong in such regions.
495
496 - Minimap2 requires SSE2 instructions to compile. It is possible to add
497 non-SSE2 support, but it would make minimap2 slower by several times.
498
499 In general, minimap2 is a young project with most code written since
500 June, 2017. It may have bugs and room for improvements. Bug reports and
501 suggestions are warmly welcomed.
502 </help>
503 <citations>
504 <citation type="doi">10.1093/bioinformatics/btp324</citation>
505 <citation type="doi">10.1093/bioinformatics/btp698</citation>
506 <citation type="bibtex">@misc{1303.3997,
507 Author = {Heng Li},
508 Title = {Minimap2: fast pairwise alignment for long nucleotide sequences},
509 Year = {2017},
510 Eprint = {arXiv:1708.01492},
511 url = {https://arxiv.org/abs/1708.01492},
512 }</citation>
513 </citations>
514 </tool>