IsoSpec::IsoGenerator(3)

NAME
IsoSpec::IsoGenerator - The generator of isotopologues.

SYNOPSIS

#include <isoSpec++.h>

Inherits IsoSpec::Iso.

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

  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

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

Move constructor.

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

  IsoSpec::IsoGenerator::~IsoGenerator () [virtual]

Destructor.

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

Member Function Documentation

  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.

  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.

  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.

  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.

  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

  const double IsoSpec::IsoGenerator::mode_lprob

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

  double* IsoSpec::IsoGenerator::partialLProbs [protected]
The prefix sum of the log-probabilities of the current isotopologue.

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

  double* IsoSpec::IsoGenerator::partialMasses [protected]
The prefix sum of the masses of the current isotopologue.

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

  double* IsoSpec::IsoGenerator::partialProbs [protected]
The prefix product of the probabilities of the current isotopologue.

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

Author

Generated automatically by Doxygen for IsoSpec from the source code.