IsoSpec::MarginalTrek(3)

πŸ“¦
version 2.3.2 Β· 4 versions
, in ubuntu resolute, ubuntu stonking

✨ NAME ✨

IsoSpec::MarginalTrek β€” the marginal distribution class (a subisotopologue) πŸ’–

okay so this is from the Library Functions Manual, and the page is literally called IsoSpec::MarginalTrek(3). Buckle up bestie, we're going in πŸ¦‹


🌸 SYNOPSIS 🌸

#include <marginalTrek++.h>

First thing's first: this class inherits IsoSpec::Marginal. It's giving "I got everything my parent has plus my own little extras" energy πŸ‘‘

πŸ’… Public Member Functions

  • MarginalTrek (Marginal &&m, int tabSize=1000, int hashSize=1000) β€” Move constructor: it specializes the Marginal class. Iconic behaviour.
  • MarginalTrek (const MarginalTrek &other)=delete β€” nope, copying is deleted, we do not do that here πŸ™ˆ
  • MarginalTrek & operator= (const MarginalTrek &other)=delete β€” and copy-assignment is deleted too, periodt πŸ’€
  • bool probeConfigurationIdx (int idx) β€” Check if the table of computed subisotopologues does not have to be extended. A little vibe check on your table, iykyk.
  • double getModeLProb () const β€” Get the log-probability of the mode subisotopologue.
  • const pod_vector< double > & conf_lprobs () const β€” hands you the log-probabilities of the configurations ✨
  • const pod_vector< double > & conf_masses () const β€” hands you the masses of the configurations
  • const pod_vector< Conf > & confs () const β€” hands you the Confs themselves, no cap

🫢 Public Member Functions inherited from IsoSpec::Marginal

  • Marginal (const double *_masses, const double *_probs, int _isotopeNo, int _atomCnt) β€” Class constructor.
  • Marginal & operator= (const Marginal &other)=delete β€” deleted, don't even try it
  • Marginal (const Marginal &other) β€” Copy constructor.
  • Marginal (Marginal &&other) β€” Move constructor.
  • virtual ~Marginal () β€” Destructor. Rip to a real one πŸ•ŠοΈ
  • int get_isotopeNo () const β€” Get the number of isotopes of the investigated element.
  • const double * get_lProbs () const β€” the log-probabilities, as a raw pointer
  • double getLightestConfMass () const β€” Get the mass of the lightest subisotopologue.
  • double getHeaviestConfMass () const β€” Get the mass of the heaviest subisotopologue.
  • double getMonoisotopicConfMass () const β€” Get the mass of the monoisotopic subisotopologue.
  • size_t getMonoisotopicAtomIndex () const β€” Get the index of the monoisotopic (most probable) atom.
  • double getModeMass () β€” The mass of the mode subisotopologue.
  • double getModeLProb () β€” Get the log-probability of the mode subisotopologue.
  • double fastGetModeLProb () β€” Get the log-probability of the mode subisotopologue. ⚠️ Results are undefined if ensureModeConf() wasn't called before β€” so like, please call it first bestie.
  • Conf computeModeConf () const β€” The probability of the mode subisotopologue.
  • double getSmallestLProb () const β€” The log-probability of the lightest subisotopologue.
  • double getAtomAverageMass () const β€” The average mass of a single atom.
  • double getTheoreticalAverageMass () const β€” The theoretical average mass of the molecule.
  • double variance () const β€” Calculate the variance of the theoretical distribution describing the subisotopologue.
  • double getLogSizeEstimate (double logEllipsoidRadius) const β€” Return estimated logarithm of size of the marginal at a given ellipsoid radius.
  • void ensureModeConf () β€” does the mode-conf setup thing (no description given, it just vibes) πŸ’œ

🌟 Additional Inherited Members

πŸ”’ Protected Member Functions inherited from IsoSpec::Marginal

  • ISOSPEC_FORCE_INLINE double unnormalized_logProb (Conf conf) const β€” Calculate the log-probability of a given subisotopologue.
  • ISOSPEC_FORCE_INLINE double logProb (Conf conf) const β€” the log-probability, unnormalized-free version

πŸ”’ Protected Attributes inherited from IsoSpec::Marginal

  • const unsigned int isotopeNo β€” the isotope count
  • const unsigned int atomCnt β€” the atom count
  • const double *const atom_lProbs β€” pointer to the atomic log-probabilities
  • const double *const atom_masses β€” pointer to the atomic masses
  • const double loggamma_nominator β€” the log-gamma numerator
  • Conf mode_conf β€” the mode configuration
  • double mode_lprob β€” the mode log-probability

πŸ’– Detailed Description πŸ’–

The marginal distribution class (a subisotopologue). That's the whole assignment, and it ate πŸ”₯

Definition at line 183 of file marginalTrek++.h.


🧚 Constructor & Destructor Documentation 🧚

IsoSpec::MarginalTrek::MarginalTrek (Marginal && m, int tabSize = 1000, int hashSize = 1000)

Move constructor: specializes the Marginal class. It's literally the main character of this page πŸ‘‘

Parameters

  • tabSize β€” The size of the table used to store configurations in the allocator.
  • hashSize β€” The size of the hash table used to store visited subisotopologues.

Definition at line 329 of file marginalTrek++.cpp.

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

The destructor. No description given, it just closes the tab and logs off 🫑

Definition at line 440 of file marginalTrek++.cpp.


πŸ‘‘ Member Function Documentation πŸ‘‘

const pod_vector< double > & IsoSpec::MarginalTrek::conf_lprobs () const [inline]

No description, just vibes β€” it returns the log-probabilities of the configurations as a const pod_vector< double > &.

Definition at line 241 of file marginalTrek++.h.

const pod_vector< double > & IsoSpec::MarginalTrek::conf_masses () const [inline]

Also no description β€” returns the configuration masses as a const pod_vector< double > &.

Definition at line 242 of file marginalTrek++.h.

const pod_vector< Conf > & IsoSpec::MarginalTrek::confs () const [inline]

Still no description β€” returns the Confs as a const pod_vector< Conf > &.

Definition at line 243 of file marginalTrek++.h.

double IsoSpec::MarginalTrek::getModeLProb () const [inline]

Get the log-probability of the mode subisotopologue. The moment you've all been waiting for ✨

Returns

The log-probability of a/the most probable subisotopologue.

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

bool IsoSpec::MarginalTrek::probeConfigurationIdx (int idx) [inline]

Check if the table of computed subisotopologues does not have to be extended. This function checks if the idx-th most probable subisotopologue was memoized and if not, computes it and memoizes it. So it's like, "have we already done this? no? bet, doing it now and saving it" πŸ’…

Parameters

  • idx β€” The number of the idx-th most probable subisotopologue.

Returns

Returns false if it the provided idx exceeds the total number of subisotopologues. So false = you asked for too much, bestie 😭

Definition at line 226 of file marginalTrek++.h.


🌈 Author 🌈

Generated automatically by Doxygen for IsoSpec from the source code. Not a human, just a lil robot doing its thing πŸ€–


okay that's the whole page!! every flag, every signature, every line number, all of it β€” nothing skipped, fr fr 🫢

sign-off: this whole thing lives in the IsoSpec library, the page is IsoSpec::MarginalTrek(3), and it was generated by Doxygen straight from the source code. mwah, go forth and trek those marginals bestie πŸ’–βœ¨πŸŽ€πŸ¦‹πŸŒΈπŸ’…

πŸ“¦ where this page comes from