Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Classes | Public Member Functions | Protected Attributes | List of all members
PeakPickerMaxima Class Reference

This class implements a fast peak-picking algorithm best suited for high resolution MS data (FT-ICR-MS, Orbitrap). In high resolution data, the signals of ions with similar mass-to-charge ratios (m/z) exhibit little or no overlapping and therefore allow for a clear separation. Furthermore, ion signals tend to show well-defined peak shapes with narrow peak width. More...

#include <OpenMS/TRANSFORMATIONS/RAW2PEAK/PeakPickerMaxima.h>

Classes

struct  PeakCandidate
 The PeakCandidate describes the output of the peak picker. More...
 

Public Member Functions

 PeakPickerMaxima (double signal_to_noise, double spacing_difference=1.5, double spacing_difference_gap=4.0, double sn_window_length=200, unsigned missing=2)
 Constructor. More...
 
virtual ~PeakPickerMaxima ()
 Destructor. More...
 
void findMaxima (const std::vector< double > &mz_array, const std::vector< double > &int_array, std::vector< PeakCandidate > &pc, bool check_spacings=true)
 Will find local maxima in raw data. More...
 
void pick (std::vector< double > &mz_array, std::vector< double > &int_array, std::vector< PeakCandidate > &pc, bool check_spacings=true)
 Will pick peaks in a spectrum. More...
 

Protected Attributes

double signal_to_noise_
 
double sn_window_length_
 
double spacing_difference_
 
double spacing_difference_gap_
 
unsigned missing_
 

Detailed Description

This class implements a fast peak-picking algorithm best suited for high resolution MS data (FT-ICR-MS, Orbitrap). In high resolution data, the signals of ions with similar mass-to-charge ratios (m/z) exhibit little or no overlapping and therefore allow for a clear separation. Furthermore, ion signals tend to show well-defined peak shapes with narrow peak width.

This peak-picking algorithm detects ion signals in raw data and reconstructs the corresponding peak shape by cubic spline interpolation. Signal detection depends on the signal-to-noise ratio which is adjustable by the user (see parameter signal_to_noise). A picked peak's m/z and intensity value is given by the maximum of the underlying peak spline.

So far, this peak picker was mainly tested on high resolution data. With appropriate preprocessing steps (e.g. noise reduction and baseline subtraction), it might be also applied to low resolution data.

Note
The peaks must be sorted according to ascending m/z!

Constructor & Destructor Documentation

PeakPickerMaxima ( double  signal_to_noise,
double  spacing_difference = 1.5,
double  spacing_difference_gap = 4.0,
double  sn_window_length = 200,
unsigned  missing = 2 
)

Constructor.

virtual ~PeakPickerMaxima ( )
inlinevirtual

Destructor.

Member Function Documentation

void findMaxima ( const std::vector< double > &  mz_array,
const std::vector< double > &  int_array,
std::vector< PeakCandidate > &  pc,
bool  check_spacings = true 
)

Will find local maxima in raw data.

Parameters
mz_arrayThe array containing m/z values
int_arrayThe array containing intensity values
pcThe resulting array containing the peak candidates
check_spacingscheck spacing constraints? (recommended settings: yes for spectra, no for chromatograms)
Note
This function will directly report peak apices with right and left boundaries but will not use any fitting to estimate the true m/z and intensity of the peak. Note that the mz_max and int_max fields will be empty in the result (set to -1).
void pick ( std::vector< double > &  mz_array,
std::vector< double > &  int_array,
std::vector< PeakCandidate > &  pc,
bool  check_spacings = true 
)

Will pick peaks in a spectrum.

Parameters
mz_arrayThe array containing m/z values
int_arrayThe array containing intensity values
pcThe resulting array containing the peak candidates
check_spacingscheck spacing constraints? (recommended settings: yes for spectra, no for chromatograms)
Note
This function will first find maxima in the intensity domain and then use a spline function to estimate the best m/z and intensity for each peak candidate.

Member Data Documentation

unsigned missing_
protected
double signal_to_noise_
protected
double sn_window_length_
protected
double spacing_difference_
protected
double spacing_difference_gap_
protected

OpenMS / TOPP release 2.0.0 Documentation generated on Tue Nov 1 2016 16:34:46 using doxygen 1.8.11