Loading...
Searching...
No Matches
IsoSpec::IsoOrderedGeneratorTemplate< MarginalType > Class Template Reference

The generator of isotopologues sorted by their probability of occurrence. More...

`#include <isoSpec++.h>`

Inheritance diagram for IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >:

## Public Member Functions

| IsoOrderedGeneratorTemplate (const IsoOrderedGeneratorTemplate &other)=delete
IsoOrderedGeneratorTemplate & | operator= (const IsoOrderedGeneratorTemplate &other)=delete
bool | advanceToNextConfiguration () override final
| Advance to the next, not yet visited, most probable isotopologue.
void | get_conf_signature (int *space) const override final
| Save the counts of isotopes in the space.
| IsoOrderedGeneratorTemplate (Iso &&iso, int _tabSize=1000, int _hashSize=1000)
| The move-contstructor.
virtual | ~IsoOrderedGeneratorTemplate ()
| Destructor.
void | get_conf_by_indexes (int *space)
Public Member Functions inherited from IsoSpec::IsoGenerator
virtual double | lprob () const
| Get the log-probability of the current isotopologue.
virtual double | mass () const
| Get the mass of the current isotopologue.
virtual double | prob () const
| Get the probability of the current isotopologue.
| IsoGenerator (Iso &&iso, bool alloc_partials=true)
| Move constructor.
virtual | ~IsoGenerator ()
| Destructor.
Public Member Functions inherited from IsoSpec::Iso
| Iso (int _dimNumber, const int *_isotopeNumbers, const int *_atomCounts, const double *_isotopeMasses, const double *_isotopeProbabilities)
| General constructror.
| Iso (int _dimNumber, const int *_isotopeNumbers, const int *_atomCounts, const double *const *_isotopeMasses, const double *const *_isotopeProbabilities)
| Iso (const char *formula, bool use_nominal_masses=false)
| Constructor from the formula object.
| Iso (const std::string &formula, bool use_nominal_masses=false)
| Constructor from C++ std::string chemical formula.
| Iso (Iso &&other)
| The move constructor.
Iso & | operator= (const Iso &other)=delete
| Iso (const Iso &other, bool fullcopy)
| The copy constructor.
virtual | ~Iso ()
| Destructor.
double | getLightestPeakMass () const
| Get the mass of the lightest peak in the isotopic distribution.
double | getHeaviestPeakMass () const
| Get the mass of the heaviest peak in the isotopic distribution.
double | getMonoisotopicPeakMass () const
double | getModeLProb () const
| Get the log-probability of the mode-configuration (if there are many modes, they share this value).
double | getUnlikeliestPeakLProb () const
| Get the logprobability of the least probable subisotopologue.
double | getModeMass () const
| Get the mass of the mode-configuration (if there are many modes, it is undefined which one will be selected).
double | getTheoreticalAverageMass () const
| Get the theoretical average mass of the molecule.
double | variance () const
| Get the theoretical variance of the distribution.
double | stddev () const
| Get the standard deviation of the theoretical distribution.
int | getDimNumber () const
| Get the number of elements in the chemical formula of the molecule.
int | getAllDim () const
| Get the total number of isotopes of elements present in a chemical formula.
void | addElement (int atomCount, int noIsotopes, const double *isotopeMasses, const double *isotopeProbabilities)
| Add an element to the molecule. Note: this method can only be used BEFORE Iso is used to construct an IsoGenerator instance.
void | saveMarginalLogSizeEstimates (double *priorities, double target_total_prob) const
| Save estimates of logarithms of target sizes of marginals using Gaussian approximation into argument array. Array priorities must have length equal to dimNumber.

## Additional Inherited Members

Static Public Member Functions inherited from IsoSpec::Iso
static Iso | FromFASTA (const char *fasta, bool use_nominal_masses=false, bool add_water=true)
| Constructor (named) from aminoacid FASTA sequence as C string.
static Iso | FromFASTA (const std::string &fasta, bool use_nominal_masses=false, bool add_water=true)
| Constructor (named) from aminoacid FASTA sequence as C++ std::string. See above for details.
Public Attributes inherited from IsoSpec::IsoGenerator
const double | mode_lprob
Protected Member Functions inherited from IsoSpec::Iso
bool | doMarginalsNeedSorting () const
Protected Attributes inherited from IsoSpec::IsoGenerator
double * | partialLProbs
double * | partialMasses
double * | partialProbs
Protected Attributes inherited from IsoSpec::Iso
int | dimNumber
int * | isotopeNumbers
int * | atomCounts
unsigned int | confSize
int | allDim
Marginal ** | marginals

## Detailed Description

template<typename MarginalType>
class IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >

The generator of isotopologues sorted by their probability of occurrence.

The subsequent isotopologues are generated with diminishing probability, starting from the mode. This algorithm take O(N*log(N)) to compute the N isotopologues because of using the Priority Queue data structure. Obtaining the N isotopologues can be achieved in O(N) if they are not required to be spit out in the descending order.

Definition at line 238 of file isoSpec++.h.

## Constructor & Destructor Documentation

## IsoOrderedGeneratorTemplate()

template<typename MarginalType>

IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >::IsoOrderedGeneratorTemplate | ( | Iso && | iso,
|  | int | _tabSize = 1000,
|  | int | _hashSize = 1000 )

The move-contstructor.

Definition at line 821 of file isoSpec++.cpp.

## ~IsoOrderedGeneratorTemplate()

template<typename MarginalType>

IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >::~IsoOrderedGeneratorTemplate | ( |  | ) |

virtual

Destructor.

Definition at line 860 of file isoSpec++.cpp.

## Member Function Documentation

## advanceToNextConfiguration()

template<typename MarginalType>

bool IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >::advanceToNextConfiguration | ( |  | ) |

final override virtual

Advance to the next, not yet visited, most probable isotopologue.

Returns
  Return false if it is not possible to advance.

Implements IsoSpec::IsoGenerator.

Definition at line 871 of file isoSpec++.cpp.

## get_conf_by_indexes()

template<typename MarginalType>

void IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >::get_conf_by_indexes | ( | int * | space | ) |

inline

Definition at line 291 of file isoSpec++.h.

## get_conf_signature()

template<typename MarginalType>

void IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >::get_conf_signature | ( | int * | space | ) | const

inline final override virtual

Save the counts of isotopes in the space.

Parameters

  space | An array where counts of isotopes shall be written. Must be as big as the overall number of isotopes.

Implements IsoSpec::IsoGenerator.

Definition at line 263 of file isoSpec++.h.

The documentation for this class was generated from the following files:

- /build/isospec-bgJzOn/isospec-2.3.2/src/IsoSpec++/isoSpec++.h
- /build/isospec-bgJzOn/isospec-2.3.2/src/IsoSpec++/isoSpec++.cpp