| OpenMS 2.5.0

Public Member Functions | Private Member Functions | Private Attributes | List of all members
MultiplexFilteringProfile Class Reference

filters centroided and profile data for peak patterns More...

`#include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/MultiplexFilteringProfile.h>`

Inheritance diagram for MultiplexFilteringProfile:

## Public Member Functions

| MultiplexFilteringProfile (MSExperiment &exp_profile, const MSExperiment &exp_centroided, const std::vector< std::vector< PeakPickerHiRes::PeakBoundary > > &boundaries, const std::vector< MultiplexIsotopicPeakPattern > &patterns, int isotopes_per_peptide_min, int isotopes_per_peptide_max, double intensity_cutoff, double rt_band, double mz_tolerance, bool mz_tolerance_unit, double peptide_similarity, double averagine_similarity, double averagine_similarity_scaling, String averagine_type="peptide")
| constructor More...
std::vector< MultiplexFilteredMSExperiment > | filter ()
| filter for patterns (generates a filter result for each of the patterns) More...
std::vector< std::vector< PeakPickerHiRes::PeakBoundary > > & | getPeakBoundaries ()
| returns the intensity-filtered peak boundaries More...
Public Member Functions inherited from MultiplexFiltering
| MultiplexFiltering (const MSExperiment &exp_centroided, const std::vector< MultiplexIsotopicPeakPattern > &patterns, int isotopes_per_peptide_min, int isotopes_per_peptide_max, double intensity_cutoff, double rt_band, double mz_tolerance, bool mz_tolerance_unit, double peptide_similarity, double averagine_similarity, double averagine_similarity_scaling, String averagine_type="peptide")
| constructor More...
MSExperiment & | getCentroidedExperiment ()
| returns the intensity-filtered, centroided spectral data More...
MSExperiment | getBlacklist ()
| returns the blacklisted, centroided peaks More...
Public Member Functions inherited from ProgressLogger
| 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...
void | nextProgress () const
| increment progress by 1 (according to range begin-end) More...

## Private Member Functions

bool | filterAveragineModel_ (const MultiplexIsotopicPeakPattern &pattern, const MultiplexFilteredPeak &peak, const std::multimap< size_t, MultiplexSatelliteProfile > &satellites_profile) const
| averagine filter for profile mode More...
bool | filterPeptideCorrelation_ (const MultiplexIsotopicPeakPattern &pattern, const std::multimap< size_t, MultiplexSatelliteProfile > &satellites_profile) const
| peptide correlation filter for profile mode More...

## Private Attributes

std::vector< SplineInterpolatedPeaks > | exp_spline_profile_
| spline interpolated profile data and peak boundaries More...
std::vector< std::vector< PeakPickerHiRes::PeakBoundary > > | boundaries_

## Additional Inherited Members

Public Types inherited from MultiplexFiltering
typedef std::vector< std::map< int, int > > | White2Original
| index mapping from a 'white' experiment to its original experiment More...
Public Types inherited from ProgressLogger
enum | LogType { CMD, GUI, NONE }
| Possible log types. More...
Protected Member Functions inherited from MultiplexFiltering
void | updateWhiteMSExperiment_ ()
| construct an MS experiment from exp_centroided_ containing peaks which have not been previously blacklisted in blacklist_ More...
int | checkForSignificantPeak_ (double mz, double mz_tolerance, MSExperiment::ConstIterator &it_rt, double intensity_first_peak) const
| check for significant peak More...
bool | filterPeakPositions_ (const MSSpectrum::ConstIterator &it_mz, const MSExperiment::ConstIterator &it_rt_begin, const MSExperiment::ConstIterator &it_rt_band_begin, const MSExperiment::ConstIterator &it_rt_band_end, const MultiplexIsotopicPeakPattern &pattern, MultiplexFilteredPeak &peak) const
| check if there are enough peaks in the RT band to form the pattern More...
void | blacklistPeak_ (const MultiplexFilteredPeak &peak)
| blacklist this peak More...
void | blacklistPeak_ (const MultiplexFilteredPeak &peak, unsigned pattern_idx)
| blacklist this peak More...
bool | filterAveragineModel_ (const MultiplexIsotopicPeakPattern &pattern, const MultiplexFilteredPeak &peak) const
| check if the satellite peaks conform with the averagine model More...
bool | filterPeptideCorrelation_ (const MultiplexIsotopicPeakPattern &pattern, const MultiplexFilteredPeak &peak) const
| check if corresponding satellite peaks of different peptides show a good correlation More...
Static Protected Member Functions inherited from ProgressLogger
static String | logTypeToFactoryName_ (LogType type)
| Return the name of the factory product used for this log type. More...
Protected Attributes inherited from MultiplexFiltering
MSExperiment | exp_centroided_
| centroided experimental data More...
std::vector< std::vector< int > > | blacklist_
| auxiliary structs for blacklisting More...
MSExperiment | exp_centroided_white_
| "white" centroided experimental data More...
White2Original | exp_centroided_mapping_
| mapping of peak indices from a 'white' experiment <exp_centroided_white_> to its original experiment <exp_centroided_> More...
std::vector< MultiplexIsotopicPeakPattern > | patterns_
| list of peak patterns More...
size_t | isotopes_per_peptide_min_
| minimum number of isotopic peaks per peptide More...
size_t | isotopes_per_peptide_max_
| maximum number of isotopic peaks per peptide More...
double | intensity_cutoff_
| intensity cutoff More...
double | rt_band_
| RT range used for filtering. More...
double | mz_tolerance_
| m/z shift tolerance More...
bool | mz_tolerance_unit_in_ppm_
| unit for m/z shift tolerance (ppm - true, Da - false) More...
double | peptide_similarity_
| peptide similarity More...
double | averagine_similarity_
| averagine similarity More...
double | averagine_similarity_scaling_
| averagine similarity scaling More...
String | averagine_type_
| type of averagine to use More...
Protected Attributes inherited from ProgressLogger
LogType | type_
time_t | last_invoke_
ProgressLoggerImpl * | current_logger_
Static Protected Attributes inherited from ProgressLogger
static int | recursion_depth_

