Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Public Types | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes

EGHModel Class Reference

Exponential-Gaussian hybrid distribution model for elution profiles. More...

#include <OpenMS/SIMULATION/EGHModel.h>

Inheritance diagram for EGHModel:
InterpolationModel BaseModel< 1 > DefaultParamHandler

List of all members.

Public Types

typedef
InterpolationModel::CoordinateType 
CoordinateType
typedef Math::BasicStatistics
< CoordinateType
BasicStatistics
typedef
LinearInterpolation::container_type 
ContainerType

Public Member Functions

 EGHModel ()
 Default constructor.
 EGHModel (const EGHModel &source)
 copy constructor
virtual ~EGHModel ()
 destructor
virtual EGHModeloperator= (const EGHModel &source)
 assignment operator
void setOffset (CoordinateType offset)
 set offset without being computing all over and without any discrepancy
void setSamples ()
 set sample/supporting points of interpolation
CoordinateType getCenter () const
 get the center of the Gaussian model i.e. the position of the maximum

Static Public Member Functions

static BaseModel< 1 > * create ()
 create new ElutionModel object (needed by Factory)
static const String getProductName ()
 name of the model (needed by Factory)

Protected Member Functions

void updateMembers_ ()
 This method is used to update extra member variables at the end of the setParameters() method.
void computeBoundaries_ ()
 Computes a left & right boundary for the EGH Profile and sets the internal parameters accordingly.
void evaluateEGH_ (CoordinateType &rt, CoordinateType &egh_value)
 Evaluate the EGH function at position rt.

Protected Attributes

CoordinateType min_
CoordinateType max_
BasicStatistics statistics_
CoordinateType height_
CoordinateType apex_rt_
CoordinateType A_
CoordinateType B_
CoordinateType tau_
CoordinateType sigma_square_
CoordinateType sigma_square_2_

Detailed Description

Exponential-Gaussian hybrid distribution model for elution profiles.

Lan K, Jorgenson JW. A hybrid of exponential and gaussian functions as a simple model of asymmetric chromatographic peaks. Journal of Chromatography A. 2001;915(1-2):1-13. Available at: http://linkinghub.elsevier.com/retrieve/pii/S0021967301005945

Parameters of this class are:

NameTypeDefaultRestrictionsDescription
cutoff float0  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  Scaling factor used to adjust the model distribution to the intensities of the data
statistics:mean float0  Centroid position of the model.
statistics:variance float1  The variance of the model.
egh:height float1000  Height of the exponential-Gaussian hybrid.
egh:retention float1200  Retention time of the exponential-Gaussian hybrid.
egh:guess_parameter stringtrue true, falseIf set to true, the EGHModel will try to estimate the model parameters (tau and sigma-square) based on A,B, and alpha. If set to false, it will use the parameters tau and sigma-square directly.
egh:A float100  Horizontal distance between the vertical line at the peak maximum (H) and the leading line where the EGH has H*alpha (e.g. the left half-max for alpha=0.5).
egh:B float100  Horizontal distance between the vertical line at the peak maximum (H) and the trailing line where the EGH has H*alpha (e.g. the right half-max for alpha=0.5).
egh:alpha float0.5 min: 0 max: 1See egh:A and egh:B.
egh:tau float0  Time constant of the exponential decay (tau is zero for gaussian peaks).
egh:sigma_square float1803.4 min: 0Standard deviation of the peak.
bounding_box:compute stringtrue true, falseIf true, the EGHModel will compute its own bounding box.
bounding_box:min float0  Lower end of bounding box enclosing the data used to fit the model.
bounding_box:max float0  Upper end of bounding box enclosing the data used to fit the model.

Note:

Member Typedef Documentation


Constructor & Destructor Documentation

EGHModel (  ) 

Default constructor.

EGHModel ( const EGHModel source  ) 

copy constructor

virtual ~EGHModel (  )  [virtual]

destructor


Member Function Documentation

void computeBoundaries_ (  )  [protected]

Computes a left & right boundary for the EGH Profile and sets the internal parameters accordingly.

static BaseModel<1>* create (  )  [inline, static]

create new ElutionModel object (needed by Factory)

void evaluateEGH_ ( CoordinateType rt,
CoordinateType egh_value 
) [inline, protected]

Evaluate the EGH function at position rt.

Parameters:
rt The position where the EGH function should be evaluated. Note that this is the position without the RT offset, meaning that the EGH apex is at position 0
egh_value The computed value
CoordinateType getCenter (  )  const [virtual]

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

Reimplemented from InterpolationModel.

static const String getProductName (  )  [inline, static]

name of the model (needed by Factory)

Referenced by BaseModel< D >::registerChildren().

virtual EGHModel& operator= ( const EGHModel source  )  [virtual]

assignment operator

void setOffset ( CoordinateType  offset  ) 

set offset without being computing all over and without any discrepancy

void setSamples (  )  [virtual]

set sample/supporting points of interpolation

Reimplemented from InterpolationModel.

void updateMembers_ (  )  [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 InterpolationModel.


Member Data Documentation

CoordinateType A_ [protected]
CoordinateType apex_rt_ [protected]
CoordinateType B_ [protected]
CoordinateType height_ [protected]
CoordinateType max_ [protected]
CoordinateType min_ [protected]
CoordinateType tau_ [protected]

OpenMS / TOPP release 1.10.0 Documentation generated on Thu Mar 7 2013 09:42:56 using doxygen 1.7.1