| OpenMS 2.5.0

Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
BiGaussModel Class Reference

BiGaussian distribution approximated using linear interpolation. More...

`#include <OpenMS/TRANSFORMATIONS/FEATUREFINDER/BiGaussModel.h>`

Inheritance diagram for BiGaussModel:

## Public Types

typedef InterpolationModel::CoordinateType | CoordinateType
Public Types inherited from InterpolationModel
typedef double | IntensityType
typedef DPosition< 1 > | PositionType
typedef double | CoordinateType
typedef Math::LinearInterpolation< double > | LinearInterpolation
Public Types inherited from BaseModel< 1 >
typedef double | IntensityType
typedef double | CoordinateType
typedef DPosition< D > | PositionType
typedef DPeak< D >::Type | PeakType
typedef std::vector< PeakType > | SamplesType

## Public Member Functions

| BiGaussModel ()
| Default constructor. More...
| BiGaussModel (const BiGaussModel &source)
| copy constructor More...
| ~BiGaussModel () override
| destructor More...
virtual BiGaussModel & | operator= (const BiGaussModel &source)
| assignment operator More...
void | setOffset (CoordinateType offset) override
| set the offset of the model More...
void | setSamples () override
| set sample/supporting points of interpolation More...
CoordinateType | getCenter () const override
| get the center of the BiGaussian model i.e. the position of the maximum More...
Public Member Functions inherited from InterpolationModel
| InterpolationModel ()
| Default constructor. More...
| InterpolationModel (const InterpolationModel &source)
| copy constructor More...
| ~InterpolationModel () override
| destructor More...
virtual InterpolationModel & | operator= (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 LinearInterpolation & | getInterpolation () 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...
virtual BaseModel & | operator= (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...
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...

## Static Public Member Functions

static BaseModel< 1 > * | create ()
| create new BiGaussModel object (function 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...

## 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 | min_
CoordinateType | max_
Math::BasicStatistics | statistics1_
Math::BasicStatistics | statistics2_
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< 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

BiGaussian distribution approximated using linear interpolation.

Asymmetric distribution realized via two normal distributions with different variances combined at the mean.

Parameters of this class are:

Name | Type | Default | Restrictions | Description
--- | --- | --- | --- | ---
cutoff | float | 0.0 |  | Low intensity cutoff of the model. Peaks below this intensity are not considered part of the model.
interpolation_step | float | 0.1 |  | Sampling rate for the interpolation of the model function
intensity_scaling | float | 1.0 |  | Scaling factor used to adjust the model distribution to the intensities of the data
bounding_box:min | float | 0.0 |  | Lower end of bounding box enclosing the data used to fit the model.
bounding_box:max | float | 1.0 |  | Upper end of bounding box enclosing the data used to fit the model.
statistics:mean | float | 0.0 |  | Centroid position of the model, this also separates both halves of the model.
statistics:variance1 | float | 1.0 |  | Variance of the first gaussian, used for the lower half of the model.
statistics:variance2 | float | 1.0 |  | Variance of the second gaussian, used for the upper half 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

typedef InterpolationModel::CoordinateType CoordinateType

## Constructor & Destructor Documentation

## ◆ BiGaussModel() [1/2]

BiGaussModel | ( |  | ) |

Default constructor.

## ◆ BiGaussModel() [2/2]

BiGaussModel | ( | const BiGaussModel & | source | ) |

copy constructor

## ◆ ~BiGaussModel()

~BiGaussModel | ( |  | ) |

override

destructor

## Member Function Documentation

## ◆ create()

static BaseModel<1>* create | ( |  | ) |

inline static

create new BiGaussModel object (function needed by Factory)

## ◆ getCenter()

CoordinateType getCenter | ( |  | ) | const

override virtual

get the center of the BiGaussian model i.e. the position of the maximum

Reimplemented from InterpolationModel.

## ◆ getProductName()

static const String getProductName | ( |  | ) |

inline static

name of the model (needed by Factory)

## ◆ operator=()

virtual BiGaussModel& operator= | ( | const BiGaussModel & | source | ) |

virtual

assignment operator

## ◆ setOffset()

void setOffset | ( | CoordinateType | offset | ) |

override virtual

set the offset of the model

The whole model will be shifted to the new offset without being computing all over and without any discrepancy.

Reimplemented from InterpolationModel.

## ◆ setSamples()

void setSamples | ( |  | ) |

override virtual

set sample/supporting points of interpolation

Reimplemented from InterpolationModel.

## ◆ updateMembers_()

void updateMembers_ | ( |  | ) |

override protected virtual

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

## ◆ max_

CoordinateType max_

protected

## ◆ min_

CoordinateType min_

protected

## ◆ statistics1_

Math::BasicStatistics statistics1_

protected

## ◆ statistics2_

Math::BasicStatistics statistics2_

protected