## Detailed Description

filters centroided and profile data for peak patterns

The algorithm searches for patterns of multiple peptides in the data. The peptides appear as characteristic patterns of isotopic peaks in MS1 spectra. We first search the centroided data, and optionally in a second step the spline interpolated profile data. For each peak pattern the algorithm generates a filter result.

See also
  MultiplexIsotopicPeakPattern
  MultiplexFilterResult
  MultiplexFiltering

## Constructor & Destructor Documentation

## ◆ MultiplexFilteringProfile()

MultiplexFilteringProfile | ( | MSExperiment & | exp_profile,
|  | const MSExperiment & | exp_centroided,
|  | const std::vector< std::vector< PeakPickerHiRes::PeakBoundary > > & | boundaries,
|  | const std::vector< MultiplexIsotopicPeakPattern > & | patterns,
|  | int | isotopes_per_peptide_min,
|  | int | isotopes_per_peptide_max,
|  | double | intensity_cutoff,
|  | double | rt_band,
|  | double | mz_tolerance,
|  | bool | mz_tolerance_unit,
|  | double | peptide_similarity,
|  | double | averagine_similarity,
|  | double | averagine_similarity_scaling,
|  | String | averagine_type = `"peptide"`
| ) |  |

constructor

Parameters

  exp_profile | experimental data in profile mode
  exp_centroided | experimental data in centroid mode
  boundaries | peak boundaries for exp_centroided
  patterns | patterns of isotopic peaks to be searched for
  isotopes_per_peptide_min | minimum number of isotopic peaks in peptides
  isotopes_per_peptide_max | maximum number of isotopic peaks in peptides
  intensity_cutoff | intensity cutoff
  rt_band | RT range used for filtering
  mz_tolerance | error margin in m/z for matching expected patterns to experimental data
  mz_tolerance_unit | unit for mz_tolerance, ppm (true), Da (false)
  peptide_similarity | similarity score for two peptides in the same multiplet
  averagine_similarity | similarity score for peptide isotope pattern and averagine model
  averagine_similarity_scaling | scaling factor x for the averagine similarity parameter p when detecting peptide singlets. With p' = p + x(1-p).
  averagine_type | The averagine model to use, current options are RNA DNA or peptide.

Exceptions

  Exception::IllegalArgument | if profile and centroided data do not contain same number of spectra
  Exception::IllegalArgument | if centroided data and the corresponding list of peak boundaries do not contain same number of spectra

## Member Function Documentation

## ◆ filter()

std::vector<MultiplexFilteredMSExperiment> filter | ( |  | ) |

filter for patterns (generates a filter result for each of the patterns)

Exceptions

  Exception::IllegalArgument | if number of peaks and number of peak boundaries differ

See also
  MultiplexIsotopicPeakPattern
  MultiplexFilteredMSExperiment

## ◆ filterAveragineModel_()

bool filterAveragineModel_ | ( | const MultiplexIsotopicPeakPattern & | pattern,
|  | const MultiplexFilteredPeak & | peak,
|  | const std::multimap< size_t, MultiplexSatelliteProfile > & | satellites_profile
| ) |  | const

private

averagine filter for profile mode

Parameters

  pattern | m/z pattern to search for
  peak | peak to be filtered
  satellites | spline-interpolated satellites of the peak. If they pass, they will be added to the peak.

Returns
  boolean if this filter was passed i.e. the correlation coefficient is greater than <averagine_similarity_>

## ◆ filterPeptideCorrelation_()

bool filterPeptideCorrelation_ | ( | const MultiplexIsotopicPeakPattern & | pattern,
|  | const std::multimap< size_t, MultiplexSatelliteProfile > & | satellites_profile
| ) |  | const

private

peptide correlation filter for profile mode

Parameters

  pattern | m/z pattern to search for
  satellites | spline-interpolated satellites of the peak. If they pass, they will be added to the peak.

Returns
  boolean if this filter was passed i.e. the correlation coefficient is greater than <averagine_similarity_>

## ◆ getPeakBoundaries()

std::vector<std::vector<PeakPickerHiRes::PeakBoundary> >& getPeakBoundaries | ( |  | ) |

returns the intensity-filtered peak boundaries

## Member Data Documentation

## ◆ boundaries_

std::vector<std::vector<PeakPickerHiRes::PeakBoundary> > boundaries_

private

## ◆ exp_spline_profile_

std::vector<SplineInterpolatedPeaks> exp_spline_profile_

private

spline interpolated profile data and peak boundaries