Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
Classes | Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
IsotopeWaveletTransform< PeakType > Class Template Reference

A class implementing the isotope wavelet transform. If you just want to find features using the isotope wavelet, take a look at the FeatureFinderAlgorithmIsotopeWavelet class. Usually, you only have to consider the class at hand if you plan to change the basic implementation of the transform. More...

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

Classes

struct  BoxElement
 Internally used data structure. More...
 
class  TransSpectrum
 Internally (only by GPUs) used data structure . It allows efficient data exchange between CPU and GPU and avoids unnecessary memory moves. The class is tailored on the isotope wavelet transform and is in general not applicable on similar - but different - situations. More...
 

Public Types

typedef std::multimap< UInt,
BoxElement
Box
 Key: RT index, value: BoxElement. More...
 

Public Member Functions

 IsotopeWaveletTransform (const DoubleReal min_mz, const DoubleReal max_mz, const UInt max_charge, const Size max_scan_size=0, const bool use_cuda=false, const bool hr_data=false, const String intenstype="ref")
 Constructor. More...
 
virtual ~IsotopeWaveletTransform ()
 Destructor. More...
 
virtual void getTransform (MSSpectrum< PeakType > &c_trans, const MSSpectrum< PeakType > &c_ref, const UInt c)
 Computes the isotope wavelet transform of charge state c. More...
 
virtual void getTransformHighRes (MSSpectrum< PeakType > &c_trans, const MSSpectrum< PeakType > &c_ref, const UInt c)
 Computes the isotope wavelet transform of charge state c. More...
 
virtual void identifyCharge (const MSSpectrum< PeakType > &candidates, const MSSpectrum< PeakType > &ref, const UInt scan_index, const UInt c, const DoubleReal ampl_cutoff, const bool check_PPMs)
 Given an isotope wavelet transformed spectrum candidates, this function assigns to every significant pattern its corresponding charge state and a score indicating the reliability of the prediction. The result of this process is stored internally. Important: Before calling this function, apply updateRanges() to the original map. More...
 
virtual void initializeScan (const MSSpectrum< PeakType > &c_ref, const UInt c=0)
 
void updateBoxStates (const MSExperiment< PeakType > &map, const Size scan_index, const UInt RT_interleave, const UInt RT_votes_cutoff, const Int front_bound=-1, const Int end_bound=-1)
 A function keeping track of currently open and closed sweep line boxes. This function is used by the isotope wavelet feature finder and must be called for each processed scan. More...
 
void mergeFeatures (IsotopeWaveletTransform< PeakType > *later_iwt, const UInt RT_interleave, const UInt RT_votes_cutoff)
 
FeatureMap< FeaturemapSeeds2Features (const MSExperiment< PeakType > &map, const UInt RT_votes_cutoff)
 Filters the candidates further more and maps the internally used data structures to the OpenMS framework. More...
 
virtual std::multimap
< DoubleReal, Box
getClosedBoxes ()
 Returns the closed boxes. More...
 
DoubleReal getLinearInterpolation (const typename MSSpectrum< PeakType >::const_iterator &left_iter, const DoubleReal mz_pos, const typename MSSpectrum< PeakType >::const_iterator &right_iter)
 Computes a linear (intensity) interpolation. More...
 
DoubleReal getLinearInterpolation (const DoubleReal mz_a, const DoubleReal intens_a, const DoubleReal mz_pos, const DoubleReal mz_b, const DoubleReal intens_b)
 Computes a linear (intensity) interpolation. More...
 
DoubleReal getSigma () const
 
void setSigma (const DoubleReal sigma)
 
virtual void computeMinSpacing (const MSSpectrum< PeakType > &c_ref)
 
DoubleReal getMinSpacing () const
 
Size getMaxScanSize () const
 

Protected Member Functions

 IsotopeWaveletTransform ()
 Default Constructor. More...
 
void sampleTheCMarrWavelet_ (const MSSpectrum< PeakType > &scan, const Int wavelet_length, const Int mz_index, const UInt charge)
 
virtual DoubleReal scoreThis_ (const TransSpectrum &candidate, const UInt peak_cutoff, const DoubleReal seed_mz, const UInt c, const DoubleReal ampl_cutoff)
 Given a candidate for an isotopic pattern, this function computes the corresponding score. More...
 
virtual DoubleReal scoreThis_ (const MSSpectrum< PeakType > &candidate, const UInt peak_cutoff, const DoubleReal seed_mz, const UInt c, const DoubleReal ampl_cutoff)
 Given a candidate for an isotopic pattern, this function computes the corresponding score. More...
 
virtual bool checkPositionForPlausibility_ (const TransSpectrum &candidate, const MSSpectrum< PeakType > &ref, const DoubleReal seed_mz, const UInt c, const UInt scan_index, const bool check_PPMs, const DoubleReal transintens, const DoubleReal prev_score)
 A ugly but necessary function to handle "off-by-1-Dalton predictions" due to idiosyncrasies of the data set (in comparison to the averagine model) More...
 
virtual bool checkPositionForPlausibility_ (const MSSpectrum< PeakType > &candidate, const MSSpectrum< PeakType > &ref, const DoubleReal seed_mz, const UInt c, const UInt scan_index, const bool check_PPMs, const DoubleReal transintens, const DoubleReal prev_score)
 A ugly but necessary function to handle "off-by-1-Dalton predictions" due to idiosyncrasies of the data set (in comparison to the averagine model) More...
 
virtual std::pair< DoubleReal,
DoubleReal
checkPPMTheoModel_ (const MSSpectrum< PeakType > &ref, const DoubleReal c_mz, const UInt c)
 
DoubleReal getAvIntens_ (const TransSpectrum &scan)
 Computes the average (transformed) intensity (neglecting negative values) of scan. More...
 
DoubleReal getAvIntens_ (const MSSpectrum< PeakType > &scan)
 Computes the average intensity (neglecting negative values) of scan. More...
 
DoubleReal getSdIntens_ (const TransSpectrum &scan, const DoubleReal mean)
 Computes the standard deviation (neglecting negative values) of the (transformed) intensities of scan. More...
 
DoubleReal getSdIntens_ (const MSSpectrum< PeakType > &scan, const DoubleReal mean)
 Computes the standard deviation (neglecting negative values) of the intensities of scan. More...
 
virtual void push2Box_ (const DoubleReal mz, const UInt scan, UInt c, const DoubleReal score, const DoubleReal intens, const DoubleReal rt, const UInt MZ_begin, const UInt MZ_end, const DoubleReal ref_intens)
 Inserts a potential isotopic pattern into an open box or - if no such box exists - creates a new one. More...
 
virtual void push2TmpBox_ (const DoubleReal mz, const UInt scan, UInt charge, const DoubleReal score, const DoubleReal intens, const DoubleReal rt, const UInt MZ_begin, const UInt MZ_end)
 Essentially the same function as. More...
 
DoubleReal getAvMZSpacing_ (const MSSpectrum< PeakType > &scan)
 Computes the average MZ spacing of scan. More...
 
void clusterSeeds_ (const TransSpectrum &candidates, const MSSpectrum< PeakType > &ref, const UInt scan_index, const UInt c, const bool check_PPMs)
 Clusters the seeds stored by push2TmpBox_. More...
 
virtual void clusterSeeds_ (const MSSpectrum< PeakType > &candidates, const MSSpectrum< PeakType > &ref, const UInt scan_index, const UInt c, const bool check_PPMs)
 Clusters the seeds stored by push2TmpBox_. More...
 
void extendBox_ (const MSExperiment< PeakType > &map, const Box box)
 A currently still necessary function that extends the box box in order to capture also signals whose isotopic pattern is nearly diminishing. More...
 
DoubleReal peptideMassRule_ (const DoubleReal c_mass) const
 Returns the monoisotopic mass (with corresponding decimal values) we would expect at c_mass. More...
 
DoubleReal getPPMs_ (const DoubleReal mass_a, const DoubleReal mass_b) const
 Returns the parts-per-million deviation of the masses. More...
 

Protected Attributes

std::multimap< DoubleReal, Boxopen_boxes_
 
