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/PeakPickerHiRes.h>
Classes | |
struct | PeakBoundary |
structure for peak boundaries More... | |
Public Member Functions | |
PeakPickerHiRes () | |
Constructor. More... | |
virtual | ~PeakPickerHiRes () |
Destructor. More... | |
template<typename PeakType > | |
void | pick (const MSSpectrum< PeakType > &input, MSSpectrum< PeakType > &output) const |
Applies the peak-picking algorithm to a single spectrum (MSSpectrum). The resulting picked peaks are written to the output spectrum. More... | |
template<typename PeakType > | |
void | pick (const MSSpectrum< PeakType > &input, MSSpectrum< PeakType > &output, std::vector< PeakBoundary > &boundaries, bool check_spacings=true) const |
Applies the peak-picking algorithm to a single spectrum (MSSpectrum). The resulting picked peaks are written to the output spectrum. Peak boundaries are written to a separate structure. More... | |
template<typename PeakType > | |
void | pick (const MSChromatogram< PeakType > &input, MSChromatogram< PeakType > &output) const |
Applies the peak-picking algorithm to a single chromatogram (MSChromatogram). The resulting picked peaks are written to the output chromatogram. More... | |
template<typename PeakType > | |
void | pick (const MSChromatogram< PeakType > &input, MSChromatogram< PeakType > &output, std::vector< PeakBoundary > &boundaries) const |
Applies the peak-picking algorithm to a single chromatogram (MSChromatogram). The resulting picked peaks are written to the output chromatogram. More... | |
template<typename PeakType , typename ChromatogramPeakT > | |
void | pickExperiment (const MSExperiment< PeakType, ChromatogramPeakT > &input, MSExperiment< PeakType, ChromatogramPeakT > &output, const bool check_spectrum_type=true) const |
Applies the peak-picking algorithm to a map (MSExperiment). This method picks peaks for each scan in the map consecutively. The resulting picked peaks are written to the output map. More... | |
template<typename PeakType , typename ChromatogramPeakT > | |
void | pickExperiment (const MSExperiment< PeakType, ChromatogramPeakT > &input, MSExperiment< PeakType, ChromatogramPeakT > &output, std::vector< std::vector< PeakBoundary > > &boundaries_spec, std::vector< std::vector< PeakBoundary > > &boundaries_chrom, const bool check_spectrum_type=true) const |
Applies the peak-picking algorithm to a map (MSExperiment). This method picks peaks for each scan in the map consecutively. The resulting picked peaks are written to the output map. More... | |
template<typename PeakType , typename ChromatogramPeakT > | |
void | pickExperiment (OnDiscMSExperiment< PeakType, ChromatogramPeakT > &input, MSExperiment< PeakType, ChromatogramPeakT > &output, const bool check_spectrum_type=true) const |
Applies the peak-picking algorithm to a map (MSExperiment). This method picks peaks for each scan in the map consecutively. The resulting picked peaks are written to the output map. More... | |
![]() | |
DefaultParamHandler (const String &name) | |
Constructor with name that is displayed in error messages. More... | |
DefaultParamHandler (const DefaultParamHandler &rhs) | |
Copy constructor. More... | |
virtual | ~DefaultParamHandler () |
Destructor. More... | |
virtual DefaultParamHandler & | operator= (const DefaultParamHandler &rhs) |
Assignment operator. More... | |
virtual bool | operator== (const DefaultParamHandler &rhs) const |
Equality operator. More... | |
void | setParameters (const Param ¶m) |
Sets the parameters. More... | |
const Param & | getParameters () const |
Non-mutable access to the parameters. More... | |
const Param & | getDefaults () const |
Non-mutable access to the default parameters. More... | |
const String & | getName () const |
Non-mutable access to the name. More... | |
void | setName (const String &name) |
Mutable access to the name. More... | |
const std::vector< String > & | getSubsections () const |
Non-mutable access to the registered subsections. More... | |
![]() | |
ProgressLogger () | |
Constructor. More... | |
~ProgressLogger () | |
Destructor. More... | |
ProgressLogger (const ProgressLogger &other) | |
Copy constructor. More... | |
ProgressLogger & | operator= (const ProgressLogger &other) |
Assignment Operator. More... | |
void | setLogType (LogType type) const |
Sets the progress log that should be used. The default type is NONE! More... | |
LogType | getLogType () const |
Returns the type of progress log being used. More... | |
void | startProgress (SignedSize begin, SignedSize end, const String &label) const |
Initializes the progress display. More... | |
void | setProgress (SignedSize value) const |
Sets the current progress. More... | |
void | endProgress () const |
Ends the progress display. More... | |
Protected Member Functions | |
void | updateMembers_ () |
This method is used to update extra member variables at the end of the setParameters() method. More... | |
![]() | |
void | defaultsToParam_ () |
Updates the parameters after the defaults have been set in the constructor. More... | |
Protected Attributes | |
double | signal_to_noise_ |
double | spacing_difference_gap_ |
double | spacing_difference_ |
unsigned | missing_ |
std::vector< Int > | ms_levels_ |
![]() | |
Param | param_ |
Container for current parameters. More... | |
Param | defaults_ |
Container for default parameters. This member should be filled in the constructor of derived classes! More... | |
std::vector< String > | subsections_ |
Container for registered subsections. This member should be filled in the constructor of derived classes! More... | |
String | error_name_ |
Name that is displayed in error messages during the parameter checking. More... | |
bool | check_defaults_ |
If this member is set to false no checking if parameters in done;. More... | |
bool | warn_empty_defaults_ |
If this member is set to false no warning is emitted when defaults are empty;. More... | |
![]() | |
LogType | type_ |
time_t | last_invoke_ |
ProgressLoggerImpl * | current_logger_ |
Additional Inherited Members | |
![]() | |
enum | LogType { CMD, GUI, NONE } |
Possible log types. More... | |
![]() | |
static String | logTypeToFactoryName_ (LogType type) |
Return the name of the factory product used for this log type. More... | |
![]() | |
static int | recursion_depth_ |
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.
PeakPickerHiRes | ( | ) |
Constructor.
|
virtual |
Destructor.
|
inline |
Applies the peak-picking algorithm to a single spectrum (MSSpectrum). The resulting picked peaks are written to the output spectrum.
input | input spectrum in profile mode |
output | output spectrum with picked peaks |
Referenced by PeakPickerIterative::pick().
|
inline |
Applies the peak-picking algorithm to a single spectrum (MSSpectrum). The resulting picked peaks are written to the output spectrum. Peak boundaries are written to a separate structure.
input | input spectrum in profile mode |
output | output spectrum with picked peaks |
boundaries | boundaries of the picked peaks |
check_spacings | check spacing constraints? (yes for spectra, no for chromatograms) |
References MSSpectrum< PeakT >::clear(), CubicSpline2d::derivatives(), CubicSpline2d::eval(), MSSpectrum< PeakT >::getMSLevel(), MSSpectrum< PeakT >::getName(), MSSpectrum< PeakT >::getRT(), SignalToNoiseEstimator< Container >::getSignalToNoise(), SignalToNoiseEstimator< Container >::init(), OpenMS::Constants::k, PeakPickerHiRes::PeakBoundary::mz_max, PeakPickerHiRes::PeakBoundary::mz_min, SpectrumSettings::PEAKS, Peak2D::setIntensity(), MSSpectrum< PeakT >::setMSLevel(), Peak2D::setMZ(), MSSpectrum< PeakT >::setName(), DefaultParamHandler::setParameters(), MSSpectrum< PeakT >::setRT(), and SpectrumSettings::setType().
|
inline |
Applies the peak-picking algorithm to a single chromatogram (MSChromatogram). The resulting picked peaks are written to the output chromatogram.
input | input chromatogram in profile mode |
output | output chromatogram with picked peaks |
|
inline |
Applies the peak-picking algorithm to a single chromatogram (MSChromatogram). The resulting picked peaks are written to the output chromatogram.
input | input chromatogram in profile mode |
output | output chromatogram with picked peaks |
boundaries | boundaries of the picked peaks |
References MSChromatogram< PeakT >::clear(), MSChromatogram< PeakT >::getName(), and MSChromatogram< PeakT >::setName().
|
inline |
Applies the peak-picking algorithm to a map (MSExperiment). This method picks peaks for each scan in the map consecutively. The resulting picked peaks are written to the output map.
input | input map in profile mode |
output | output map with picked peaks |
check_spectrum_type | if set, checks spectrum type and throws an exception if a centoided spectrum is passed |
|
inline |
Applies the peak-picking algorithm to a map (MSExperiment). This method picks peaks for each scan in the map consecutively. The resulting picked peaks are written to the output map.
input | input map in profile mode |
output | output map with picked peaks |
boundaries_spec | boundaries of the picked peaks in spectra |
boundaries_chrom | boundaries of the picked peaks in chromatograms |
check_spectrum_type | if set, checks spectrum type and throws an exception if a centroided spectrum is passed |
References MSExperiment< PeakT, ChromatogramPeakT >::addChromatogram(), MSExperiment< PeakT, ChromatogramPeakT >::clear(), ListUtils::contains(), MSExperiment< PeakT, ChromatogramPeakT >::getChromatograms(), MSExperiment< PeakT, ChromatogramPeakT >::getNrSpectra(), SpectrumSettings::PEAKS, MSExperiment< PeakT, ChromatogramPeakT >::resize(), and MSExperiment< PeakT, ChromatogramPeakT >::size().
|
inline |
Applies the peak-picking algorithm to a map (MSExperiment). This method picks peaks for each scan in the map consecutively. The resulting picked peaks are written to the output map.
Currently we have to give up const-correctness but we know that everything on disc is constant
References MSExperiment< PeakT, ChromatogramPeakT >::addChromatogram(), MSExperiment< PeakT, ChromatogramPeakT >::clear(), ListUtils::contains(), OnDiscMSExperiment< PeakT, ChromatogramPeakT >::getChromatogram(), OnDiscMSExperiment< PeakT, ChromatogramPeakT >::getExperimentalSettings(), OnDiscMSExperiment< PeakT, ChromatogramPeakT >::getNrChromatograms(), OnDiscMSExperiment< PeakT, ChromatogramPeakT >::getNrSpectra(), SpectrumSettings::getType(), SpectrumSettings::PEAKS, MSExperiment< PeakT, ChromatogramPeakT >::resize(), OnDiscMSExperiment< PeakT, ChromatogramPeakT >::size(), and MSSpectrum< PeakT >::sortByPosition().
|
protectedvirtual |
This method is used to update extra member variables at the end of the setParameters() method.
Also call it at the end of the derived classes' copy constructor and assignment operator.
The default implementation is empty.
Reimplemented from DefaultParamHandler.
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |
OpenMS / TOPP release 2.0.0 | Documentation generated on Wed Mar 30 2016 12:49:29 using doxygen 1.8.11 |