OpenMS
|
Represents a distribution of isotopes restricted to the first K elements. More...
#include <OpenMS/CHEMISTRY/MASSDECOMPOSITION/IMS/IMSIsotopeDistribution.h>
Classes | |
struct | Peak |
Structure that represents an isotope peak - pair of mass and abundance. More... | |
Public Types | |
typedef double | mass_type |
Type of isotope mass. More... | |
typedef double | abundance_type |
Type of isotope abundance. More... | |
typedef unsigned int | nominal_mass_type |
Type of isotope nominal mass. More... | |
typedef Peak | peak_type |
Type of isotope peak. More... | |
typedef std::vector< peak_type > | peaks_container |
Type of container to store peaks. More... | |
typedef peaks_container::iterator | peaks_iterator |
Type of iterator over container with peaks. More... | |
typedef peaks_container::const_iterator | const_peaks_iterator |
Type of const iterator over container with peaks. More... | |
typedef peaks_container::size_type | size_type |
Type of peaks container's size. More... | |
typedef std::vector< mass_type > | masses_container |
Type of container with isotope masses. More... | |
typedef masses_container::iterator | masses_iterator |
Type of iterator over container with isotope masses. More... | |
typedef masses_container::const_iterator | const_masses_iterator |
Type of const iterator over container with isotope masses. More... | |
typedef std::vector< abundance_type > | abundances_container |
Type of container with isotope abundances. More... | |
typedef abundances_container::iterator | abundances_iterator |
Type of iterator over container with isotope abundances. More... | |
typedef abundances_container::const_iterator | const_abundances_iterator |
Type of const iterator over container with isotope abundances. More... | |
Static Public Attributes | |
static abundance_type | ABUNDANCES_SUM_ERROR |
Error to be allowed for isotope distribution. More... | |
static size_type | SIZE |
Length of isotope distribution. More... | |
Private Member Functions | |
void | setMinimumSize_ () |
Sets peaks/isotopes container minimum size. More... | |
Private Attributes | |
peaks_container | peaks_ |
Container for isotopes. More... | |
nominal_mass_type | nominal_mass_ |
Nominal mass of distribution. More... | |
Represents a distribution of isotopes restricted to the first K elements.
Represents a distribution of isotopes of chemical elements as a list of peaks each as a pair of mass and abundance. IsotopeDistribution
unlike IsotopeSpecies
has one abundance per a nominal mass. Here is an example in the format (mass; abundance %) for molecule H2O (values are taken randomly):
To the sake of faster computations distribution is restricted to the first K elements, where K can be set by adjusting size SIZE
of distribution.
IsotopeDistribution
implements folding with other distribution using an algorithm described in details in paper: Boecker et al. "Decomposing metabolic isotope patterns" WABI 2006. doi: 10.1007/11851561_2
Folding with itself is done using Russian Multiplication Scheme.
typedef double abundance_type |
Type of isotope abundance.
typedef std::vector<abundance_type> abundances_container |
Type of container with isotope abundances.
typedef abundances_container::iterator abundances_iterator |
Type of iterator over container with isotope abundances.
typedef abundances_container::const_iterator const_abundances_iterator |
Type of const iterator over container with isotope abundances.
typedef masses_container::const_iterator const_masses_iterator |
Type of const iterator over container with isotope masses.
typedef peaks_container::const_iterator const_peaks_iterator |
Type of const iterator over container with peaks.
typedef double mass_type |
Type of isotope mass.
typedef std::vector<mass_type> masses_container |
Type of container with isotope masses.
typedef masses_container::iterator masses_iterator |
Type of iterator over container with isotope masses.
typedef unsigned int nominal_mass_type |
Type of isotope nominal mass.
typedef std::vector<peak_type> peaks_container |
Type of container to store peaks.
typedef peaks_container::iterator peaks_iterator |
Type of iterator over container with peaks.
typedef peaks_container::size_type size_type |
Type of peaks container's size.
|
inlineexplicit |
Constructor with nominal mass.
|
inlineexplicit |
Constructor with single isotope.
|
inline |
Constructor with isotopes and nominal mass.
|
inline |
Copy constructor.
|
inline |
Destructor.
|
inline |
Returns true if the distribution has no peaks, false - otherwise.
|
inline |
Gets an abundance of isotope i
.
i | An index of isotope. |
i
. abundances_container getAbundances | ( | ) | const |
Gets abundances of isotopes.
mass_type getAverageMass | ( | ) | const |
Gets an average mass of all isotopes.
Gets a mass of isotope i
.
i | An index of isotope. |
i
. masses_container getMasses | ( | ) | const |
Gets masses of isotopes.
|
inline |
Gets a nominal mass of distribution.
void normalize | ( | ) |
Normalizes distribution, i.e. scaling abundances to be summed up to 1 with an error ABUNDANCES_SUM_ERROR
allowed.
bool operator!= | ( | const IMSIsotopeDistribution & | distribution | ) | const |
Inequality operator. Returns true, if a given distribution
is unequal to this one, false - otherwise.
IMSIsotopeDistribution& operator*= | ( | const IMSIsotopeDistribution & | distribution | ) |
Operator for folding this distribution with a given distribution
.
distribution | Distribution to be folded with this one. |
IMSIsotopeDistribution& operator*= | ( | unsigned int | pow | ) |
Operator for folding this distribution with itself pow
times.
pow | Number of times this distribution is to be folded with itself. |
IMSIsotopeDistribution& operator= | ( | const IMSIsotopeDistribution & | distribution | ) |
Assignment operator.
distribution | Isotope distribution to be assigned to this one. |
bool operator== | ( | const IMSIsotopeDistribution & | distribution | ) | const |
Equality operator. Returns true, if a given distribution
is equal to this one, false - otherwise.
|
private |
Sets peaks/isotopes container minimum size.
|
inline |
Sets a nominal mass for distribution.
nominalMass | The new nominal mass for the distribution. |
|
inline |
Gets size of isotope distribution.
SIZE
.
|
static |
Error to be allowed for isotope distribution.
|
private |
Nominal mass of distribution.
|
private |
Container for isotopes.
|
static |
Length of isotope distribution.