BWA

BWA

Raw:\(ACAACG\)

  • step1:加上$符号,并且$符号的优先级最低
  • 对长度为N的字符序列进行N次循环右移,得到N个字符序列矩阵
  • 按照字典序对这个矩阵的每一行作为基元进行字典许排序
  • 提取矩阵的第一列作为F,最后一列作为L

\[Raw ~~ Matrix \left[ \begin{matrix} ACAACG$ \\ $ACAACG \\ G$ACAAC \\ CG$ACAA \\ ACG$ACA \\ AACG$AC \\ CAACG$A \\ \end{matrix} \right ] \rightarrow_{sorted} Sorted ~~ Matrix \left[ \begin{matrix} $ACAACG \\ AACG$AC \\ ACAACG$ \\ ACG$ACA \\ CAACG$A \\ CG$ACAA \\ G$ACAAC \\ \end{matrix} \right] \]

\[F: \left[ \begin{matrix} $\\ A\\ A\\ A\\ C\\ C\\ G\\ \end{matrix} \right] L: \left[ \begin{matrix} G\\ C\\ $\\ A\\ A\\ A\\ C\\ \end{matrix} \right] \]

BWT:\(ACAACG\rightarrow GC\$A3C\)

关系

  • L,F对应的每一行的元素在原始序列中L在F的前面
  • L中的元素和F中的元素一样,L排序完毕之后就是F
  • L和F中相同元素的相对位置相同
  • 只需要保留L和L中字母的相对顺序就可以推出F,就可以完成还原原本的序列

Aim : CAA

假设现在的目标序列是CAA如何查找CAA,首先反转变成AAC,在F中找A,然后依次寻找即可。

BWA\Bowtie/Bowtie

  • Bowtie
    • 只允许mismatch不允许gap
    • 序列长度普遍是36bp,分割成为28bp的高质量区域(5`端)和4bp的低质量区域(3端),其中高质量区域又被分割成为14bp的高质量区域中的高质量区域以及后14bp的高质量区域的低质量区域。
    • 序列比对结果的\(mismatch\leq 2\)的时候继续进行后面区域的序列比对否则直接认为失败
  • Bowtie2
    • 允许mismatch也允许gap
    • 序列长度为100-150bp,选取seed的方法是20-18(就是每20个元素作为一个单位然后选取前18个)或者10-16(就是10个元素作为一个单位,选取16个,多的6个是overlap)
    • seed进行比对之后,保留有用的seed。有了seed的reigon之后,就可以知道这条序列在基因组的大概位置,然后在这个seed的大概位置进行exteding,最终对这个extending的区域进行SW(动态规划序列比对算法)etc.
posted @ 2021-03-18 11:49  BOTAK  阅读(226)  评论(0编辑  收藏  举报