![]() |
IsoSpec
|
The generator of isotopologues sorted by their probability of occurrence. More...
#include <isoSpec++.h>
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 |
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.
| IsoSpec::IsoOrderedGeneratorTemplate< MarginalType >::IsoOrderedGeneratorTemplate | ( | Iso && | iso, |
| int | _tabSize = 1000, | ||
| int | _hashSize = 1000 ) |
The move-contstructor.
Definition at line 821 of file isoSpec++.cpp.
|
virtual |
Destructor.
Definition at line 860 of file isoSpec++.cpp.
|
finaloverridevirtual |
Advance to the next, not yet visited, most probable isotopologue.
Implements IsoSpec::IsoGenerator.
Definition at line 871 of file isoSpec++.cpp.
|
inline |
Definition at line 291 of file isoSpec++.h.
|
inlinefinaloverridevirtual |
Save the counts of isotopes in the space.
| 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.