TravisWheelerLab / NINJA

Nearly Infinite Neighbor Joining Application
MIT License
5 stars 7 forks source link

Possibly wrong tree in External Memory #7

Closed michelwandermaas closed 8 years ago

michelwandermaas commented 8 years ago

That`s what the analysis show, it is possibly wrong. Every Dfam alignment from 1-8, besides the 6th, shows extreme differences, with average of 1700~. RapidNJ usually produces extremely similar trees, with average of 2~ of distance, but with average of 180~ in the 6th and 7th alignment. In the 8th alignment, the results are show 1700 of distance.

It is worth noticing that the 6th Dfam base is the smallest, so it probably doesnt even use external memory, thats why it works.

In order to find the bug, one should start looking at the distances, and then move to the tree. Also compare Java and C code trying to find differences.

michelwandermaas commented 8 years ago

Silly bug in changing qprime value accidentally. Now, based on the the 8 tests with the Dfam alignments, the trees generated are correct, always extremely similar to that of the in_memory part or the ext_memory of the Ninja in Java. Also, for every alignment but the Dfam_8 (which is the is made of 50k+ length alignments, the biggest in the test case), it is also almost identical to RapidNJ.