std::multimap< DoubleReal, Boxclosed_boxes_
 
std::multimap< DoubleReal, Boxend_boxes_
 
std::multimap< DoubleReal, Boxfront_boxes_
 
std::vector< std::multimap
< DoubleReal, Box > > * 
tmp_boxes_
 
DoubleReal av_MZ_spacing_
 
DoubleReal sigma_
 
std::vector< DoubleRealc_mzs_
 
std::vector< DoubleRealc_spacings_
 
std::vector< DoubleRealpsi_
 
std::vector< DoubleRealprod_
 
std::vector< DoubleRealxs_
 
std::vector< DoubleRealinterpol_xs_
 
std::vector< DoubleRealinterpol_ys_
 
Size max_scan_size_
 
UInt max_num_peaks_per_pattern_
 
UInt max_charge_
 
UInt data_length_
 
bool hr_data_
 
String intenstype_
 
Int from_max_to_left_
 
Int from_max_to_right_
 
std::vector< int > indices_
 
MSSpectrum< PeakTypec_sorted_candidate_
 
DoubleReal min_spacing_
 
DoubleReal max_mz_cutoff_
 
std::vector< float > scores_
 
std::vector< float > zeros_
 

Detailed Description

template<typename PeakType>
class OpenMS::IsotopeWaveletTransform< PeakType >

A class implementing the isotope wavelet transform. If you just want to find features using the isotope wavelet, take a look at the FeatureFinderAlgorithmIsotopeWavelet class. Usually, you only have to consider the class at hand if you plan to change the basic implementation of the transform.

Member Typedef Documentation

typedef std::multimap<UInt, BoxElement> Box

Key: RT index, value: BoxElement.

Constructor & Destructor Documentation

IsotopeWaveletTransform ( const DoubleReal  min_mz,
const DoubleReal  max_mz,
const UInt  max_charge,
const Size  max_scan_size = 0,
const bool  use_cuda = false,
const bool  hr_data = false,
const String  intenstype = "ref" 
)

Constructor.

Parameters
min_mzThe smallest m/z value occurring in your map.
max_mzThe largest m/z value occurring in your map.
max_chargeThe highest charge state you would like to consider.

References OpenMS::Constants::CUDA_EXTENDED_BLOCK_SIZE_MAX, OpenMS::Constants::DEFAULT_NUM_OF_INTERPOLATION_POINTS, IsotopeWavelet::getMzPeakCutOffAtMonoPos(), IsotopeWavelet::getNumPeakCutOff(), IsotopeWavelet::init(), OpenMS::Constants::IW_NEUTRON_MASS, and NULL.

Destructor.

References NULL.

IsotopeWaveletTransform ( )
protected

Default Constructor.

Note
Provided just for inheritance reasons. You should always use the other constructor.

References NULL.

Member Function Documentation

bool checkPositionForPlausibility_ ( const TransSpectrum candidate,
const MSSpectrum< PeakType > &  ref,
const DoubleReal  seed_mz,
const UInt  c,
const UInt  scan_index,
const bool  check_PPMs,
const DoubleReal  transintens,
const DoubleReal  prev_score 
)
protectedvirtual

A ugly but necessary function to handle "off-by-1-Dalton predictions" due to idiosyncrasies of the data set (in comparison to the averagine model)

Parameters
candidateThe wavelet transformed spectrum containing the candidate.
refThe original spectrum containing the candidate.
seed_mzThe m/z position of the candidate pattern.
cThe predicted charge state minus 1 (e.g. c=2 means charge state 3) of the candidate.
scan_indexThe index of the scan under consideration (w.r.t. the original map).

References IsotopeWaveletTransform< PeakType >::TransSpectrum::begin(), OpenMS::Constants::c, IsotopeWaveletTransform< PeakType >::TransSpectrum::end(), IsotopeWavelet::getMzPeakCutOffAtMonoPos(), IsotopeWavelet::getNumPeakCutOff(), MSSpectrum< PeakT >::getRT(), OpenMS::Constants::IW_QUARTER_NEUTRON_MASS, IsotopeWaveletTransform< PeakType >::TransSpectrum::MZBegin(), and MSSpectrum< PeakT >::MZBegin().

bool checkPositionForPlausibility_ ( const MSSpectrum< PeakType > &  candidate,
const MSSpectrum< PeakType > &  ref,
const DoubleReal  seed_mz,
const UInt  c,
const UInt  scan_index,
const bool  check_PPMs,
const DoubleReal  transintens,
const DoubleReal  prev_score 
)
protectedvirtual

A ugly but necessary function to handle "off-by-1-Dalton predictions" due to idiosyncrasies of the data set (in comparison to the averagine model)

Parameters
candidateThe wavelet transformed spectrum containing the candidate.
refThe original spectrum containing the candidate.
seed_mzThe m/z position of the candidate pattern.
cThe predicted charge state minus 1 (e.g. c=2 means charge state 3) of the candidate.
scan_indexThe index of the scan under consideration (w.r.t. the original map).

References OpenMS::Constants::c, IsotopeWavelet::getMzPeakCutOffAtMonoPos(), IsotopeWavelet::getNumPeakCutOff(), MSSpectrum< PeakT >::getRT(), OpenMS::Constants::IW_QUARTER_NEUTRON_MASS, and MSSpectrum< PeakT >::MZBegin().

std::pair< DoubleReal, DoubleReal > checkPPMTheoModel_ ( const MSSpectrum< PeakType > &  ref,
const DoubleReal  c_mz,
const UInt  c 
)
protectedvirtual
void clusterSeeds_ ( const TransSpectrum candidates,
const MSSpectrum< PeakType > &  ref,
const UInt  scan_index,
const UInt  c,
const bool  check_PPMs 
)
protected

Clusters the seeds stored by push2TmpBox_.

Parameters
candidatesA isotope wavelet transformed spectrum.
refThe corresponding original spectrum (w.r.t. candidates).
scan_indexThe index of the scan under consideration (w.r.t. the original map).

References IsotopeWaveletTransform< PeakType >::BoxElement::c, OpenMS::Constants::c, IsotopeWaveletTransform< PeakType >::BoxElement::intens, IsotopeWaveletTransform< PeakType >::BoxElement::mz, IsotopeWaveletTransform< PeakType >::BoxElement::RT, and IsotopeWaveletTransform< PeakType >::BoxElement::score.

void clusterSeeds_ ( const MSSpectrum< PeakType > &  candidates,
const MSSpectrum< PeakType > &  ref,
const UInt  scan_index,
const UInt  c,
const bool  check_PPMs 
)
protectedvirtual

Clusters the seeds stored by push2TmpBox_.

Parameters
candidatesA isotope wavelet transformed spectrum.
refThe corresponding original spectrum (w.r.t. candidates).
scan_indexThe index of the scan under consideration (w.r.t. the original map).

References IsotopeWaveletTransform< PeakType >::BoxElement::c, OpenMS::Constants::c, IsotopeWaveletTransform< PeakType >::BoxElement::intens, IsotopeWaveletTransform< PeakType >::BoxElement::mz, IsotopeWaveletTransform< PeakType >::BoxElement::RT, and IsotopeWaveletTransform< PeakType >::BoxElement::score.

void computeMinSpacing ( const MSSpectrum< PeakType > &  c_ref)
virtual
void extendBox_ ( const MSExperiment< PeakType > &  map,
const Box  box 
)
protected

A currently still necessary function that extends the box box in order to capture also signals whose isotopic pattern is nearly diminishing.

Parameters
mapThe experimental map.
boxThe box to be extended.

References MSExperiment< PeakT, ChromatogramPeakT >::begin().

DoubleReal getAvIntens_ ( const TransSpectrum scan)
inlineprotected

Computes the average (transformed) intensity (neglecting negative values) of scan.

References IsotopeWaveletTransform< PeakType >::TransSpectrum::getTransIntensity(), and IsotopeWaveletTransform< PeakType >::TransSpectrum::size().

DoubleReal getAvIntens_ ( const MSSpectrum< PeakType > &  scan)
inlineprotected

Computes the average intensity (neglecting negative values) of scan.

DoubleReal getAvMZSpacing_ ( const MSSpectrum< PeakType > &  scan)
inlineprotected

Computes the average MZ spacing of scan.

Parameters
scanThe scan we are interested in.
virtual std::multimap<DoubleReal, Box> getClosedBoxes ( )
inlinevirtual

Returns the closed boxes.

DoubleReal getLinearInterpolation ( const typename MSSpectrum< PeakType >::const_iterator &  left_iter,
const DoubleReal  mz_pos,
const typename MSSpectrum< PeakType >::const_iterator &  right_iter 
)
inline

Computes a linear (intensity) interpolation.

Parameters
left_iterThe point left to the query.
mz_posThe query point.
right_iterThe point right to the query.
DoubleReal getLinearInterpolation ( const DoubleReal  mz_a,
const DoubleReal  intens_a,
const DoubleReal  mz_pos,
const DoubleReal  mz_b,
const DoubleReal  intens_b 
)
inline

Computes a linear (intensity) interpolation.

Parameters
mz_aThe m/z value of the point left to the query.
mz_aThe intensity value of the point left to the query.
mz_posThe query point.
mz_bThe m/z value of the point right to the query.
intens_bThe intensity value of the point left to the query.
Size getMaxScanSize ( ) const
inline
DoubleReal getMinSpacing ( ) const
inline
DoubleReal getPPMs_ ( const DoubleReal  mass_a,
const DoubleReal  mass_b 
) const
inlineprotected

Returns the parts-per-million deviation of the masses.

Parameters
mass_aThe first mass.
mass_bThe second mass.
DoubleReal getSdIntens_ ( const TransSpectrum scan,
const DoubleReal  mean 
)
inlineprotected

Computes the standard deviation (neglecting negative values) of the (transformed) intensities of scan.

References IsotopeWaveletTransform< PeakType >::TransSpectrum::getTransIntensity(), OpenMS::Math::mean(), and IsotopeWaveletTransform< PeakType >::TransSpectrum::size().

DoubleReal getSdIntens_ ( const MSSpectrum< PeakType > &  scan,
const DoubleReal  mean 
)
inlineprotected

Computes the standard deviation (neglecting negative values) of the intensities of scan.

References OpenMS::Math::mean().

DoubleReal getSigma ( ) const
inline
void getTransform ( MSSpectrum< PeakType > &  c_trans,
const MSSpectrum< PeakType > &  c_ref,
const UInt  c 
)
virtual

Computes the isotope wavelet transform of charge state c.

Parameters
c_transThe transform.
c_refThe reference spectrum.
cThe charge state minus 1 (e.g. c=2 means charge state 3) at which you want to compute the transform.

References IsotopeWavelet::getLambdaL(), IsotopeWavelet::getMzPeakCutOffAtMonoPos(), IsotopeWavelet::getValueByLambda(), and OpenMS::Constants::IW_QUARTER_NEUTRON_MASS.

Referenced by FeatureFinderAlgorithmIsotopeWavelet< OpenMS::Peak2D, FeatureType >::run().

void getTransformHighRes ( MSSpectrum< PeakType > &  c_trans,
const MSSpectrum< PeakType > &  c_ref,
const UInt  c 
)
virtual

Computes the isotope wavelet transform of charge state c.

Parameters
c_transThe transform.
c_refThe reference spectrum.
cThe charge state minus 1 (e.g. c=2 means charge state 3) at which you want to compute the transform.

References IsotopeWavelet::getLambdaL(), IsotopeWavelet::getMzPeakCutOffAtMonoPos(), IsotopeWavelet::getValueByLambda(), and OpenMS::Constants::IW_QUARTER_NEUTRON_MASS.

Referenced by FeatureFinderAlgorithmIsotopeWavelet< OpenMS::Peak2D, FeatureType >::run().

void identifyCharge ( const MSSpectrum< PeakType > &  candidates,
const MSSpectrum< PeakType > &  ref,
const UInt  scan_index,
const UInt  c,
const DoubleReal  ampl_cutoff,
const bool  check_PPMs 
)
virtual

