<p dir="ltr">Howdy Chirag,</p>
<p dir="ltr">Thank you for your email, it is always nice to hear from users. I&#39;ve CC&#39;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 &lt;<a href="mailto:cjain@gatech.edu">cjain@gatech.edu</a>&gt; 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 &quot;AAGC&quot; and &quot;AGCT&quot; in the left to right direction, while &quot;TCGA&quot; and &quot;CGAA&quot; 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>