Loading...
Searching...
No Matches
IsoSpec::PrecalculatedMarginal Class Reference

Precalculated Marginal class. More...

`#include <marginalTrek++.h>`

Inheritance diagram for IsoSpec::PrecalculatedMarginal:

## Public Member Functions

| PrecalculatedMarginal (Marginal &&m, double lCutOff, bool sort=true, int tabSize=1000, int hashSize=1000)
| The move constructor (disowns the Marginal).
| PrecalculatedMarginal (const PrecalculatedMarginal &other)=delete
PrecalculatedMarginal & | operator= (const PrecalculatedMarginal &other)=delete
virtual | ~PrecalculatedMarginal ()
| Destructor.
bool | inRange (unsigned int idx) const
| Is there a subisotopologue with a given number?
const double & | get_lProb (int idx) const
| Get the log-probability of the idx-th subisotopologue.
const double & | get_prob (int idx) const
| Get the probability of the idx-th subisotopologue.
const double & | get_mass (int idx) const
| Get the mass of the idx-th subisotopologue.
const double * | get_lProbs_ptr () const
| Get the table of the log-probabilities of subisotopologues.
const double * | get_masses_ptr () const
| Get the table of the masses of subisotopologues.
const Conf & | get_conf (int idx) const
| Get the counts of isotopes that define the subisotopologue.
unsigned int | get_no_confs () const
| Get the number of precomputed subisotopologues.
double | getModeLProb () const
| Get the log-probability of the mode subisotopologue.
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
| Marginal (const Marginal &other)
| Copy constructor.
| Marginal (Marginal &&other)
| Move constructor.
virtual | ~Marginal ()
| Destructor.
int | get_isotopeNo () const
| Get the number of isotopes of the investigated element.
const double * | get_lProbs () const
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 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 undefined if ensureModeConf() wasn't called before.
Conf | computeModeConf () const
| The the probability of the mode subisotopologue.
double | getSmallestLProb () const
| The 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 ()

## Protected Attributes

pod_vector< Conf > | configurations
Conf * | confs
unsigned int | no_confs
double * | masses
pod_vector< double > | lProbs
double * | probs
Allocator< int > | allocator
Protected Attributes inherited from IsoSpec::Marginal
const unsigned int | isotopeNo
const unsigned int | atomCnt
const double *const | atom_lProbs
const double *const | atom_masses
const double | loggamma_nominator
Conf | mode_conf
double | mode_lprob

## 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

## Detailed Description

Precalculated Marginal class.

This class serves to calculate a set of isotopologues that is defined by the minimal probability threshold.

This works faster than if you did not know the threshold. If you have no idea about the threshold, you would need to call us, to change encode the layered version of the marginal.

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

## Constructor & Destructor Documentation

## PrecalculatedMarginal()

IsoSpec::PrecalculatedMarginal::PrecalculatedMarginal | ( | Marginal && | m,
|  | double | lCutOff,
|  | bool | sort = true,
|  | int | tabSize = 1000,
|  | int | hashSize = 1000 )

The move constructor (disowns the Marginal).

This constructor memoizes all subisotopologues with log-probability above the provided threshold lCutOff

Parameters

  Marginal | An instance of the Marginal class this class is about to disown.
  lCutOff | The lower limit on the log-probability of the precomputed subisotopologues.
  sort | Should the subisotopologues be stored with descending probability ?

Returns
  An instance of the PrecalculatedMarginal class.

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

## ~PrecalculatedMarginal()

IsoSpec::PrecalculatedMarginal::~PrecalculatedMarginal | ( |  | ) |

virtual

Destructor.

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

## Member Function Documentation

## get_conf()

const Conf & IsoSpec::PrecalculatedMarginal::get_conf | ( | int | idx | ) | const

inline

Get the counts of isotopes that define the subisotopologue.

Parameters

  idx | The number of the considered subisotopologue.

Returns
  The counts of isotopes that define the subisotopologue.

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

## get_lProb()

const double & IsoSpec::PrecalculatedMarginal::get_lProb | ( | int | idx | ) | const

inline

Get the log-probability of the idx-th subisotopologue.

Parameters

  idx | The number of the considered subisotopologue.

Returns
  The log-probability of the idx-th subisotopologue.

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

## get_lProbs_ptr()

const double * IsoSpec::PrecalculatedMarginal::get_lProbs_ptr | ( |  | ) | const

inline

Get the table of the log-probabilities of subisotopologues.

Returns
  Pointer to the first element in the table storing log-probabilities of subisotopologues.

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

## get_mass()

const double & IsoSpec::PrecalculatedMarginal::get_mass | ( | int | idx | ) | const

inline

Get the mass of the idx-th subisotopologue.

Parameters

  idx | The number of the considered subisotopologue.

Returns
  The mass of the idx-th subisotopologue.

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

## get_masses_ptr()

const double * IsoSpec::PrecalculatedMarginal::get_masses_ptr | ( |  | ) | const

inline

Get the table of the masses of subisotopologues.

Returns
  Pointer to the first element in the table storing masses of subisotopologues.

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

## get_no_confs()

unsigned int IsoSpec::PrecalculatedMarginal::get_no_confs | ( |  | ) | const

inline

Get the number of precomputed subisotopologues.

Returns
  The number of precomputed subisotopologues.

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

## get_prob()

const double & IsoSpec::PrecalculatedMarginal::get_prob | ( | int | idx | ) | const

inline

Get the probability of the idx-th subisotopologue.

Parameters

  idx | The number of the considered subisotopologue.

Returns
  The probability of the idx-th subisotopologue.

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

## getModeLProb()

double IsoSpec::PrecalculatedMarginal::getModeLProb | ( |  | ) | const

inline

Get the log-probability of the mode subisotopologue.

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

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

## inRange()

bool IsoSpec::PrecalculatedMarginal::inRange | ( | unsigned int | idx | ) | const

inline

Is there a subisotopologue with a given number?

Returns
  Returns true if idx does not exceed the number of pre-computed configurations.

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

## Member Data Documentation

## allocator

Allocator<int> IsoSpec::PrecalculatedMarginal::allocator

protected

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

## configurations

pod_vector<Conf> IsoSpec::PrecalculatedMarginal::configurations

protected

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

## confs

Conf* IsoSpec::PrecalculatedMarginal::confs

protected

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

## lProbs

pod_vector<double> IsoSpec::PrecalculatedMarginal::lProbs

protected

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

## masses

double* IsoSpec::PrecalculatedMarginal::masses

protected

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

## no_confs

unsigned int IsoSpec::PrecalculatedMarginal::no_confs

protected

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

## probs

double* IsoSpec::PrecalculatedMarginal::probs

protected

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

The documentation for this class was generated from the following files:

- /build/isospec-8QB56o/isospec-2.3.2/src/IsoSpec++/marginalTrek++.h
- /build/isospec-8QB56o/isospec-2.3.2/src/IsoSpec++/marginalTrek++.cpp