Given an isotope wavelet transformed spectrum candidates, this function assigns to every significant pattern its corresponding charge state and a score indicating the reliability of the prediction. The result of this process is stored internally. Important: Before calling this function, apply updateRanges() to the original map.

Parameters
candidatesA isotope wavelet transformed spectrum. Entry "number i" in this vector must correspond to the charge-"(i-1)"-transform of its mass signal. (This is exactly the output of the function
See Also
getTransforms.)
Parameters
refThe reference scan (the untransformed raw data) corresponding to candidates.
cThe corrsponding charge state minus 1 (e.g. c=2 means charge state 3)
scan_indexThe index of the scan (w.r.t. to some map) currently under consideration.
ampl_cutoffThe thresholding parameter. This parameter is the only (and hence a really important) parameter of the isotope wavelet transform. On the basis of ampl_cutoff the program tries to distinguish between noise and signal. Please note that it is not a "simple" hard thresholding parameter in the sense of drawing a virtual line in the spectrum, which is then used as a guillotine cut. Maybe you should play around a bit with this parameter to get a feeling about its range. For peptide mass fingerprints on small data sets (like single MALDI-scans e.g.), it makes sense to start ampl_cutoff=0 or even ampl_cutoff=-1, indicating no thresholding at all. Note that also ampl_cutoff=0 triggers (a moderate) thresholding based on the average intensity in the wavelet transform.
check_PPMsIf enabled, the algorithm will check each monoisotopic mass candidate for its plausibility by computing the ppm difference between this mass and the averagine model.

References OpenMS::Constants::c, IsotopeWavelet::getMzPeakCutOffAtMonoPos(), IsotopeWavelet::getNumPeakCutOff(), MSSpectrum< PeakT >::getRT(), OpenMS::Constants::IW_NEUTRON_MASS, OpenMS::Constants::IW_QUARTER_NEUTRON_MASS, MSSpectrum< PeakT >::MZBegin(), MSSpectrum< PeakT >::MZEnd(), and ConstRefVector< ContainerT >::sortByIntensity().

Referenced by FeatureFinderAlgorithmIsotopeWavelet< OpenMS::Peak2D, FeatureType >::run().

void initializeScan ( const MSSpectrum< PeakType > &  c_ref,
const UInt  c = 0 
)
virtual
FeatureMap< Feature > mapSeeds2Features ( const MSExperiment< PeakType > &  map,
const UInt  RT_votes_cutoff 
)

Filters the candidates further more and maps the internally used data structures to the OpenMS framework.

Parameters
mapThe original map containing the data set to be analyzed.
max_chargeThe maximal charge state under consideration.
RT_votes_cutoffSee the IsotopeWaveletFF class.

References ConvexHull2D::addPoints(), IsotopeWavelet::getLambdaL(), IsotopeWavelet::getMzPeakCutOffAtMonoPos(), OpenMS::Constants::IW_NEUTRON_MASS, OpenMS::Constants::IW_QUARTER_NEUTRON_MASS, MSSpectrum< PeakT >::MZBegin(), BaseFeature::setCharge(), Feature::setConvexHulls(), Peak2D::setIntensity(), Peak2D::setMZ(), Feature::setOverallQuality(), Peak2D::setRT(), and MSExperiment< PeakT, ChromatogramPeakT >::size().

Referenced by FeatureFinderAlgorithmIsotopeWavelet< OpenMS::Peak2D, FeatureType >::run().

void mergeFeatures ( IsotopeWaveletTransform< PeakType > *  later_iwt,
const UInt  RT_interleave,
const UInt  RT_votes_cutoff 
)
DoubleReal peptideMassRule_ ( const DoubleReal  c_mass) const
inlineprotected

Returns the monoisotopic mass (with corresponding decimal values) we would expect at c_mass.

Parameters
c_massThe mass for which we would like to know the averagine decimal places.
void push2Box_ ( const DoubleReal  mz,
const UInt  scan,
UInt  c,
const DoubleReal  score,
const DoubleReal  intens,
const DoubleReal  rt,
const UInt  MZ_begin,
const UInt  MZ_end,
const DoubleReal  ref_intens 
)
protectedvirtual

Inserts a potential isotopic pattern into an open box or - if no such box exists - creates a new one.

Parameters
mzThe position of the pattern.
scanThe index of the scan, we are currently analyzing (w.r.t. the data map). This information is necessary for the post-processing (sweep lining).
chargeThe estimated charge state minus 1 (e.g. c=2 means charge state 3) of the pattern.
scoreThe pattern's score.
intensThe intensity at the monoisotopic peak.
rtThe retention time of the scan (similar to scan, but here: no index, but the real value).
MZ_beginThe starting index of the pattern (m/z) w.r.t. the current scan.
MZ_endThe end index (w.r.t. the monoisotopic position!) of the pattern (m/z) w.r.t. the current scan.

References IsotopeWaveletTransform< PeakType >::BoxElement::c, OpenMS::Constants::c, IsotopeWaveletTransform< PeakType >::BoxElement::intens, OpenMS::Constants::IW_HALF_NEUTRON_MASS, IsotopeWaveletTransform< PeakType >::BoxElement::mz, IsotopeWaveletTransform< PeakType >::BoxElement::MZ_begin, IsotopeWaveletTransform< PeakType >::BoxElement::MZ_end, IsotopeWaveletTransform< PeakType >::BoxElement::ref_intens, IsotopeWaveletTransform< PeakType >::BoxElement::RT, IsotopeWaveletTransform< PeakType >::BoxElement::RT_index, and IsotopeWaveletTransform< PeakType >::BoxElement::score.

void push2TmpBox_ ( const DoubleReal  mz,
const UInt  scan,
UInt  charge,
const DoubleReal  score,
const DoubleReal  intens,
const DoubleReal  rt,
const UInt  MZ_begin,
const UInt  MZ_end 
)
protectedvirtual

Essentially the same function as.

See Also
push2Box_. In contrast to
push2Box this function stores its candidates only temporarily. In particular, this function is only used within a single scan transform. After the wavelet transform is computed on that scan, all candidates are pushed by this function and finally clustered together by
clusterSeeds_. Afterwards, a final push by
push2Box_ is performed storing the clustered candidates.
Parameters
mzThe position of the pattern.
scanThe index of the scan, we are currently analyzing (w.r.t. the data map). This information is necessary for the post-processing (sweep lining).
chargeThe estimated charge state minus 1 (e.g. c=2 means charge state 3) of the pattern.
scoreThe pattern's score.
intensThe intensity at the monoisotopic peak.
rtThe retention time of the scan (similar to scan, but here: no index, but the real value).
MZ_beginThe starting index of the pattern (m/z) w.r.t. the current scan.
MZ_endThe end index (w.r.t. the monoisotopic position!) of the pattern (m/z) w.r.t. the current scan.

References IsotopeWaveletTransform< PeakType >::BoxElement::c, OpenMS::Constants::c, IsotopeWaveletTransform< PeakType >::BoxElement::intens, OpenMS::Constants::IW_HALF_NEUTRON_MASS, IsotopeWaveletTransform< PeakType >::BoxElement::mz, IsotopeWaveletTransform< PeakType >::BoxElement::MZ_begin, IsotopeWaveletTransform< PeakType >::BoxElement::MZ_end, IsotopeWaveletTransform< PeakType >::BoxElement::ref_intens, IsotopeWaveletTransform< PeakType >::BoxElement::RT, IsotopeWaveletTransform< PeakType >::BoxElement::RT_index, and IsotopeWaveletTransform< PeakType >::BoxElement::score.

void sampleTheCMarrWavelet_ ( const MSSpectrum< PeakType > &  scan,
const Int  wavelet_length,
const Int  mz_index,
const UInt  charge 
)
inlineprotected
DoubleReal scoreThis_ ( const TransSpectrum candidate,
const UInt  peak_cutoff,
const DoubleReal  seed_mz,
const UInt  c,
const DoubleReal  ampl_cutoff 
)
protectedvirtual

Given a candidate for an isotopic pattern, this function computes the corresponding score.

