<p dir="ltr">Howdy Chirag,</p>
<p dir="ltr">Thank you for your email, it is always nice to hear from users. I've CC'd the general discussion list so that others can benefit.</p>
<p dir="ltr">Kmer hashing is done in a strand invariant way: we generate the reverse compliment for every kmer and store the them using the numerically lower hash value. There is a compile time option to turn this off.</p>
<p dir="ltr">Graph traversal occurs in several different locations in the codebase and deserves some refactoring. Here is an example <a href="https://github.com/ged-lab/khmer/blob/master/lib/hashtable.cc#L708">https://github.com/ged-lab/khmer/blob/master/lib/hashtable.cc#L708</a><br>
</p>
<p dir="ltr"><br>
</p>
<p dir="ltr">I hope you find this helpful.</p>
<p dir="ltr">Cheers,</p>
<p dir="ltr"><br>
On Tue, May 5, 2015, 15:14 Jain, Chirag <<a href="mailto:cjain@gatech.edu">cjain@gatech.edu</a>> wrote:</p>
<blockquote><p dir="ltr">Hi khmer-developers,<br></p>
<p dir="ltr">I am specifically interested in the assembly usage of khmer, which involves trimming off some reads and partitioning the graph. I am trying to parse through the code, but cannot figure out if the k-mers are constructed only in 1 direction of a read or are you using both directions?<br></p>
<p dir="ltr">For example, </p>
<p dir="ltr">Read AAGCT has kmers "AAGC" and "AGCT" in the left to right direction, while "TCGA" and "CGAA" in the right to left direction. Do you include both in the hash table or just include one while partitioning the graph?<br></p>
<p dir="ltr">I would also be grateful if you could point me to the code/function where you are traversing the graph using your hash table.<br><br></p>
<p dir="ltr">Thanks,</p>
<p dir="ltr">Chirag<br>
</p>
</blockquote>
<p dir="ltr"><br>
</p>