Loading...
Searching...
No Matches
IsoSpec::IsoGenerator Class Referenceabstract

The generator of isotopologues. More...

`#include <isoSpec++.h>`

Inheritance diagram for IsoSpec::IsoGenerator:

## Public Member Functions

virtual bool | advanceToNextConfiguration ()=0
| Advance to the next, not yet visited, most probable isotopologue.
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.
virtual void | get_conf_signature (int *space) const =0
| Write the signature of configuration into target memory location. It must be large enough to accomodate it.
| 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.

## Public Attributes

const double | mode_lprob

## Protected Attributes

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

## 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.
Protected Member Functions inherited from IsoSpec::Iso
bool | doMarginalsNeedSorting () const

## Detailed Description

The generator of isotopologues.

This class provides the common interface for all isotopic generators.

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

## Constructor & Destructor Documentation

## IsoGenerator()

IsoSpec::IsoGenerator::IsoGenerator | ( | Iso && | iso,
|  | bool | alloc_partials = true )

Move constructor.

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

## ~IsoGenerator()

IsoSpec::IsoGenerator::~IsoGenerator | ( |  | ) |

virtual

Destructor.

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

## Member Function Documentation

## advanceToNextConfiguration()

virtual bool IsoSpec::IsoGenerator::advanceToNextConfiguration | ( |  | ) |

pure virtual

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

Returns
  Return false if it is not possible to advance.

Implemented in IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >, IsoSpec::IsoLayeredGeneratorTemplate< LayeredMarginal >, IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >, IsoSpec::IsoOrderedGeneratorTemplate< MarginalTrek >, IsoSpec::IsoStochasticGeneratorTemplate< IsoType >, IsoSpec::IsoStochasticGeneratorTemplate< IsoLayeredGenerator >, and IsoSpec::IsoThresholdGenerator.

## get_conf_signature()

virtual void IsoSpec::IsoGenerator::get_conf_signature | ( | int * | space | ) | const

pure virtual

Write the signature of configuration into target memory location. It must be large enough to accomodate it.

Implemented in IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >, IsoSpec::IsoLayeredGeneratorTemplate< LayeredMarginal >, IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >, IsoSpec::IsoOrderedGeneratorTemplate< MarginalTrek >, IsoSpec::IsoStochasticGeneratorTemplate< IsoType >, IsoSpec::IsoStochasticGeneratorTemplate< IsoLayeredGenerator >, and IsoSpec::IsoThresholdGenerator.

## lprob()

virtual double IsoSpec::IsoGenerator::lprob | ( |  | ) | const

inline virtual

Get the log-probability of the current isotopologue.

Returns
  The log-probability of the current isotopologue.

Reimplemented in IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >, IsoSpec::IsoLayeredGeneratorTemplate< LayeredMarginal >, IsoSpec::IsoStochasticGeneratorTemplate< IsoType >, IsoSpec::IsoStochasticGeneratorTemplate< IsoLayeredGenerator >, and IsoSpec::IsoThresholdGenerator.

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

## mass()

virtual double IsoSpec::IsoGenerator::mass | ( |  | ) | const

inline virtual

Get the mass of the current isotopologue.

Returns
  The mass of the current isotopologue.

Reimplemented in IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >, IsoSpec::IsoLayeredGeneratorTemplate< LayeredMarginal >, IsoSpec::IsoStochasticGeneratorTemplate< IsoType >, IsoSpec::IsoStochasticGeneratorTemplate< IsoLayeredGenerator >, and IsoSpec::IsoThresholdGenerator.

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

## prob()

virtual double IsoSpec::IsoGenerator::prob | ( |  | ) | const

inline virtual

Get the probability of the current isotopologue.

Returns
  The probability of the current isotopologue.

Reimplemented in IsoSpec::IsoLayeredGeneratorTemplate< MarginalType >, IsoSpec::IsoLayeredGeneratorTemplate< LayeredMarginal >, IsoSpec::IsoStochasticGeneratorTemplate< IsoType >, IsoSpec::IsoStochasticGeneratorTemplate< IsoLayeredGenerator >, and IsoSpec::IsoThresholdGenerator.

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

## Member Data Documentation

## mode_lprob

const double IsoSpec::IsoGenerator::mode_lprob

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

## partialLProbs

double* IsoSpec::IsoGenerator::partialLProbs

protected

The prefix sum of the log-probabilities of the current isotopologue.

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

## partialMasses

double* IsoSpec::IsoGenerator::partialMasses

protected

The prefix sum of the masses of the current isotopologue.

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

## partialProbs

double* IsoSpec::IsoGenerator::partialProbs

protected

The prefix product of the probabilities of the current isotopologue.

Definition at line 192 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