OpenMS
OfflinePrecursorIonSelection Class Reference

Implements different algorithms for precursor ion selection. More...

#include <OpenMS/ANALYSIS/TARGETED/OfflinePrecursorIonSelection.h>

Inheritance diagram for OfflinePrecursorIonSelection:
[legend]
Collaboration diagram for OfflinePrecursorIonSelection:
[legend]

Classes

struct  PairComparatorSecondElement
 

Public Types

typedef PSLPFormulation::IndexTriple IndexTriple
 

Public Member Functions

 OfflinePrecursorIonSelection ()
 
 ~OfflinePrecursorIonSelection () override
 
void makePrecursorSelectionForKnownLCMSMap (const FeatureMap &features, const PeakMap &experiment, PeakMap &ms2, std::set< Int > &charges_set, bool feature_based)
 Makes the precursor selection for a given feature map, either feature or scan based. More...
 
void getMassRanges (const FeatureMap &features, const PeakMap &experiment, std::vector< std::vector< std::pair< Size, Size > > > &indices)
 Calculates the mass ranges for each feature and stores them as indices of the raw data. More...
 
void createProteinSequenceBasedLPInclusionList (String include, String rt_model_file, String pt_model_file, FeatureMap &precursors)
 
void setLPSolver (LPWrapper::SOLVER solver)
 
LPWrapper::SOLVER getLPSolver ()
 
- 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...
 
DefaultParamHandleroperator= (const DefaultParamHandler &rhs)
 Assignment operator. More...
 
virtual bool operator== (const DefaultParamHandler &rhs) const
 Equality operator. More...
 
void setParameters (const Param &param)
 Sets the parameters. More...
 
const ParamgetParameters () const
 Non-mutable access to the parameters. More...
 
const ParamgetDefaults () const
 Non-mutable access to the default parameters. More...
 
const StringgetName () 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...
 

Private Types

typedef std::map< std::pair< double, double >, int, PairComparatorSecondElement< std::pair< double, double > > > ExclusionListType_
 

Private Member Functions

void calculateXICs_ (const FeatureMap &features, const std::vector< std::vector< std::pair< Size, Size > > > &mass_ranges, const PeakMap &experiment, const std::set< Int > &charges_set, std::vector< std::vector< std::pair< Size, double > > > &xics)
 Calculate the sum of intensities of relevant features for each scan separately. More...
 
void checkMassRanges_ (std::vector< std::vector< std::pair< Size, Size > > > &mass_ranges, const PeakMap &experiment)
 Eliminates overlapping peaks. More...
 
void updateExclusionList_ (ExclusionListType_ &exclusion_list) const
 reduce scan count for each entry, and remove every entry which has reached 0 counts More...
 

Private Attributes

LPWrapper::SOLVER solver_
 

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 Member Functions inherited from DefaultParamHandler
virtual 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 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< Stringsubsections_
 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...
 

Detailed Description

Implements different algorithms for precursor ion selection.

Implements different algorithms for precursor ion selection, either based on a whole FeatureMap (e.g. like with LC-MALDI MS data) or based on single scans (e.g. with LC-ESI MS data).

Parameters of this class are:

