IsoSpec::I...dGenerator(3)

πŸ“¦
version 2.2.1 Β· 3 versions
, in debian trixie, ubuntu noble, ubuntu questing

πŸ’– NAME πŸ’–

IsoSpec::IsoLayeredGenerator β€” yes bestie, that's the whole name, and it's iconic. This page lives in the Library Functions Manual as IsoSpec::I...dGenerator(3) (the man page title got squished by the terminal, not by me, I would never).


✨ SYNOPSIS ✨

It inherits from IsoSpec::IsoGenerator, so everything good from that class comes along for the ride 🫢

🌸 Public Member Functions 🌸

  • IsoLayeredGenerator(const IsoLayeredGenerator &other)=delete β€” copy constructor? nope, deleted, do not perceive her πŸ’€
  • IsoLayeredGenerator &operator=(const IsoLayeredGenerator &other)=delete β€” assignment? also deleted. she does not do copies, periodt.
  • void get_conf_signature(int *space) const override final β€” writes the signature of the configuration into the target memory location. that memory spot needs to be big enough to fit it β€” your problem if it isn't, no cap.
  • double get_currentLThreshold() const β€” hands you the current L-threshold, slay.
  • IsoLayeredGenerator(Iso &&iso, int _tabSize=1000, int _hashSize=1000, bool reorder_marginals=true, double t_prob_hint=0.99) β€” the actual constructor, with _tabSize defaulting to 1000, _hashSize defaulting to 1000, reorder_marginals defaulting to true, and t_prob_hint defaulting to 0.99 ✨
  • ISOSPEC_FORCE_INLINE bool advanceToNextConfiguration() override final β€” advance to the next, not-yet-visited, most probable isotopologue. main character behaviour, honestly.
  • ISOSPEC_FORCE_INLINE bool advanceToNextConfigurationWithinLayer() β€” same energy but it stays inside the layer πŸ¦‹
  • ISOSPEC_FORCE_INLINE double lprob() const override final β€” get the log-probability of the current isotopologue.
  • ISOSPEC_FORCE_INLINE double mass() const override final β€” get the mass of the current isotopologue.
  • ISOSPEC_FORCE_INLINE double prob() const override final β€” get the probability of the current isotopologue.
  • void terminate_search() β€” blocks the subsequent search of isotopologues. she said we're done here πŸ’…
  • ISOSPEC_FORCE_INLINE void recalc(int idx) β€” recalculate the current partial log-probabilities, masses, and probabilities. glow-up math πŸ”₯
  • bool nextLayer(double offset) β€” hop to the next layer with an offset, go off queen.

🧚 Public Member Functions inherited from IsoSpec::IsoGenerator 🧚

  • IsoGenerator(Iso &&iso, bool alloc_partials=true) β€” move constructor. she moves, she doesn't copy.
  • virtual ~IsoGenerator() β€” destructor. bye bestie πŸ‘‹

🌈 Public Member Functions inherited from IsoSpec::Iso 🌈

  • Iso(int _dimNumber, const int *_isotopeNumbers, const int *_atomCounts, const double *_isotopeMasses, const double *_isotopeProbabilities) β€” the general constructor. does everything, knows everyone.
  • Iso(int _dimNumber, const int *_isotopeNumbers, const int *_atomCounts, const double *const *_isotopeMasses, const double *const *_isotopeProbabilities) β€” the same but with const-pointer-of-const-pointer energy ✨
  • Iso(const char *formula, bool use_nominal_masses=false) β€” constructor from the formula object, as a C string. use_nominal_masses defaults to false.
  • Iso(const std::string &formula, bool use_nominal_masses=false) β€” constructor from a C++ std::string chemical formula. same false default.
  • Iso(Iso &&other) β€” the move constructor.
  • Iso &operator=(const Iso &other)=delete β€” deleted. no assignments, we don't do that here πŸ™ˆ
  • Iso(const Iso &other, bool fullcopy) β€” the copy constructor, and yes it takes fullcopy because sometimes you only want a little copy.
  • 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 β€” get the monoisotopic peak mass ⭐
  • double getModeLProb() const β€” get the log-probability of the mode-configuration. if there are many modes, they share this value β€” cute, they're matching.
  • double getUnlikeliestPeakLProb() const β€” get the log-probability of the least probable subisotopologue. someone has to be the least likely, and it's them πŸ’€
  • double getModeMass() const β€” get the mass of the mode-configuration. if there are many modes, it is undefined which one will be selected β€” so like, don't count on a specific one, bestie.
  • 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.
