OpenMS
ExtendedIsotopeModel Class Reference

Extended isotope distribution approximated using linear interpolation. More...

#include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/ExtendedIsotopeModel.h>

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

Public Types

enum  Averagines {
  C = 0 , H , N , O ,
  S , AVERAGINE_NUM
}
 
typedef InterpolationModel::CoordinateType CoordinateType
 
typedef InterpolationModel::CoordinateType IntensityType
 
- Public Types inherited from InterpolationModel
typedef double IntensityType
 
typedef DPosition< 1 > PositionType
 
typedef double CoordinateType
 
using KeyType = double
 
typedef Math::LinearInterpolation< KeyTypeLinearInterpolation
 
- Public Types inherited from BaseModel< 1 >
typedef double IntensityType
 
typedef double CoordinateType
 
typedef DPosition< D > PositionType
 
typedef DPeak< D >::Type PeakType
 
typedef std::vector< PeakTypeSamplesType
 

Public Member Functions

 ExtendedIsotopeModel ()
 Default constructor. More...
 
 ExtendedIsotopeModel (const ExtendedIsotopeModel &source)
 copy constructor More...
 
 ~ExtendedIsotopeModel () override
 destructor More...
 
virtual ExtendedIsotopeModeloperator= (const ExtendedIsotopeModel &source)
 assignment operator More...
 
UInt getCharge () const
 
void setOffset (CoordinateType offset) override
 set the offset of the model More...
 
CoordinateType getOffset ()
 
void setSamples () override
 set sample/supporting points of interpolation More...
 
CoordinateType getCenter () const override
 get the monoisotopic mass of the Isotope model More...
 
- Public Member Functions inherited from InterpolationModel
 InterpolationModel ()
 Default constructor. More...
 
 InterpolationModel (const InterpolationModel &source)
 copy constructor More...
 
 ~InterpolationModel () override=default
 destructor More...
 
InterpolationModeloperator= (const InterpolationModel &source)
 assignment operator More...
 
IntensityType getIntensity (const PositionType &pos) const override
 access model predicted intensity at position pos More...
 
IntensityType getIntensity (CoordinateType coord) const
 access model predicted intensity at position pos More...
 
const LinearInterpolationgetInterpolation () const
 Returns the interpolation class. More...
 
CoordinateType getScalingFactor () const
 get the scaling for the model More...
 
void getSamples (SamplesType &cont) const override
 get reasonable set of samples from the model (i.e. for printing) More...
 
void setInterpolationStep (CoordinateType interpolation_step)
 Set the interpolation step for the linear interpolation of the model. More...
 
void setScalingFactor (CoordinateType scaling)
 
- Public Member Functions inherited from BaseModel< 1 >
 BaseModel ()
 Default constructor. More...
 
 BaseModel (const BaseModel &source)
 copy constructor More...
 
 ~BaseModel () override
 Destructor. More...
 
BaseModeloperator= (const BaseModel &source)
 assignment operator More...
 
void registerChildren ()
 
void registerChildren ()
 
virtual IntensityType getIntensity (const PositionType &pos) const=0
 access model predicted intensity at position pos More...
 
virtual bool isContained (const PositionType &pos) const
 check if position pos is part of the model regarding the models cut-off. More...
 
void fillIntensity (PeakType &peak) const
 Convenience function to set the intensity of a peak to the predicted intensity at its current position, calling virtual void getIntensity(). More...
 
void fillIntensities (PeakIterator begin, PeakIterator end) const
 Convenience function that applies fillIntensity() to an iterator range. More...
 
virtual IntensityType getCutOff () const
 get cutoff value More...
 
virtual void setCutOff (IntensityType cut_off)
 set cutoff value More...
 
virtual void getSamples (std::ostream &os)
 fill stream with reasonable set of samples from the model (i.e. for printing) 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...
 
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...
 

Static Public Member Functions

static BaseModel< 1 > * create ()
 create new ExtendedIsotopeModel object (needed by Factory) More...
 
static const String getProductName ()
 name of the model (needed by Factory) More...
 
- Static Public Member Functions inherited from BaseModel< 1 >
static void registerChildren ()
 register all derived classes here (implemented in file BaseModel_impl.h) More...
 
- 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

void updateMembers_ () override
 This method is used to update extra member variables at the end of the setParameters() method. More...
 
- Protected Member Functions inherited from InterpolationModel
void updateMembers_ () override
 This method is used to update extra member variables at the end of the setParameters() method. More...
 
- Protected Member Functions inherited from BaseModel< 1 >
void updateMembers_ () override
 This method is used to update extra member variables at the end of the setParameters() method. More...
 
- Protected Member Functions inherited from DefaultParamHandler
void defaultsToParam_ ()
 Updates the parameters after the defaults have been set in the constructor. More...
 

Protected Attributes

CoordinateType isotope_stdev_
 
UInt charge_
 
CoordinateType monoisotopic_mz_
 
double averagine_ [AVERAGINE_NUM]
 
Int max_isotope_
 
double trim_right_cutoff_
 
double isotope_distance_
 
- Protected Attributes inherited from InterpolationModel
LinearInterpolation interpolation_
 
CoordinateType interpolation_step_
 
CoordinateType scaling_
 
- Protected Attributes inherited from BaseModel< 1 >
IntensityType cut_off_
 
- 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

Extended isotope distribution approximated using linear interpolation.

This models a smoothed (widened) distribution, i.e. can be used to sample actual raw peaks (depending on the points you query). If you only want the distribution (no widening), use either EmpiricalFormula::getIsotopeDistribution() // for a certain sum formula or IsotopeDistribution::estimateFromPeptideWeight (double average_weight) // for averagine

Peak widening is achieved by a Gaussian shape.

Parameters of this class are:

NameTypeDefaultRestrictionsDescription
cutoff float0.0  Low intensity cutoff of the model. Peaks below this intensity are not considered part of the model.
interpolation_step float0.1  Sampling rate for the interpolation of the model function
intensity_scaling float1.0  Scaling factor used to adjust the model distribution to the intensities of the data
charge int1  Charge state of the model.
averagines:C float0.044439889490604  Number of C atoms per Dalton of mass.
averagines:H float0.069815717637539  Number of H atoms per Dalton of mass.
averagines:N float0.012217730283737  Number of N atoms per Dalton of mass.
averagines:O float0.013293989934027  Number of O atoms per Dalton of mass.
averagines:S float3.752500051632524e-04  Number of S atoms per Dalton of mass.
isotope:trim_right_cutoff float1.0e-03  Cutoff in averagine distribution, trailing isotopes below this relative intensity are not considered.
isotope:maximum int100  Maximum isotopic rank to be considered.
isotope:distance float1.000495  Distance between consecutive isotopic peaks.
isotope:stdev float0.1  Standard deviation of gaussian applied to the averagine isotopic pattern to simulate the inaccuracy of the mass spectrometer.
isotope:monoisotopic_mz float1.0  Monoisotopic m/z of the model.

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

Member Typedef Documentation

◆ CoordinateType

◆ IntensityType

Member Enumeration Documentation

◆ Averagines

enum Averagines
Enumerator
AVERAGINE_NUM 

Constructor & Destructor Documentation

◆ ExtendedIsotopeModel() [1/2]

Default constructor.

◆ ExtendedIsotopeModel() [2/2]

copy constructor

◆ ~ExtendedIsotopeModel()

~ExtendedIsotopeModel ( )
override

destructor

Member Function Documentation

◆ create()

static BaseModel<1>* create ( )
inlinestatic

create new ExtendedIsotopeModel object (needed by Factory)

◆ getCenter()

CoordinateType getCenter ( ) const
overridevirtual

get the monoisotopic mass of the Isotope model

Reimplemented from InterpolationModel.

◆ getCharge()

UInt getCharge ( ) const

◆ getOffset()

CoordinateType getOffset ( )

◆ getProductName()

static const String getProductName ( )
inlinestatic

name of the model (needed by Factory)

◆ operator=()

virtual ExtendedIsotopeModel& operator= ( const ExtendedIsotopeModel source)
virtual

assignment operator

◆ setOffset()

void setOffset ( CoordinateType  offset)
overridevirtual

set the offset of the model

The whole model will be shifted to the new offset without being computing all over. This leaves a discrepancy which is minor in small shifts (i.e. shifting by one or two standard deviations) but can get significant otherwise. In that case use setParameters() which enforces a recomputation of the model.

Reimplemented from InterpolationModel.

◆ setSamples()

void setSamples ( )
overridevirtual

set sample/supporting points of interpolation

Reimplemented from InterpolationModel.

◆ updateMembers_()

void updateMembers_ ( )
overrideprotectedvirtual

This method is used to update extra member variables at the end of the setParameters() method.

Also call it at the end of the derived classes' copy constructor and assignment operator.

The default implementation is empty.

Reimplemented from DefaultParamHandler.

Member Data Documentation

◆ averagine_

double averagine_[AVERAGINE_NUM]
protected

◆ charge_

UInt charge_
protected

◆ isotope_distance_

double isotope_distance_
protected

◆ isotope_stdev_

CoordinateType isotope_stdev_
protected

◆ max_isotope_

Int max_isotope_
protected

◆ monoisotopic_mz_

CoordinateType monoisotopic_mz_
protected

◆ trim_right_cutoff_

double trim_right_cutoff_
protected