This list contains potential bugs & problems detected in the original code while refactoring.
- check_element detects
Cif formula containsCl-> No compounds are filtered because they don't contain carbon - multilevelannotationstep5:
- the
.combine = rbindparameter offoreach::foreach()function causes a twisted output, collapsing a174x60matrix to a61x10matrix -> 61 are the non-empty rows, but the entries in rows that have more than 10 columns filled get discarded; - the issue described above may cause
multilevelannotationstep5to compute different outputs depending on whether the loop is executed in parallel (%dopar%) or sequentially (%do%). The results may differ in chemical scores or the number of annotations. When chemical scores differ, sequential execution will systematically output lower scores.
- the
- in multilevelannotationstep4 (and functions called by it) are some suspicious conditions where they check for
curdata$score < 10andcurdata$score > 10, but never for actual value10 - in get_chemscorev1.6.71 in the isotope detection, the RT clustering is recomputed with a fixed RT diff of 10 seconds, changing the whole previous RT clustering.
- in get_chemscorev1.6.71 this part for the calculation is never called under current tests.
- In get_chemscorev1.6.71 the correlation matrix is apparently only read on the diagonal, which implies that values will always be 1. The function could also just return a matrix of 1s with the size of
mzid_curxmzid_cur