![]() |
OpenMS
|
Peak picking algorithm for ion mobility data. More...
#include <OpenMS/PROCESSING/CENTROIDING/PeakPickerIM.h>
Public Member Functions | |
| PeakPickerIM () | |
| Default constructor initializing parameters with default values. More... | |
| ~PeakPickerIM () override=default | |
| Destructor. More... | |
| void | pickIMTraces (MSSpectrum &spectrum) |
| Centroids ion mobility data by iteratively extracting mobilograms for each m/z peak centroid. More... | |
| void | pickIMCluster (MSSpectrum &spec) const |
| Converts an ion mobility frame to a single spectrum with averaged IM values. More... | |
| void | pickIMElutionProfiles (MSSpectrum &input) const |
| Picks ion mobility elution profiles from the given spectrum using eluting profiles. More... | |
| void | setParameters (const Param ¶m) |
| Sets the parameters for peak picking. More... | |
| const Param & | getParameters () const |
| Non-mutable access to the parameters. More... | |
Public Member Functions inherited from DefaultParamHandler | |
| 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... | |
| 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... | |
Protected Member Functions | |
| void | updateMembers_ () override |
| This method is used to update extra member variables at the end of the setParameters() method. More... | |
Protected Member Functions inherited from DefaultParamHandler | |
| void | defaultsToParam_ () |
| Updates the parameters after the defaults have been set in the constructor. More... | |
Private Member Functions | |
| double | computeOptimalSamplingRate (const std::vector< MSSpectrum > &spectra) |
| determine sampling rate for linear resampler More... | |
| void | sumFrame_ (const MSSpectrum &input_spectrum, MSSpectrum &output_spectrum, double tolerance=0.01, bool use_ppm=true) |
| Sum up the intensity of data points with nearly identical float values. More... | |
| std::pair< double, double > | ppmBounds (double mz, double ppm) |
| Compute lower and upper m/z bounds based on ppm. More... | |
| std::vector< MSSpectrum > | extractIonMobilityTraces (const MSSpectrum &picked_spectrum, const MSSpectrum &raw_spectrum) |
| MSSpectrum | computeCentroids_ (const std::vector< MSSpectrum > &mobilogram_traces, const std::vector< MSSpectrum > &picked_traces) |
| compute m/z and ion mobility centers for picked traces. Returns centroided spectrum. More... | |
Private Attributes | |
| double | sum_tolerance_mz_ {1.0} |
| double | gauss_ppm_tolerance_ {5.0} |
| double | sum_tolerance_im_ {0.0006} |
| int | sgolay_frame_length_ {5} |
| int | sgolay_polynomial_order_ {3} |
| double | ppm_tolerance_cluster_ {50.0} |
| double | im_tolerance_cluster_ {0.1} |
| double | ppm_tolerance_elution_ {50.0} |
Additional Inherited Members | |
Static Public Member Functions inherited from DefaultParamHandler | |
| static void | writeParametersToMetaValues (const Param &write_this, MetaInfoInterface &write_here, const String &key_prefix="") |
| Writes all parameters to meta values. More... | |
Protected Attributes inherited from DefaultParamHandler | |
| 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... | |
Peak picking algorithm for ion mobility data.
This class provides three specialized methods for peak picking in ion mobility (IM) data:
| PeakPickerIM | ( | ) |
Default constructor initializing parameters with default values.
|
overridedefault |
Destructor.
|
private |
compute m/z and ion mobility centers for picked traces. Returns centroided spectrum.
|
private |
determine sampling rate for linear resampler
|
private |
Extract ion mobility traces as MSSpectra from the raw TimsTOF frame Ion mobility is temporarily written in place of m/z inside Peak1D object. raw m/z values are allocated to float data arrays with the label 'raw_mz'
| const Param& getParameters |
Non-mutable access to the parameters.
| void pickIMCluster | ( | MSSpectrum & | spec | ) | const |
Converts an ion mobility frame to a single spectrum with averaged IM values.
This function takes an MS spectrum containing ion mobility data and reduces it to a single spectrum where peaks that are close in both m/z and ion mobility space are averaged together. The averaging is intensity-weighted for both m/z and ion mobility values.
The algorithm processes peaks sequentially and groups them based on two criteria:
Uses parameters pickIMCluster:ppm_tolerance_cluster and pickIMCluster:im_tolerance_cluster.
| spec | Spectrum containing ion mobility data in its FloatDataArrays |
| Exception::MissingInformation | if input spectrum lacks ion mobility data |
Example:
| void pickIMElutionProfiles | ( | MSSpectrum & | input | ) | const |
Picks ion mobility elution profiles from the given spectrum using eluting profiles.
This function processes an MS spectrum containing ion mobility data and extracts IM elution profiles based on the configured ppm tolerance.
| input | Spectrum containing ion mobility data in its FloatDataArrays |
| void pickIMTraces | ( | MSSpectrum & | spectrum | ) |
Centroids ion mobility data by iteratively extracting mobilograms for each m/z peak centroid.
This function processes an MS spectrum containing ion mobility data (geared towards TimsTOF data) Peaks in a given MS spectrum are projected to the m/z axis and centroided. Then, the mobilogram of each m/z peak centroid is retrieved using the m/z peak FWHM. Peak picking algorithm is applied to the mobilogram to resolve isobaric species with different ion mobility measurement.
| spectrum | Spectrum containing ion mobility data in its FloatDataArrays |
|
private |
Compute lower and upper m/z bounds based on ppm.
| void setParameters |
Sets the parameters for peak picking.
|
private |
Sum up the intensity of data points with nearly identical float values.
By default, this function assumes the tolerance provided is in parts per million. But it can be adjusted to use absolute value tolerance.
| input_spectrum | Sorted raw spectrum with duplicate peaks due to scan merging or presence of ion mobility data. |
| output_spectrum | Output spectrum containing the summed peaks. |
| tolerance | Mass tolerance between peaks |
| use_ppm | Whether to use parts per million tolerance. If set to False, absolute tolerance will be used. |
|
overrideprotectedvirtual |
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.
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |