OpenMS
EmgFitter1D Class Reference

Exponentially modified gaussian distribution fitter (1-dim.) using Levenberg-Marquardt algorithm (Eigen implementation) for parameter optimization. More...

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

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

Classes

struct  Data
 Helper struct (contains the size of an area and a raw data container) More...
 
class  EgmFitterFunctor
 

Public Member Functions

 EmgFitter1D ()
 Default constructor. More...
 
 EmgFitter1D (const EmgFitter1D &source)
 copy constructor More...
 
 ~EmgFitter1D () override
 destructor More...
 
virtual EmgFitter1Doperator= (const EmgFitter1D &source)
 assignment operator More...
 
QualityType fit1d (const RawDataArrayType &range, std::unique_ptr< InterpolationModel > &model) override
 return interpolation model More...
 
- Public Member Functions inherited from LevMarqFitter1D
 LevMarqFitter1D ()
 Default constructor. More...
 
 LevMarqFitter1D (const LevMarqFitter1D &source)
 copy constructor More...
 
 ~LevMarqFitter1D () override
 destructor More...
 
LevMarqFitter1Doperator= (const LevMarqFitter1D &source)
 assignment operator More...
 
- Public Member Functions inherited from Fitter1D
 Fitter1D ()
 Default constructor. More...
 
 Fitter1D (const Fitter1D &source)
 copy constructor More...
 
 ~Fitter1D () override
 destructor More...
 
Fitter1Doperator= (const Fitter1D &source)
 assignment operator 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 Fitter1Dcreate ()
 create new EmgFitter1D object (function needed by Factory) More...
 
static const String getProductName ()
 name of the model (needed by Factory) More...
 
- Static Public Member Functions inherited from Fitter1D
static void registerChildren ()
 register all derived classes here 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

virtual void setInitialParameters_ (const RawDataArrayType &set)
 Compute start parameter. More...
 
void setInitialParametersMOM_ (const RawDataArrayType &set)
 
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 LevMarqFitter1D
void optimize_ (Eigen::VectorXd &x_init, GenericFunctor &functor) const
 Optimize start parameter. More...
 
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 height_
 Parameter of emg - peak height. More...
 
CoordinateType width_
 Parameter of emg - peak width. More...
 
CoordinateType symmetry_
 Parameter of emg - peak symmetry. More...
 
CoordinateType retention_
 Parameter of emg - peak retention time. More...
 
- Protected Attributes inherited from LevMarqFitter1D
bool symmetric_
 Parameter indicates symmetric peaks. More...
 
Int max_iteration_
 Maximum number of iterations. More...
 
- Protected Attributes inherited from Fitter1D
CoordinateType tolerance_stdev_box_
 standard derivation in bounding box More...
 
Math::BasicStatistics statistics_
 basic statistics More...
 
CoordinateType interpolation_step_
 interpolation step size More...
 
- 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...
 

Additional Inherited Members

- Public Types inherited from LevMarqFitter1D
typedef std::vector< double > ContainerType
 
- Public Types inherited from Fitter1D
typedef IsotopeCluster::IndexSet IndexSet
 IndexSet. More...
 
typedef IsotopeCluster::ChargedIndexSet ChargedIndexSet
 IndexSet with charge information. More...
 
typedef Feature::CoordinateType CoordinateType
 Single coordinate. More...
 
typedef Feature::QualityType QualityType
 Quality of a feature. More...
 
typedef Peak1D PeakType
 Peak type data point type. More...
 
typedef std::vector< PeakTypeRawDataArrayType
 Peak type data container type using for the temporary storage of the input data. More...
 
typedef RawDataArrayType::iterator PeakIterator
 Peak type data iterator. More...
 
- Public Types inherited from FeatureFinderDefs
enum  Flag { UNUSED , USED }
 Flags that indicate if a peak is already used in a feature. More...
 
typedef IsotopeCluster::IndexPair IndexPair
 Index to peak consisting of two UInts (scan index / peak index) More...
 
typedef IsotopeCluster::ChargedIndexSet ChargedIndexSet
 Index to peak consisting of two UInts (scan index / peak index) with charge information. More...
 
typedef IsotopeCluster::IndexSet IndexSet
 A set of peak indices. More...
 

Detailed Description

Exponentially modified gaussian distribution fitter (1-dim.) using Levenberg-Marquardt algorithm (Eigen implementation) for parameter optimization.

Parameters of this class are:

NameTypeDefaultRestrictionsDescription
interpolation_step float0.2  Sampling rate for the interpolation of the model function.
tolerance_stdev_bounding_box float3.0  Bounding box has range [minimim of data, maximum of data] enlarged by tolerance_stdev_bounding_box times the standard deviation of the data.
max_iteration int500  Maximum number of iterations using by Levenberg-Marquardt algorithm.
init_mom stringfalse true, falseInitialize parameters using method of moments estimators.
statistics:mean float1.0  Centroid position of the model.
statistics:variance float1.0  Variance of the model.

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

Class Documentation

◆ OpenMS::EmgFitter1D::Data

struct OpenMS::EmgFitter1D::Data

Helper struct (contains the size of an area and a raw data container)

Collaboration diagram for EmgFitter1D::Data:
[legend]
Class Members
typedef Peak1D PeakType
typedef vector< PeakType > RawDataArrayType
Class Members
Size n
RawDataArrayType set

Constructor & Destructor Documentation

◆ EmgFitter1D() [1/2]

Default constructor.

◆ EmgFitter1D() [2/2]

EmgFitter1D ( const EmgFitter1D source)

copy constructor

◆ ~EmgFitter1D()

~EmgFitter1D ( )
override

destructor

Member Function Documentation

◆ create()

static Fitter1D* create ( )
inlinestatic

create new EmgFitter1D object (function needed by Factory)

◆ fit1d()

QualityType fit1d ( const RawDataArrayType range,
std::unique_ptr< InterpolationModel > &  model 
)
overridevirtual

return interpolation model

Reimplemented from Fitter1D.

Referenced by EmgScoring::fitRT_().

◆ getProductName()

static const String getProductName ( )
inlinestatic

name of the model (needed by Factory)

◆ operator=()

virtual EmgFitter1D& operator= ( const EmgFitter1D source)
virtual

assignment operator

◆ setInitialParameters_()

virtual void setInitialParameters_ ( const RawDataArrayType set)
protectedvirtual

Compute start parameter.

◆ setInitialParametersMOM_()

void setInitialParametersMOM_ ( const RawDataArrayType set)
protected

Compute start parameters using method of moments (usually reduces nr. of iterations needed at some additional one-time costs

◆ 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

◆ height_

CoordinateType height_
protected

Parameter of emg - peak height.

◆ retention_

CoordinateType retention_
protected

Parameter of emg - peak retention time.

◆ symmetry_

CoordinateType symmetry_
protected

Parameter of emg - peak symmetry.

◆ width_

CoordinateType width_
protected

Parameter of emg - peak width.