⚠️ heads up: this method can only be used BEFORE Iso is used to construct an IsoGenerator instance. after that, it's giving too late.
  • void saveMarginalLogSizeEstimates(double *priorities, double target_total_prob) const β€” save estimates of logarithms of target sizes of marginals using a Gaussian approximation into the argument array. the priorities array must have length equal to dimNumber β€” must, fr fr.

🌟 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 an aminoacid FASTA sequence as a C string. use_nominal_masses defaults to false, add_water defaults to true πŸ“
  • static Iso FromFASTA(const std::string &fasta, bool use_nominal_masses=false, bool add_water=true) β€” constructor (named) from an aminoacid FASTA sequence as a C++ std::string. see above for details, same defaults, same energy.

πŸŽ€ Public Attributes inherited from IsoSpec::IsoGenerator πŸŽ€

  • const double mode_lprob β€” a const double, she is not changing for anyone.

🫢 Protected Member Functions inherited from IsoSpec::Iso 🫢

  • bool doMarginalsNeedSorting() const β€” asks the important question: do these marginals need sorting?

πŸ¦‹ 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 πŸ”₯

Definition at line 439 of file isoSpec++.h. that's the receipt, bestie, iykyk πŸ“œ


πŸ’… Constructor & Destructor Documentation πŸ’…

⭐ IsoSpec::IsoLayeredGenerator::IsoLayeredGenerator(Iso &&iso, int _tabSize = 1000, int _hashSize = 1000, bool reorder_marginals = true, double t_prob_hint = 0.99)

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

⭐ IsoSpec::IsoLayeredGenerator::~IsoLayeredGenerator()

Definition at line 796 of file isoSpec++.cpp. she's leaving, and she's leaving cleanly ✨


πŸ‘‘ Member Function Documentation πŸ‘‘

πŸ’– ISOSPEC_FORCE_INLINE bool IsoSpec::IsoLayeredGenerator::advanceToNextConfiguration() [inline], [final], [override], [virtual]

Advance to the next, not yet visited, most probable isotopologue. she's always moving forward.

Returns: return false if it is not possible to advance. that's your only red flag 🚩

Implements IsoSpec::IsoGenerator.

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

πŸ’– ISOSPEC_FORCE_INLINE bool IsoSpec::IsoLayeredGenerator::advanceToNextConfigurationWithinLayer() [inline]

Definition at line 499 of file isoSpec++.h. no description given, she's mysterious like that πŸŽ€

πŸ’– void IsoSpec::IsoLayeredGenerator::get_conf_signature(int *space) const [inline], [final], [override], [virtual]

Write the signature of configuration into target memory location. it must be large enough to accomodate it β€” and I mean large enough, do not skimp on the space.

Implements IsoSpec::IsoGenerator.

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

πŸ’– double IsoSpec::IsoLayeredGenerator::get_currentLThreshold() const [inline]

Definition at line 483 of file isoSpec++.h. hands you the current L-threshold, no further commentary πŸ’…

πŸ’– ISOSPEC_FORCE_INLINE double IsoSpec::IsoLayeredGenerator::lprob() const [inline], [final], [override], [virtual]

Get the log-probability of the current isotopologue.

Returns: the log-probability of the current isotopologue.

Reimplemented from IsoSpec::IsoGenerator.

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

πŸ’– ISOSPEC_FORCE_INLINE double IsoSpec::IsoLayeredGenerator::mass() const [inline], [final], [override], [virtual]

Get the mass of the current isotopologue.

Returns: the mass of the current isotopologue.

Reimplemented from IsoSpec::IsoGenerator.

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

πŸ’– bool IsoSpec::IsoLayeredGenerator::nextLayer(double offset)

Definition at line 721 of file isoSpec++.cpp. new layer, new me πŸ¦‹

πŸ’– ISOSPEC_FORCE_INLINE double IsoSpec::IsoLayeredGenerator::prob() const [inline], [final], [override], [virtual]

Get the probability of the current isotopologue.

Returns: the probability of the current isotopologue.

Reimplemented from IsoSpec::IsoGenerator.

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

πŸ’– ISOSPEC_FORCE_INLINE void IsoSpec::IsoLayeredGenerator::recalc(int idx) [inline]

Recalculate the current partial log-probabilities, masses, and probabilities. math self-care session, she ate πŸ”₯

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

Block the subsequent search of isotopologues. search closed, doors locked, no more visitors πŸšͺπŸ’…

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


πŸŽ€ Author πŸŽ€

Generated automatically by Doxygen for IsoSpec from the source code. not a human, just a very diligent robot bestie πŸ€–βœ¨


okay and that's the whole page, mwah πŸ’‹ this was IsoSpec, Version 2.2.1, coming at you from the Library Functions Manual β€” thanks for reading, ily, go advance to your next most probable configuration 🫢🌈

πŸ“¦ where this page comes from