| OpenMS 2.5.0

Public Member Functions | Protected Member Functions | Static Protected Member Functions | Protected Attributes | List of all members
TheoreticalSpectrumGenerator Class Reference
Chemistry

Generates theoretical spectra for peptides with various options. More...

`#include <OpenMS/CHEMISTRY/TheoreticalSpectrumGenerator.h>`

Inheritance diagram for TheoreticalSpectrumGenerator:

## Public Member Functions

TheoreticalSpectrumGenerator & | operator= (const TheoreticalSpectrumGenerator &tsg)
| assignment operator More...
Constructors and Destructors
| TheoreticalSpectrumGenerator ()
| default constructor More...
| TheoreticalSpectrumGenerator (const TheoreticalSpectrumGenerator &source)
| copy constructor More...
| ~TheoreticalSpectrumGenerator () override
| destructor More...
Acessors
virtual void | getSpectrum (PeakSpectrum &spec, const AASequence &peptide, Int min_charge, Int max_charge) const
| Generates a spectrum for a peptide sequence, with the ion types that are set in the tool parameters. More...
void | updateMembers_ () override
| overwrite 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...
virtual DefaultParamHandler & | operator= (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 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

virtual void | addPeaks_ (PeakSpectrum &spectrum, const AASequence &peptide, DataArrays::StringDataArray &ion_names, DataArrays::IntegerDataArray &charges, Residue::ResidueType res_type, Int charge=1) const
| adds peaks to a spectrum of the given ion-type, peptide, charge, and intensity, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true More...
virtual void | addPrecursorPeaks_ (PeakSpectrum &spec, const AASequence &peptide, DataArrays::StringDataArray &ion_names, DataArrays::IntegerDataArray &charges, Int charge=1) const
| adds the precursor peaks to the spectrum, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true More...
void | addAbundantImmoniumIons_ (PeakSpectrum &spec, const AASequence &peptide, DataArrays::StringDataArray &ion_names, DataArrays::IntegerDataArray &charges) const
| Adds the common, most abundant immonium ions to the theoretical spectra if the residue is contained in the peptide sequence, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true. More...
void | addIsotopeCluster_ (PeakSpectrum &spectrum, const AASequence &ion, DataArrays::StringDataArray &ion_names, DataArrays::IntegerDataArray &charges, Residue::ResidueType res_type, Int charge, double intensity) const
| helper to add an isotope cluster to a spectrum, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true More...
void | addLosses_ (PeakSpectrum &spectrum, const AASequence &ion, DataArrays::StringDataArray &ion_names, DataArrays::IntegerDataArray &charges, double intensity, Residue::ResidueType res_type, int charge) const
| helper to add full neutral loss ladders, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true More...
Protected Member Functions inherited from DefaultParamHandler
void | defaultsToParam_ ()
| Updates the parameters after the defaults have been set in the constructor. More...

## Static Protected Member Functions

static char | residueTypeToIonLetter_ (Residue::ResidueType res_type)
| helper for mapping residue type to letter More...

## Protected Attributes

bool | add_b_ions_
bool | add_y_ions_
bool | add_a_ions_
bool | add_c_ions_
bool | add_x_ions_
bool | add_z_ions_
bool | add_first_prefix_ion_
bool | add_losses_
bool | add_metainfo_
bool | add_isotopes_
int | isotope_model_
bool | add_precursor_peaks_
bool | add_all_precursor_charges_
bool | add_abundant_immonium_ions_
bool | sort_by_position_
double | a_intensity_
double | b_intensity_
double | c_intensity_
double | x_intensity_
double | y_intensity_
double | z_intensity_
Int | max_isotope_
double | rel_loss_intensity_
double | max_isotope_probability_
double | pre_int_
double | pre_int_H2O_
double | pre_int_NH3_
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...

## Detailed Description

Generates theoretical spectra for peptides with various options.

If the tool parameter add_metainfo is set to true, ion names like y8+ or [M-H2O+2H]++ are written as strings in a StringDataArray with the name "IonNames" and charges are written as integers in an IntegerDataArray with the name "Charges" in the returned PeakSpectrum.

The getSpectrum function can be called with the same PeakSpectrum multiple times to add additional peaks. If the PeakSpectrum already has DataArrays, then the first StringDataArray and the first IntegerDataArray are extended. Therefore it is not recommended to add to or change the PeakSpectrum or these DataArrays between calls of the getSpectrum function with the same PeakSpectrum.

Note
  The generation of neutral loss peaks is very slow in this class. Something similar to the neutral loss precalculation used in TheoreticalSpectrumGeneratorXLMS should be implemented here as well.

Parameters of this class are:

Name | Type | Default | Restrictions | Description
--- | --- | --- | --- | ---
isotope_model | string | none | none, coarse, fine | Model to use for isotopic peaks ('none' means no isotopic peaks are added, 'coarse' adds isotopic peaks in unit mass distance, 'fine' uses the hyperfine isotopic generator to add accurate isotopic peaks. Note that adding isotopic peaks is very slow.
max_isotope | int | 2 |  | Defines the maximal isotopic peak which is added if 'isotope_model' is 'coarse'
max_isotope_probability | float | 0.05 |  | Defines the maximal isotopic probability to cover if 'isotope_model' is 'fine'
add_metainfo | string | false | true, false | Adds the type of peaks as metainfo to the peaks, like y8+, [M-H2O+2H]++
add_losses | string | false | true, false | Adds common losses to those ion expect to have them, only water and ammonia loss is considered
sort_by_position | string | true | true, false | Sort output by position
add_precursor_peaks | string | false | true, false | Adds peaks of the unfragmented precursor ion to the spectrum
add_all_precursor_charges | string | false | true, false | Adds precursor peaks with all charges in the given range
add_abundant_immonium_ions | string | false | true, false | Add most abundant immonium ions
add_first_prefix_ion | string | false | true, false | If set to true e.g. b1 ions are added
add_y_ions | string | true | true, false | Add peaks of y-ions to the spectrum
add_b_ions | string | true | true, false | Add peaks of b-ions to the spectrum
add_a_ions | string | false | true, false | Add peaks of a-ions to the spectrum
add_c_ions | string | false | true, false | Add peaks of c-ions to the spectrum
add_x_ions | string | false | true, false | Add peaks of x-ions to the spectrum
add_z_ions | string | false | true, false | Add peaks of z-ions to the spectrum
y_intensity | float | 1.0 |  | Intensity of the y-ions
b_intensity | float | 1.0 |  | Intensity of the b-ions
a_intensity | float | 1.0 |  | Intensity of the a-ions
c_intensity | float | 1.0 |  | Intensity of the c-ions
x_intensity | float | 1.0 |  | Intensity of the x-ions
z_intensity | float | 1.0 |  | Intensity of the z-ions
relative_loss_intensity | float | 0.1 |  | Intensity of loss ions, in relation to the intact ion intensity
precursor_intensity | float | 1.0 |  | Intensity of the precursor peak
precursor_H2O_intensity | float | 1.0 |  | Intensity of the H2O loss peak of the precursor
precursor_NH3_intensity | float | 1.0 |  | Intensity of the NH3 loss peak of the precursor

Note:

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

## Constructor & Destructor Documentation

## ◆ TheoreticalSpectrumGenerator() [1/2]

TheoreticalSpectrumGenerator | ( |  | ) |

default constructor

## ◆ TheoreticalSpectrumGenerator() [2/2]

TheoreticalSpectrumGenerator | ( | const TheoreticalSpectrumGenerator & | source | ) |

copy constructor

## ◆ ~TheoreticalSpectrumGenerator()

~TheoreticalSpectrumGenerator | ( |  | ) |

override

destructor

## Member Function Documentation

## ◆ addAbundantImmoniumIons_()

void addAbundantImmoniumIons_ | ( | PeakSpectrum & | spec,
|  | const AASequence & | peptide,
|  | DataArrays::StringDataArray & | ion_names,
|  | DataArrays::IntegerDataArray & | charges
| ) |  | const

protected

Adds the common, most abundant immonium ions to the theoretical spectra if the residue is contained in the peptide sequence, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true.

## ◆ addIsotopeCluster_()

void addIsotopeCluster_ | ( | PeakSpectrum & | spectrum,
|  | const AASequence & | ion,
|  | DataArrays::StringDataArray & | ion_names,
|  | DataArrays::IntegerDataArray & | charges,
|  | Residue::ResidueType | res_type,
|  | Int | charge,
|  | double | intensity
| ) |  | const

protected

helper to add an isotope cluster to a spectrum, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true

## ◆ addLosses_()

void addLosses_ | ( | PeakSpectrum & | spectrum,
|  | const AASequence & | ion,
|  | DataArrays::StringDataArray & | ion_names,
|  | DataArrays::IntegerDataArray & | charges,
|  | double | intensity,
|  | Residue::ResidueType | res_type,
|  | int | charge
| ) |  | const

protected

helper to add full neutral loss ladders, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true

## ◆ addPeaks_()

virtual void addPeaks_ | ( | PeakSpectrum & | spectrum,
|  | const AASequence & | peptide,
|  | DataArrays::StringDataArray & | ion_names,
|  | DataArrays::IntegerDataArray & | charges,
|  | Residue::ResidueType | res_type,
|  | Int | charge = `1`
| ) |  | const

protected virtual

adds peaks to a spectrum of the given ion-type, peptide, charge, and intensity, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true

## ◆ addPrecursorPeaks_()

virtual void addPrecursorPeaks_ | ( | PeakSpectrum & | spec,
|  | const AASequence & | peptide,
|  | DataArrays::StringDataArray & | ion_names,
|  | DataArrays::IntegerDataArray & | charges,
|  | Int | charge = `1`
| ) |  | const

protected virtual

adds the precursor peaks to the spectrum, also adds charges and ion names to the DataArrays, if the add_metainfo parameter is set to true

## ◆ getSpectrum()

virtual void getSpectrum | ( | PeakSpectrum & | spec,
|  | const AASequence & | peptide,
|  | Int | min_charge,
|  | Int | max_charge
| ) |  | const

virtual

Generates a spectrum for a peptide sequence, with the ion types that are set in the tool parameters.

Referenced by TOPPViewBase::showSpectrumGenerationDialog().

## ◆ operator=()

TheoreticalSpectrumGenerator& operator= | ( | const TheoreticalSpectrumGenerator & | tsg | ) |

assignment operator

## ◆ residueTypeToIonLetter_()

static char residueTypeToIonLetter_ | ( | Residue::ResidueType | res_type | ) |

static protected

helper for mapping residue type to letter

## ◆ updateMembers_()

void updateMembers_ | ( |  | ) |

override virtual

overwrite

Reimplemented from DefaultParamHandler.

## Member Data Documentation

## ◆ a_intensity_

double a_intensity_

protected

## ◆ add_a_ions_

bool add_a_ions_

protected

## ◆ add_abundant_immonium_ions_

bool add_abundant_immonium_ions_

protected

## ◆ add_all_precursor_charges_

bool add_all_precursor_charges_

protected

## ◆ add_b_ions_

bool add_b_ions_

protected

## ◆ add_c_ions_

bool add_c_ions_

protected

## ◆ add_first_prefix_ion_

bool add_first_prefix_ion_

protected

## ◆ add_isotopes_

bool add_isotopes_

protected

## ◆ add_losses_

bool add_losses_

protected

## ◆ add_metainfo_

bool add_metainfo_

protected

## ◆ add_precursor_peaks_

bool add_precursor_peaks_

protected

## ◆ add_x_ions_

bool add_x_ions_

protected

## ◆ add_y_ions_

bool add_y_ions_

protected

## ◆ add_z_ions_

bool add_z_ions_

protected

## ◆ b_intensity_

double b_intensity_

protected

## ◆ c_intensity_

double c_intensity_

protected

## ◆ isotope_model_

int isotope_model_

protected

## ◆ max_isotope_

Int max_isotope_

protected

## ◆ max_isotope_probability_

double max_isotope_probability_

protected

## ◆ pre_int_

double pre_int_

protected

## ◆ pre_int_H2O_

double pre_int_H2O_

protected

## ◆ pre_int_NH3_

double pre_int_NH3_

protected

## ◆ rel_loss_intensity_

double rel_loss_intensity_

protected

## ◆ sort_by_position_

bool sort_by_position_

protected

## ◆ x_intensity_

double x_intensity_

protected

## ◆ y_intensity_

double y_intensity_

protected

## ◆ z_intensity_

double z_intensity_

protected