OpenMS/OpenMS — pull request #1032 by lars20070 (2014-10-02 10:22:44+00:00)
Title: fixes peak boundaries in PeakPickerHiRes (resolves #1022)

The previous version of the PeakPickerHiRes algorithm relied on trailing zeros of peaks to detect peak boundaries correctly. If such zeros are not present, as in simulated data, the peak boundaries were extended to the previous and next peak, see #1022. This pull request resolves to issue by checking for large gaps in m/z.

The following changes were made:
(i) The number of allowed missing data points when extending to the left/right is now variable. It can be set with the new advanced parameter missing_.
(ii) Locally, the spacing of the m/z is constant. A missing data point can therefore be defined by > 1.5 * min_spacing [1]. This magic number does not even appear as advanced parameter.
(iii) A large gap is now defined as > spacing_difference_ * min_spacing with default spacing_difference_ = 4. If such a gap occurs the extension is stopped.

The modified code is not used on typical orbitrap data (trailing zeros before big gaps, no missing data points). In simulated data the peak boundaries are now correctly detected, see extended PeakPickerHiRes_test. Together with @timosachsenberg we compared before/after on a orbitrap and a simulated data set.

[1] min_spacing is the smaller of the two m/z steps to the left/right from the seed.