You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
When counting 32 mers, the 0 mask, hashes all kmers to the same value (0)
I understand we should be able to count up to 32mers. Is the limit 31 in reality and I misunderstood the "up to"?
I also don't get why
mask = (1ULL<<k*2)
sets mask to 1 instead of 0 when k == 32
EDIT To my last point.
It seems that shift operations with values greater than or equal to the size of the type is undefined behavior. Which explains why "<<32*2" would not work.
The text was updated successfully, but these errors were encountered:
Hi @lh3
I noticed a little problem when counting 32 mers.
Given the sequence:
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAT
There are two unique kmers in this sequence but kc-c1 is reporting only one.
After inspecting your code I noticed:
Which is used to extract the k*2 bits corresponding with k bases.
Testing how mask is set I got:
When counting 32 mers, the 0 mask, hashes all kmers to the same value (0)
I understand we should be able to count up to 32mers. Is the limit 31 in reality and I misunderstood the "up to"?
I also don't get why
sets mask to 1 instead of 0 when k == 32
EDIT To my last point.
It seems that shift operations with values greater than or equal to the size of the type is undefined behavior. Which explains why "<<32*2" would not work.
The text was updated successfully, but these errors were encountered: