Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages

IsotopeWavelet Class Reference
[FeatureFinder]

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

List of all members.


Detailed Description

Implements the isotope wavelet function.

The IsotopeWavelet class implements the isotope wavelet as described by R. Hussong, A. Tholey, A. Hildebrandt: Efficient Analysis of Mass Spectrometry Data Using the Isotope Wavelet. Proceedings of the 3rd international Symposium in Computational Life Sciences (Complife07). American Institute of Physics (AIP) Proceedings (2007).

Note:
This class features a singleton design pattern.

Public Member Functions

virtual ~IsotopeWavelet () throw ()
 Destructor.

Static Public Member Functions

static IsotopeWaveletinit (const DoubleReal max_m, const UInt max_charge) throw ()
static IsotopeWaveletgetInstance () throw ()
static DoubleReal getValueByMass (const DoubleReal t, const DoubleReal m, const UInt z, const Int mode=+1) throw ()
 Returns the value of the isotope wavelet at position t. Usually, you do not need to call this function. Please use.
static DoubleReal getValueByLambda (const DoubleReal lambda, const DoubleReal tz1) throw ()
 Returns the value of the isotope wavelet at position t via a fast table lookup. Usually, you do not need to call this function. Please use.
static DoubleReal getValueByLambdaExtrapol (const DoubleReal lambda, const DoubleReal tz1) throw ()
 Returns the value of the isotope wavelet at position t. This function is usually significantly slower than the table lookup performed in.
static UInt getMaxCharge () throw ()
 Returns the largest charge state we will consider.
static void setMaxCharge (const UInt max_charge) throw ()
 Sets the max_charge parameter.
static DoubleReal getTableSteps () throw ()
 Returns the table_steps_ parameter.
static void setTableSteps (const DoubleReal table_steps) throw ()
 Sets the table_steps parameter.
static DoubleReal getLambdaL (const DoubleReal m) throw ()
 Returns the mass-parameter lambda (linear fit).
static DoubleReal getLambdaQ (const DoubleReal m) throw ()
 Returns the mass-parameter lambda (quadratic fit).
static const
IsotopeDistribution::ContainerType
getAveragine (const DoubleReal m, UInt *size=NULL) throw ()
 Computes the averagine isotopic distribution we would expect at the deconvoluted mass.

Protected Member Functions

 IsotopeWavelet () throw ()
 Default Constructor.
 IsotopeWavelet (const DoubleReal max_m, const UInt max_charge) throw ()
 Constructor.

Static Protected Member Functions

static void preComputeExpensiveFunctions_ (const DoubleReal max_m) throw ()
 Should be called once before values are drawn from the isotope wavelet function. The function is automatically called by the public constructor.
static void computeIsotopeDistributionSize_ (const DoubleReal max_m) throw ()
 Initializes the internally used averagine model; automatically called by the public constructor.
static float myPow_ (float a, float b) throw ()
 Internally used function; uses register shifts for fast computation of the power function.
static float myPow2_ (float i) throw ()
 Internally used function; uses register shifts for fast computation of the power function. The function follows http://www.dctsystems.co.uk/Software/power.html , code by Ian Stephenson, DCT Systems, NCCA Bournemouth University.
static float myLog2_ (float i) throw ()
 Internally used function uses register shifts for fast computation of the power function. The function follows http://www.dctsystems.co.uk/Software/power.html , code by Ian Stephenson, DCT Systems, NCCA Bournemouth University.

Static Protected Attributes

static IsotopeWaveletme_
static UInt max_charge_
static DoubleReal table_steps_
static DoubleReal inv_table_steps_
static std::vector< DoubleRealgamma_table_
static std::vector< DoubleRealexp_table_
static IsotopeDistribution averagine_

Classes

union  fi_
 Internal union for fast computation of the power function. More...

Constructor & Destructor Documentation

virtual ~IsotopeWavelet (  )  throw () [virtual]

Destructor.

IsotopeWavelet (  )  throw () [protected]

Default Constructor.

IsotopeWavelet ( const DoubleReal  max_m,
const UInt  max_charge 
) throw () [protected]

Constructor.

Parameters:
max_m The maximal deconvoluted mass that occurs in the current data set.
max_charge The maximal charge state we would like to analyze.


Member Function Documentation

static IsotopeWavelet* init ( const DoubleReal  max_m,
const UInt  max_charge 
) throw () [static]

The init function; creates an instance of this singleton class.

static IsotopeWavelet* getInstance (  )  throw () [inline, static]

Returns an pointer to the current instance of the class.

static DoubleReal getValueByMass ( const DoubleReal  t,
const DoubleReal  m,
const UInt  z,
const Int  mode = +1 
) throw () [inline, static]

Returns the value of the isotope wavelet at position t. Usually, you do not need to call this function. Please use.

See also:
sampleTheWavelet instead.
Note that this functions returns the pure function value of psi and not the normalized (average=0) value given by Psi.
Parameters:
t The position at which the wavelet has to be drawn (within the coordinate system of the wavelet).
m The m/z position within the signal (i.e. the mass not decharged) within the signal.
z The charge z we want to detect.
mode Indicates whether positive mode (+1) or negative mode (-1) has been used for ionization.

static DoubleReal getValueByLambda ( const DoubleReal  lambda,
const DoubleReal  tz1 
) throw () [static]

Returns the value of the isotope wavelet at position t via a fast table lookup. Usually, you do not need to call this function. Please use.

See also:
sampleTheWavelet instead.
Note that this functions returns the pure function value of psi and not the normalized (average=0) value given by Psi.
Parameters:
lambda The mass-parameter lambda.
tz1 t (the position) times the charge (z) plus 1.

static DoubleReal getValueByLambdaExtrapol ( const DoubleReal  lambda,
const DoubleReal  tz1 
) throw () [static]

Returns the value of the isotope wavelet at position t. This function is usually significantly slower than the table lookup performed in.

See also:
getValueByLambda. Nevertheless, it might be necessary to call this function due to extrapolating reasons caused by the alignment of the wavelet.
Usually, you do not need to call this function. Please use
See also:
sampleTheWavelet instead.
Note that this functions returns the pure function value of psi and not the normalized (average=0) value given by Psi.
Parameters:
lambda The mass-parameter lambda.
tz1 t (the position) times the charge (z) plus 1.

static UInt getMaxCharge (  )  throw () [inline, static]

Returns the largest charge state we will consider.

static void setMaxCharge ( const UInt  max_charge  )  throw () [inline, static]

Sets the max_charge parameter.

static DoubleReal getTableSteps (  )  throw () [inline, static]

Returns the table_steps_ parameter.

This is an internally used parameter controlling the precision of several pre-sampling steps. Normally, this parameter can be left unchanged.

static void setTableSteps ( const DoubleReal  table_steps  )  throw () [inline, static]

Sets the table_steps parameter.

static DoubleReal getLambdaL ( const DoubleReal  m  )  throw () [static]

Returns the mass-parameter lambda (linear fit).

Note:
The only possibility to switch between
See also:
getLambdaL and

getLambdaQ is pure hardcoding.

static DoubleReal getLambdaQ ( const DoubleReal  m  )  throw () [static]

Returns the mass-parameter lambda (quadratic fit).

Note:
The only possibility to switch between getLambdaL and getLambdaQ is pure hardcoding.

static const IsotopeDistribution::ContainerType& getAveragine ( const DoubleReal  m,
UInt size = NULL 
) throw () [static]

Computes the averagine isotopic distribution we would expect at the deconvoluted mass.

Parameters:
m The deconvoluted mass m.
size Returns the number of significant peaks within a pattern occurring at mass m.
Returns:
The isotopic distribution.

static void preComputeExpensiveFunctions_ ( const DoubleReal  max_m  )  throw () [static, protected]

Should be called once before values are drawn from the isotope wavelet function. The function is automatically called by the public constructor.

The function pre-computes the expensive gamma function. Parameters related to this function are:

See also:
max_charge_ and

peak_cutoff_. If both of these are set correctly

getValue will never compute the gamma function online.

Parameters:
max_m The maximal deconvoluted mass that occurs in the current data set.

static void computeIsotopeDistributionSize_ ( const DoubleReal  max_m  )  throw () [static, protected]

Initializes the internally used averagine model; automatically called by the public constructor.

Parameters:
max_m The maximal deconvoluted mass that occurs in the current data set.

static float myPow_ ( float  a,
float  b 
) throw () [static, protected]

Internally used function; uses register shifts for fast computation of the power function.

Note:
Please, do not modify this function.

static float myPow2_ ( float  i  )  throw () [static, protected]

Internally used function; uses register shifts for fast computation of the power function. The function follows http://www.dctsystems.co.uk/Software/power.html , code by Ian Stephenson, DCT Systems, NCCA Bournemouth University.

Note:
Please, do not modify this function.

static float myLog2_ ( float  i  )  throw () [static, protected]

Internally used function uses register shifts for fast computation of the power function. The function follows http://www.dctsystems.co.uk/Software/power.html , code by Ian Stephenson, DCT Systems, NCCA Bournemouth University.

Note:
Please, do not modify this function.


Member Data Documentation

IsotopeWavelet* me_ [static, protected]

The singleton pointer.

UInt max_charge_ [static, protected]

This parameter determines the maximal charge state we will consider.

DoubleReal table_steps_ [static, protected]

This parameter determines the sample rate for the pre-computation of the gamma function.

DoubleReal inv_table_steps_ [static, protected]

std::vector<DoubleReal> gamma_table_ [static, protected]

Internal table for the precomputed values of the gamma function.

std::vector<DoubleReal> exp_table_ [static, protected]

Internal table for the precomputed values of the exponential function.

IsotopeDistribution averagine_ [static, protected]

Internally used averagine model.


The documentation for this class was generated from the following file:
Generated Tue Apr 1 15:36:47 2008 -- using doxygen 1.5.4 OpenMS / TOPP 1.1