OpenMS
Loading...
Searching...
No Matches
FLASHHelperClasses::PrecalculatedAveragine Class Reference

Averagine patterns pre-calculated for speed up. Other variables are also calculated for fast cosine calculation. More...

#include <OpenMS/ANALYSIS/TOPDOWN/FLASHHelperClasses.h>

Collaboration diagram for FLASHHelperClasses::PrecalculatedAveragine:
[legend]

Public Member Functions

 PrecalculatedAveragine ()=default
 default constructor
 
 PrecalculatedAveragine (double min_mass, double max_mass, double delta, CoarseIsotopePatternGenerator &generator, bool use_RNA_averagine, double decoy_iso_distance=-1)
 constructor with parameters such as mass ranges and bin size.
 
 PrecalculatedAveragine (const PrecalculatedAveragine &)=default
 copy constructor
 
 PrecalculatedAveragine (PrecalculatedAveragine &&other) noexcept=default
 move constructor
 
PrecalculatedAveragineoperator= (const PrecalculatedAveragine &pc)=default
 copy assignment operator
 
PrecalculatedAveragineoperator= (PrecalculatedAveragine &&pc) noexcept=default
 move assignment operator
 
 ~PrecalculatedAveragine ()=default
 destructor
 
IsotopeDistribution get (double mass) const
 get distribution for input mass. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass
 
size_t getMaxIsotopeIndex () const
 get max isotope index
 
void setMaxIsotopeIndex (int index)
 set max isotope index
 
Size getLeftCountFromApex (double mass) const
 
Size getRightCountFromApex (double mass) const
 
Size getApexIndex (double mass) const
 get index of most abundant isotope. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass
 
Size getLastIndex (double mass) const
 get index of last isotope. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass
 
double getAverageMassDelta (double mass) const
 
double getMostAbundantMassDelta (double mass) const
 
double getSNRMultiplicationFactor (double mass) const
 get the SNR multiplication factor - used for quick SNR calculation
 

Private Member Functions

Size massToIndex_ (double mass) const
 calculate the mass bin index from mass
 

Private Attributes

std::vector< IsotopeDistributionisotopes_
 isotope distributions for different (binned) masses
 
std::vector< double > norms_
 L2 norms_ for masses - for quick isotope cosine calculation.
 
std::vector< double > average_mono_mass_difference_
 mass differences between average mass and monoisotopic mass
 
std::vector< double > abundant_mono_mass_difference_
 mass differences between most abundant mass and monoisotopic mass
 
std::vector< double > snr_mul_factor_
 
std::vector< int > left_count_from_apex_
 Isotope start indices: isotopes of the indices less than them have very low intensities.
 
std::vector< int > right_count_from_apex_
 Isotope end indices: isotopes of the indices larger than them have very low intensities.
 
std::vector< Sizeapex_index_
 most abundant isotope index
 
Size max_isotope_index_
 max isotope index
 
double mass_interval_
 mass interval for calculation
 
double min_mass_
 min mass for calculation
 

Detailed Description

Averagine patterns pre-calculated for speed up. Other variables are also calculated for fast cosine calculation.

Constructor & Destructor Documentation

◆ PrecalculatedAveragine() [1/4]

default constructor

◆ PrecalculatedAveragine() [2/4]

PrecalculatedAveragine ( double  min_mass,
double  max_mass,
double  delta,
CoarseIsotopePatternGenerator generator,
bool  use_RNA_averagine,
double  decoy_iso_distance = -1 
)

constructor with parameters such as mass ranges and bin size.

Parameters
[in]min_massthe averagine distributions will be calculated from this min_mass
[in]max_massto the max_mass
[in]deltawith the bin size delta
[in]generatorthis generates (calculates) the distributions
[in]use_RNA_averagineif set, nucleotide-based isotope patters are calculated
[in]decoy_iso_distanceif set to a positive value, nonsensical isotope patterns are generated - the distance between isotope = decoy_iso_distance * normal distance.

◆ PrecalculatedAveragine() [3/4]

copy constructor

◆ PrecalculatedAveragine() [4/4]

PrecalculatedAveragine ( PrecalculatedAveragine &&  other)
defaultnoexcept

move constructor

◆ ~PrecalculatedAveragine()

~PrecalculatedAveragine ( )
default

destructor

Member Function Documentation

◆ get()

IsotopeDistribution get ( double  mass) const

get distribution for input mass. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass

◆ getApexIndex()

Size getApexIndex ( double  mass) const

get index of most abundant isotope. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass

◆ getAverageMassDelta()

double getAverageMassDelta ( double  mass) const

get mass difference between avg and mono masses. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass

◆ getLastIndex()

Size getLastIndex ( double  mass) const

get index of last isotope. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass

◆ getLeftCountFromApex()

Size getLeftCountFromApex ( double  mass) const

get isotope distance (from apex to the left direction) to consider. This is specified in the constructor. index. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass

◆ getMaxIsotopeIndex()

size_t getMaxIsotopeIndex ( ) const

get max isotope index

◆ getMostAbundantMassDelta()

double getMostAbundantMassDelta ( double  mass) const

get mass difference between most abundant mass and mono masses. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass

◆ getRightCountFromApex()

Size getRightCountFromApex ( double  mass) const

get isotope distance (from apex to the right direction) to consider. This is specified in the constructor. index. If input mass exceeds the maximum mass (specified in constructor), output for the maximum mass

◆ getSNRMultiplicationFactor()

double getSNRMultiplicationFactor ( double  mass) const

get the SNR multiplication factor - used for quick SNR calculation

◆ massToIndex_()

Size massToIndex_ ( double  mass) const
private

calculate the mass bin index from mass

◆ operator=() [1/2]

PrecalculatedAveragine & operator= ( const PrecalculatedAveragine pc)
default

copy assignment operator

◆ operator=() [2/2]

PrecalculatedAveragine & operator= ( PrecalculatedAveragine &&  pc)
defaultnoexcept

move assignment operator

◆ setMaxIsotopeIndex()

void setMaxIsotopeIndex ( int  index)

set max isotope index

Member Data Documentation

◆ abundant_mono_mass_difference_

std::vector<double> abundant_mono_mass_difference_
private

mass differences between most abundant mass and monoisotopic mass

◆ apex_index_

std::vector<Size> apex_index_
private

most abundant isotope index

◆ average_mono_mass_difference_

std::vector<double> average_mono_mass_difference_
private

mass differences between average mass and monoisotopic mass

◆ isotopes_

std::vector<IsotopeDistribution> isotopes_
private

isotope distributions for different (binned) masses

◆ left_count_from_apex_

std::vector<int> left_count_from_apex_
private

Isotope start indices: isotopes of the indices less than them have very low intensities.

◆ mass_interval_

double mass_interval_
private

mass interval for calculation

◆ max_isotope_index_

Size max_isotope_index_
private

max isotope index

◆ min_mass_

double min_mass_
private

min mass for calculation

◆ norms_

std::vector<double> norms_
private

L2 norms_ for masses - for quick isotope cosine calculation.

◆ right_count_from_apex_

std::vector<int> right_count_from_apex_
private

Isotope end indices: isotopes of the indices larger than them have very low intensities.

◆ snr_mul_factor_

std::vector<double> snr_mul_factor_
private