NameTypeDefaultRestrictionsDescription
ms2_spectra_per_rt_bin int5 min: 1Number of allowed MS/MS spectra in a retention time bin.
min_mz_peak_distance float2.0 min: 1.0e-04The minimal distance (in Th) between two peaks for concurrent selection for fragmentation. Also used to define the m/z width of an exclusion window (distance +/- from m/z of precursor). If you set this lower than the isotopic envelope of a peptide, you might get multiple fragment spectra pointing to the same precursor.
mz_isolation_window float2.0 min: 0.0All peaks within a mass window (in Th) of a selected peak are also selected for fragmentation.
exclude_overlapping_peaks stringfalse true, falseIf true, overlapping or nearby peaks (within 'min_mz_peak_distance') are excluded for selection.
Exclusion:use_dynamic_exclusion stringfalse true, falseIf true dynamic exclusion is applied.
Exclusion:exclusion_time float100.0 min: 0.0The time (in seconds) a feature is excluded.
ProteinBasedInclusion:max_list_size int1000 min: 1The maximal number of precursors in the inclusion list.
ProteinBasedInclusion:rt:min_rt float960.0 min: 0.0Minimal rt in seconds.
ProteinBasedInclusion:rt:max_rt float3840.0 min: 0.0Maximal rt in seconds.
ProteinBasedInclusion:rt:rt_step_size float30.0 min: 1.0rt step size in seconds.
ProteinBasedInclusion:rt:rt_window_size int100 min: 1rt window size in seconds.
ProteinBasedInclusion:thresholds:min_protein_id_probability float0.95 min: 0.0 max: 1.0Minimal protein probability for a protein to be considered identified.
ProteinBasedInclusion:thresholds:min_pt_weight float0.5 min: 0.0 max: 1.0Minimal pt weight of a precursor
ProteinBasedInclusion:thresholds:min_mz float500.0 min: 0.0Minimal mz to be considered in protein based LP formulation.
ProteinBasedInclusion:thresholds:max_mz float5000.0 min: 0.0Minimal mz to be considered in protein based LP formulation.
ProteinBasedInclusion:thresholds:use_peptide_rule stringfalse true, falseUse peptide rule instead of minimal protein id probability
ProteinBasedInclusion:thresholds:min_peptide_ids int2 min: 1If use_peptide_rule is true, this parameter sets the minimal number of peptide ids for a protein id
ProteinBasedInclusion:thresholds:min_peptide_probability float0.95 min: 0.0 max: 1.0If use_peptide_rule is true, this parameter sets the minimal probability for a peptide to be safely identified

Note:
  • If a section name is documented, the documentation is displayed as tooltip.
  • Advanced parameter names are italic.

Member Typedef Documentation

◆ ExclusionListType_

typedef std::map<std::pair<double, double>, int, PairComparatorSecondElement<std::pair<double, double> > > ExclusionListType_
private

◆ IndexTriple

Constructor & Destructor Documentation

◆ OfflinePrecursorIonSelection()

◆ ~OfflinePrecursorIonSelection()

Member Function Documentation

◆ calculateXICs_()

void calculateXICs_ ( const FeatureMap features,
const std::vector< std::vector< std::pair< Size, Size > > > &  mass_ranges,
const PeakMap experiment,
const std::set< Int > &  charges_set,
std::vector< std::vector< std::pair< Size, double > > > &  xics 
)
private

Calculate the sum of intensities of relevant features for each scan separately.

◆ checkMassRanges_()

void checkMassRanges_ ( std::vector< std::vector< std::pair< Size, Size > > > &  mass_ranges,
const PeakMap experiment 
)
private

Eliminates overlapping peaks.

◆ createProteinSequenceBasedLPInclusionList()

void createProteinSequenceBasedLPInclusionList ( String  include,
String  rt_model_file,
String  pt_model_file,
FeatureMap precursors 
)

◆ getLPSolver()

LPWrapper::SOLVER getLPSolver ( )
inline

◆ getMassRanges()

void getMassRanges ( const FeatureMap features,
const PeakMap experiment,
std::vector< std::vector< std::pair< Size, Size > > > &  indices 
)

Calculates the mass ranges for each feature and stores them as indices of the raw data.

Parameters
featuresInput feature map
experimentInput raw data
indicesThe boundaries of the features as indices in the raw data

◆ makePrecursorSelectionForKnownLCMSMap()

void makePrecursorSelectionForKnownLCMSMap ( const FeatureMap features,
const PeakMap experiment,
PeakMap ms2,
std::set< Int > &  charges_set,
bool  feature_based 
)

Makes the precursor selection for a given feature map, either feature or scan based.

Parameters
featuresInput feature map
experimentInput raw data
ms2Precursors are added as empty MS2 spectra to this MSExperiment
charges_setAllowed charge states
feature_basedIf true the selection is feature based, if false it is scan based and the highest signals in each spectrum are chosen

◆ setLPSolver()

void setLPSolver ( LPWrapper::SOLVER  solver)
inline

◆ updateExclusionList_()

void updateExclusionList_ ( ExclusionListType_ exclusion_list) const
private

reduce scan count for each entry, and remove every entry which has reached 0 counts

Member Data Documentation

◆ solver_

LPWrapper::SOLVER solver_
private