Parameters
candidateA isotope wavelet transformed spectrum.
peak_cutoffThe number of peaks we will consider for the isotopic pattern.
seed_mzThe predicted position of the monoisotopic peak.
cThe charge state minus 1 (e.g. c=2 means charge state 3) for which the score should be determined.
ampl_cutoffThe threshold.

References IsotopeWaveletTransform< PeakType >::TransSpectrum::begin(), IsotopeWaveletTransform< PeakType >::TransSpectrum::getMZ(), IsotopeWaveletTransform< PeakType >::TransSpectrum::getTransIntensity(), OpenMS::Constants::IW_HALF_NEUTRON_MASS, OpenMS::Constants::IW_NEUTRON_MASS, IsotopeWaveletTransform< PeakType >::TransSpectrum::MZBegin(), and IsotopeWaveletTransform< PeakType >::TransSpectrum::size().

DoubleReal scoreThis_ ( const MSSpectrum< PeakType > &  candidate,
const UInt  peak_cutoff,
const DoubleReal  seed_mz,
const UInt  c,
const DoubleReal  ampl_cutoff 
)
protectedvirtual

Given a candidate for an isotopic pattern, this function computes the corresponding score.

Parameters
candidateA isotope wavelet transformed spectrum.
peak_cutoffThe number of peaks we will consider for the isotopic pattern.
seed_mzThe predicted position of the monoisotopic peak.
cThe charge state minus 1 (e.g. c=2 means charge state 3) for which the score should be determined.
ampl_cutoffThe threshold.

References OpenMS::Constants::IW_HALF_NEUTRON_MASS, OpenMS::Constants::IW_NEUTRON_MASS, and MSSpectrum< PeakT >::MZBegin().

void setSigma ( const DoubleReal  sigma)
inline
void updateBoxStates ( const MSExperiment< PeakType > &  map,
const Size  scan_index,
const UInt  RT_interleave,
const UInt  RT_votes_cutoff,
const Int  front_bound = -1,
const Int  end_bound = -1 
)

A function keeping track of currently open and closed sweep line boxes. This function is used by the isotope wavelet feature finder and must be called for each processed scan.

Parameters
mapThe original map containing the data set to be analyzed.
scan_indexThe index of the scan currently under consideration w.r.t. its MS map. This information is necessary to sweep across the map after each scan has been evaluated.
RT_votes_cutoffSee the IsotopeWaveletFF class.

References MSExperiment< PeakT, ChromatogramPeakT >::clear(), and MSExperiment< PeakT, ChromatogramPeakT >::size().

Referenced by IsotopeWaveletParallelFor< PeakType, FeatureType >::operator()(), and FeatureFinderAlgorithmIsotopeWavelet< OpenMS::Peak2D, FeatureType >::run().

Member Data Documentation

DoubleReal av_MZ_spacing_
protected
std::vector<DoubleReal> c_mzs_
protected
MSSpectrum<PeakType> c_sorted_candidate_
protected
std::vector<DoubleReal> c_spacings_
protected
std::multimap<DoubleReal, Box> closed_boxes_
protected
UInt data_length_
protected
std::multimap<DoubleReal, Box> end_boxes_
protected
Int from_max_to_left_
protected
Int from_max_to_right_
protected
std::multimap<DoubleReal, Box> front_boxes_
protected
bool hr_data_
protected
std::vector<int> indices_
protected
String intenstype_
protected
std::vector<DoubleReal> interpol_xs_
protected
std::vector<DoubleReal> interpol_ys_
protected
UInt max_charge_
protected
DoubleReal max_mz_cutoff_
protected
UInt max_num_peaks_per_pattern_
protected
Size max_scan_size_
protected
DoubleReal min_spacing_
protected
std::multimap<DoubleReal, Box> open_boxes_
protected
std::vector<DoubleReal> prod_
protected
std::vector<DoubleReal> psi_
protected
std::vector<float> scores_
protected
DoubleReal sigma_
protected
std::vector<std::multimap<DoubleReal, Box> >* tmp_boxes_
protected
std::vector<DoubleReal> xs_
protected
std::vector<float> zeros_
protected

OpenMS / TOPP release 1.11.1 Documentation generated on Thu Nov 14 2013 11:19:34 using doxygen 1.8.5