BWA比对详解

bwa主要用于将低差异度的短序列(一般是同物种)与参考基因组进行比对。主要包含三种比对算法:backtrack、SW和MEM,第一种只支持短序列比对(<100bp),后两种支持长序列比对(70bp~1M),并支持分割比对(split alignment)。MEM算法是最新的也是官方推荐的。

 注:如果短序列是嵌合体,可能会输出两条结果。

 注:参考基因组单挑染色体长度要小于2G

主要语法:


bwa index -a bwtsw ref.fasta         #对于大基因组建立FM-Index

bwa index -a is ref.fasta             #对小基因组建立index,速度快,内存消耗大

bwa mem ref.fa reads.fq > aln-se.sam

bwa mem ref.fa read1.fq read2.fq > aln-pe.sam

bwa aln ref.fa short_read.fq > aln_sa.sai

bwa samse ref.fa aln_sa.sai short_read.fq > aln-se.sam

bwa sampe ref.fa aln_sa1.sai aln_sa2.sai read1.fq read2.fq > aln-pe.sam

bwa bwasw ref.fa long_read.fq > aln.sam

内置程序包括:index,mem,aln samse,sampe,bwasw,

Index:对参考基因组建立索引

-p: prefix of output database
-a:Algorithm for constructing index
        is          :速度快,内存消耗大,适合小基因组<2G
        bwtsw  :速度慢,省内存,适合大参考基因组

MEM:maximal exact matches

  先做seeding alignment,再用SW算法做延伸
  主要参数:
  -t INT    Number of threads [1]
            线程数,默认为1
  -k INT    Minimum seed length. Matches shorter than INT will be missed. The alignment speed is usually insensitive to this value unless it significantly deviates 20. [19]
            最小种子匹配长度,影响比对速度,默认为19
  -w INT    Band width. Essentially, gaps longer than INT will not be found. Note that the maximum gap length is also affected by the scoring matrix and the hit length, not solely determined by this option. [100]
            gap最大长度,超过后将不会被匹配,默认为100
  -d INT    Off-diagonal X-dropoff (Z-dropoff). Stop extension when the difference between the best and the current extension score is above |i-j|*A+INT, where i and j are the current positions of the query and reference, respectively, and A is the matching score. Z-dropoff is similar to BLAST’s X-dropoff except that it doesn’t penalize gaps in one of the sequences in the alignment. Z-dropoff not only avoids unnecessary extension, but also reduces poor alignments inside a long good alignment. [100]
            影响停止延伸的一个参数。
  -r FLOAT  Trigger re-seeding for a MEM longer than minSeedLen*FLOAT. This is a key heuristic parameter for tuning the performance. Larger value yields fewer seeds, which leads to faster alignment speed but lower accuracy. [1.5]
            一个关键的启发式搜索参数,较大的数值意味着较少的种子,比对速度也更快,默认1.5,即1.5倍的最小种子长度
  -c INT    Discard a MEM if it has more than INT occurence in the genome. This is an insensitive parameter. [10000]
  -P    In the paired-end mode, perform SW to rescue missing hits only but do not try to find hits that fit a proper pair.
  -A INT    Matching score. [1]
  -B INT    Mismatch penalty. The sequence error rate is approximately: {.75 * exp[-log(4) * B/A]}. [4]
  -O INT    Gap open penalty. [6]
  -E INT    Gap extension penalty. A gap of length k costs O + k*E (i.e. -O is for opening a zero-length gap). [1]
  -L INT    Clipping penalty. When performing SW extension, BWA-MEM keeps track of the best score reaching the end of query. If this score is larger than the best SW score minus the clipping penalty, clipping will not be applied. Note that in this case, the SAM AS tag reports the best SW score; clipping penalty is not deducted. [5]
  -U INT    Penalty for an unpaired read pair. BWA-MEM scores an unpaired read pair as scoreRead1+scoreRead2-INT and scores a paired as scoreRead1+scoreRead2-insertPenalty. It compares these two scores to determine whether we should force pairing. [9]
  -p    Assume the first input query file is interleaved paired-end FASTA/Q. See the command description for details.
  -R STR    Complete read group header line. ’\t’ can be used in STR and will be converted to a TAB in the output SAM. The read group ID will be attached to every read in the output. An example is ’@RG\tID:foo\tSM:bar’. [null]
  - T INT   Don’t output alignment with score lower than INT. This option only affects output. [30]
  -a    Output all found alignments for single-end or unpaired paired-end reads. These alignments will be flagged as secondary alignments.
  -C    Append append FASTA/Q comment to SAM output. This option can be used to transfer read meta information (e.g. barcode) to the SAM output. Note that the FASTA/Q comment (the string after a space in the header line) must conform the SAM spec (e.g. BC:Z:CGTAC). Malformated comments lead to incorrect SAM output.
  -H    Use hard clipping ’H’ in the SAM output. This option may dramatically reduce the redundancy of output when mapping long contig or BAC sequences.
  -M    Mark shorter split hits as secondary (for Picard compatibility).
  -v INT    Control the verbose level of the output. This option has not been fully supported throughout BWA. Ideally, a value 0 for disabling all the output to stderr; 1 for outputting errors only; 2 for warnings and errors; 3 for all normal messages; 4 or higher for debugging. When this option takes value 4, the output is not SAM. [3]

你可能感兴趣的:(BWA比对详解)