|  | OpenMS
    2.6.0
    | 
Data structure for spline interpolation of MS1 spectra and chromatograms. More...
#include <OpenMS/FILTERING/DATAREDUCTION/SplineInterpolatedPeaks.h>
| Classes | |
| class | Navigator | 
| iterator class for access of spline packages  More... | |
| Public Member Functions | |
| SplineInterpolatedPeaks (const std::vector< double > &pos, const std::vector< double > &intensity) | |
| constructor taking two vectors (and an optional scaling factor for the m/z (or RT) step width)  More... | |
| SplineInterpolatedPeaks (const MSSpectrum &raw_spectrum) | |
| constructor taking an MSSpectrum (and an optional scaling factor for the m/z step width)  More... | |
| SplineInterpolatedPeaks (const MSChromatogram &raw_chromatogram) | |
| constructor taking an MSChromatogram (and an optional scaling factor for the RT step width)  More... | |
| ~SplineInterpolatedPeaks () | |
| destructor  More... | |
| double | getPosMin () const | 
| returns the minimum m/z (or RT) of the spectrum  More... | |
| double | getPosMax () const | 
| returns the maximum m/z (or RT) of the spectrum  More... | |
| size_t | size () const | 
| Get number of spline packages found during initialization.  More... | |
| SplineInterpolatedPeaks::Navigator | getNavigator (double scaling=0.7) | 
| returns an iterator for access of spline packages  More... | |
| Private Member Functions | |
| SplineInterpolatedPeaks () | |
| hide default C'tor  More... | |
| void | init_ (const std::vector< double > &pos, const std::vector< double > &intensity) | 
| section common for all constructors  More... | |
| Private Attributes | |
| double | pos_min_ | 
| m/z (or RT) limits of the spectrum  More... | |
| double | pos_max_ | 
| std::vector< SplinePackage > | packages_ | 
| set of spline packages each interpolating in a certain m/z (or RT) range  More... | |
Data structure for spline interpolation of MS1 spectra and chromatograms.
The data structure consists of a set of splines, each interpolating the MS1 spectrum (or chromatogram) in a certain m/z (or RT) range. Between these splines no raw data points exist and the intensity is identical to zero.
A spline on non-equi-distant input data is not well supported in regions without data points. Hence, a spline tends to swing wildly in these regions and cannot be used for reliable interpolation. We assume that in m/z (or RT) regions without data points, the spectrum (or chromatogram) is identical to zero.
| SplineInterpolatedPeaks | ( | const std::vector< double > & | pos, | 
| const std::vector< double > & | intensity | ||
| ) | 
constructor taking two vectors (and an optional scaling factor for the m/z (or RT) step width)
| SplineInterpolatedPeaks | ( | const MSSpectrum & | raw_spectrum | ) | 
constructor taking an MSSpectrum (and an optional scaling factor for the m/z step width)
| SplineInterpolatedPeaks | ( | const MSChromatogram & | raw_chromatogram | ) | 
constructor taking an MSChromatogram (and an optional scaling factor for the RT step width)
destructor
| 
 | private | 
hide default C'tor
| SplineInterpolatedPeaks::Navigator getNavigator | ( | double | scaling = 0.7 | ) | 
returns an iterator for access of spline packages
Will throw an exception if no packages were found during construction. Check using getSplineCount().
Make sure that the underlying SplineInterpolatedPeaks does not run out-of-scope since the Navigator relies on its data.
| scaling | step width scaling parameter | 
| Exception::InvalidSize | if packages is empty | 
Referenced by SpectraMerger::averageProfileSpectra_().
| double getPosMax | ( | ) | const | 
returns the maximum m/z (or RT) of the spectrum
Referenced by SpectraMerger::averageProfileSpectra_().
| double getPosMin | ( | ) | const | 
returns the minimum m/z (or RT) of the spectrum
Referenced by SpectraMerger::averageProfileSpectra_().
section common for all constructors
| size_t size | ( | ) | const | 
Get number of spline packages found during initialization.
Note that this function should be called right after the C'tor to ensure the spectrum has some usable data to work on. In case there are no packages, a subsequent call to getNavigator() will throw an exception.
| 
 | private | 
set of spline packages each interpolating in a certain m/z (or RT) range
| 
 | private | 
| 
 | private | 
m/z (or RT) limits of the spectrum
 1.8.16
 1.8.16