shuzhao-li-lab / JMS

Json's Metabolite Services
MIT License
1 stars 1 forks source link

Centurion Trees could be IntervalTrees #28

Open jmmitc06 opened 9 months ago

jmmitc06 commented 9 months ago

The current centurion tree implementation is effectively the same as the IntervalTree data structure made available by the IntervalTree library. While there is nothing wrong with the existing implmentation, the complexity of the code may be reduced by using the library implementation since interval trees will handle floats natively (rather than mulitplying the floating point m/z by a large number to make it an integer). This may also reduce edge cases that may arise with large m/z ppms or very small ppms possible with future instruments. This is a dependency in the pipeline already and for MS2 annotations. It also has a cython / c version so performance may be improved too, although this really only matters for Xasari.