loneknightpy / idba

124 stars 53 forks source link

basic question: how does idba_ud treat even k-mer sizes (or palindromic kmers)? #14

Closed jvollme closed 8 years ago

jvollme commented 8 years ago

Hi, this is just a basic question for understanding how IDBA-UD works in comparison to other assemblers. Almost all de bruijn graph assemblers specifically forbid even kmer lengths to avoid palindromic kmers. However, i can run IDBA_UD with even or uneven k-mer lengths and the default values seem to be even.
How come that IDBA-UD does not seem to have any issue with even or palindromic kmers?

loneknightpy commented 8 years ago

@jvollme It handles even k-mer elegantly. Basically, palindromic k-mers are treated as normal k-mers except that they can be traveled from both directions. Palindromic k-mer do introduce some branches in the graph, but they usually can be resolved while iterating k-mer to maxk. Actually, palindromic k-mers are very rare when k is big. (e.g. 100)

jvollme commented 8 years ago

OK. thanks for the info