OpenMS  2.4.0
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
TheoreticalSpectrumGenerator Class Reference

Generates theoretical spectra with various options. More...

#include <OpenMS/CHEMISTRY/TheoreticalSpectrumGenerator.h>

Inheritance diagram for TheoreticalSpectrumGenerator:
DefaultParamHandler

Public Member Functions

TheoreticalSpectrumGeneratoroperator= (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
 returns a spectrum 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 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...
 

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...
 
char residueTypeToIonLetter_ (Residue::ResidueType res_type) const
 helper for mapping residue type to letter 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...
 

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_
 
bool add_precursor_peaks_
 
bool add_all_precursor_charges_
 
bool add_abundant_immonium_ions_
 
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 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< 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

Generates theoretical spectra 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.

Parameters of this class are:

NameTypeDefaultRestrictionsDescription
add_isotopes stringfalse true, falseIf set to 1 isotope peaks of the product ion peaks are added
max_isotope int2  Defines the maximal isotopic peak which is added, add_isotopes must be set to 1
add_metainfo stringfalse true, falseAdds the type of peaks as metainfo to the peaks, like y8+, [M-H2O+2H]++
add_losses stringfalse true, falseAdds common losses to those ion expect to have them, only water and ammonia loss is considered
add_precursor_peaks stringfalse true, falseAdds peaks of the precursor to the spectrum, which happen to occur sometimes
add_all_precursor_charges stringfalse true, falseAdds precursor peaks with all charges in the given range
add_abundant_immonium_ions stringfalse true, falseAdd most abundant immonium ions
add_first_prefix_ion stringfalse true, falseIf set to true e.g. b1 ions are added
add_y_ions stringtrue true, falseAdd peaks of y-ions to the spectrum
add_b_ions stringtrue true, falseAdd peaks of b-ions to the spectrum
add_a_ions stringfalse true, falseAdd peaks of a-ions to the spectrum
add_c_ions stringfalse true, falseAdd peaks of c-ions to the spectrum
add_x_ions stringfalse true, falseAdd peaks of x-ions to the spectrum
add_z_ions stringfalse true, falseAdd peaks of z-ions to the spectrum
y_intensity float1  Intensity of the y-ions
b_intensity float1  Intensity of the b-ions
a_intensity float1  Intensity of the a-ions
c_intensity float1  Intensity of the c-ions
x_intensity float1  Intensity of the x-ions
z_intensity float1  Intensity of the z-ions
relative_loss_intensity float0.1  Intensity of loss ions, in relation to the intact ion intensity
precursor_intensity float1  Intensity of the precursor peak
precursor_H2O_intensity float1  Intensity of the H2O loss peak of the precursor
precursor_NH3_intensity float1  Intensity of the NH3 loss peak of the precursor

Note:

Constructor & Destructor Documentation

◆ TheoreticalSpectrumGenerator() [1/2]

default constructor

◆ TheoreticalSpectrumGenerator() [2/2]

copy constructor

◆ ~TheoreticalSpectrumGenerator()

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
protectedvirtual

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
protectedvirtual

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

◆ operator=()

assignment operator

◆ residueTypeToIonLetter_()

char residueTypeToIonLetter_ ( Residue::ResidueType  res_type) const
protected

helper for mapping residue type to letter

◆ updateMembers_()

void updateMembers_ ( )
overridevirtual

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

◆ max_isotope_

Int max_isotope_
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

◆ x_intensity_

double x_intensity_
protected

◆ y_intensity_

double y_intensity_
protected

◆ z_intensity_

double z_intensity_
protected