IsoSpec::MarginalTrek(3)
β¨ 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 theMarginalclass. 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 configurationsconst pod_vector< Conf > & confs () constβ hands you theConfs 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 itMarginal (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 pointerdouble 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 ifensureModeConf()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 countconst unsigned int atomCntβ the atom countconst double *const atom_lProbsβ pointer to the atomic log-probabilitiesconst double *const atom_massesβ pointer to the atomic massesconst double loggamma_nominatorβ the log-gamma numeratorConf mode_confβ the mode configurationdouble 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
- ubuntu resolute: libisospec++-dev 2.3.2-1build1 Β· BSD-2-Clause
- ubuntu stonking: libisospec++-dev 2.3.2-2 Β· BSD-2-Clause
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms