Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Public Types | Public Member Functions | Private Member Functions | List of all members
MRMIonSeries Class Reference

Generate theoretical fragment ion series for use in MRMAssay and MRMDecoy. More...

#include <OpenMS/ANALYSIS/OPENSWATH/MRMIonSeries.h>

Public Types

typedef boost::unordered_map< String, doubleIonSeries
 

Public Member Functions

std::pair< String, doublegetIon (IonSeries ionseries, String ionid)
 Selects ion from IonSeries according to annotation string. More...
 
std::pair< String, doubleannotateIon (IonSeries ionseries, double ProductMZ, double mz_threshold)
 Selects ion from IonSeries according to product m/z. More...
 
void annotateTransitionCV (ReactionMonitoringTransition &tr, String annotation)
 Annotates transition with CV terms. More...
 
void annotateTransition (ReactionMonitoringTransition &tr, const TargetedExperiment::Peptide peptide, const double precursor_mz_threshold, const double product_mz_threshold, bool enable_reannotation, std::vector< String > fragment_types, std::vector< size_t > fragment_charges, bool enable_specific_losses, bool enable_unspecific_losses, int round_decPow=-4)
 Annotates transition. More...
 
IonSeries getIonSeries (AASequence sequence, size_t precursor_charge, std::vector< String > fragment_types, std::vector< size_t > fragment_charges, bool enable_specific_losses, bool enable_unspecific_losses, int round_decPow=-4)
 Computed theoretical fragment ion series. More...
 
 MRMIonSeries ()
 Constructor. More...
 
 ~MRMIonSeries ()
 Destructor. More...
 

Private Member Functions

TargetedExperiment::Interpretation annotationToCVTermList_ (String annotation)
 
void annotationToCV_ (ReactionMonitoringTransition &tr)
 

Detailed Description

Generate theoretical fragment ion series for use in MRMAssay and MRMDecoy.

Will generate theoretical fragment ionseries based on AASequence and parameters. Neutral losses are supported according to a model similar to the one in SpectraST. ReactionMonitoringTransition objects can be annotated with the corresponding CV terms.

MRMIonSeries uses internally an annotation format that is compatible with SpectraST, which is derived from Roepstoff and Fohlman (1984, PMID: 6525415). An annotation tag starts with ion type (a, b, c, x, y, z) followed by the ordinal (number of amino acids). The caret symbol follows "^" with a positive integer indicating the fragment ion charge. If no caret symbol is present, a charge of 1 is assumed. In case of neutral loss, a negative symbol "-" followed by the integer mass (e.g. 17 for ammonia) OR the molecular composition, compatible with EmpiricalFormula (e.g. N1H3 for ammonia) is allowed.

Valid examples: y3, y3^1, y3^1-18, y3^1-H2O, y3-H2O

Limitations: Special SpectraST multi-assignments, immonium, precursors are not supported.

Member Typedef Documentation

◆ IonSeries

typedef boost::unordered_map<String, double> IonSeries

Constructor & Destructor Documentation

◆ MRMIonSeries()

Constructor.

◆ ~MRMIonSeries()

Destructor.

Member Function Documentation

◆ annotateIon()

std::pair<String, double> annotateIon ( IonSeries  ionseries,
double  ProductMZ,
double  mz_threshold 
)

Selects ion from IonSeries according to product m/z.

Parameters
ionseriesthe IonSeries from which to choose
ProductMzthe product m/z of the queried fragment ion
mz_thresholdthe m/z threshold for annotation of the fragment ion std::pair<String, double> the annotation and product m/z of the queried fragment ion

◆ annotateTransition()

void annotateTransition ( ReactionMonitoringTransition tr,
const TargetedExperiment::Peptide  peptide,
const double  precursor_mz_threshold,
const double  product_mz_threshold,
bool  enable_reannotation,
std::vector< String fragment_types,
std::vector< size_t >  fragment_charges,
bool  enable_specific_losses,
bool  enable_unspecific_losses,
int  round_decPow = -4 
)

Annotates transition.

Parameters
trthe transition to annotate
peptidethe corresponding peptide
precursor_mz_thresholdthe m/z threshold for annotation of the precursor ion
product_mz_thresholdthe m/z threshold for annotation of the fragment ion
enable_reannotationwhether the original (e.g. SpectraST) annotation should be used or reannotation should be conducted
fragment_typesthe fragment ion types for reannotation
fragment_chargesthe fragment ion charges for reannotation
enable_specific_losseswhether specific neutral losses should be considered
enable_unspecific_losseswhether unspecific neutral losses (H2O1, H3N1, C1H2N2, C1H2N1O1) should be considered
round_decPowround precursor and product m/z values to decimal power (default: -4)

◆ annotateTransitionCV()

void annotateTransitionCV ( ReactionMonitoringTransition tr,
String  annotation 
)

Annotates transition with CV terms.

Parameters
trthe transition to annotate
annotationthe fragment ion annotation.

◆ annotationToCV_()

void annotationToCV_ ( ReactionMonitoringTransition tr)
private

◆ annotationToCVTermList_()

TargetedExperiment::Interpretation annotationToCVTermList_ ( String  annotation)
private

◆ getIon()

std::pair<String, double> getIon ( IonSeries  ionseries,
String  ionid 
)

Selects ion from IonSeries according to annotation string.

Parameters
ionseriesthe IonSeries from which to choose
ionidthe annotation string of the query fragment ion std::pair<String, double> the annotation and product m/z of the queried fragment ion

◆ getIonSeries()

IonSeries getIonSeries ( AASequence  sequence,
size_t  precursor_charge,
std::vector< String fragment_types,
std::vector< size_t >  fragment_charges,
bool  enable_specific_losses,
bool  enable_unspecific_losses,
int  round_decPow = -4 
)

Computed theoretical fragment ion series.

Parameters
sequencethe peptide amino acid sequence
precursor_chargethe charge of the peptide precursor
fragment_typesthe fragment ion types for reannotation
fragment_chargesthe fragment ion charges for reannotation
enable_specific_losseswhether specific neutral losses should be considered
enable_unspecific_losseswhether unspecific neutral losses (H2O1, H3N1, C1H2N2, C1H2N1O1) should be considered
round_decPowround product m/z values to decimal power (default: -4) IonSeries the theoretical fragment ion series

OpenMS / TOPP release 2.3.0 Documentation generated on Tue Jan 9 2018 18:22:10 using doxygen 1.8.13