IsoSpec  1.95
Public Member Functions | Protected Attributes | List of all members
IsoSpec::PrecalculatedMarginal Class Reference

Precalculated Marginal class. More...

#include <marginalTrek++.h>

Inheritance diagram for IsoSpec::PrecalculatedMarginal:
IsoSpec::Marginal

Public Member Functions

 PrecalculatedMarginal (Marginal &&m, double lCutOff, bool sort=true, int tabSize=1000, int hashSize=1000)
 The move constructor (disowns the Marginal). More...
 
virtual ~PrecalculatedMarginal ()
 Destructor.
 
bool inRange (unsigned int idx) const
 Is there a subisotopologue with a given number? More...
 
const double & get_lProb (int idx) const
 Get the log-probability of the idx-th subisotopologue. More...
 
const double & get_prob (int idx) const
 Get the probability of the idx-th subisotopologue. More...
 
const double & get_mass (int idx) const
 Get the mass of the idx-th subisotopologue. More...
 
const double * get_lProbs_ptr () const
 Get the table of the log-probabilities of subisotopologues. More...
 
const double * get_masses_ptr () const
 Get the table of the masses of subisotopologues. More...
 
const Conf & get_conf (int idx) const
 Get the counts of isotopes that define the subisotopologue. More...
 
unsigned int get_no_confs () const
 Get the number of precomputed subisotopologues. More...
 
- Public Member Functions inherited from IsoSpec::Marginal
 Marginal (const double *_masses, const double *_probs, int _isotopeNo, int _atomCnt)
 Class constructor. More...
 
 Marginal (Marginal &other)=delete
 
Marginaloperator= (const Marginal &other)=delete
 
 Marginal (Marginal &&other)
 Move constructor.
 
virtual ~Marginal ()
 Destructor.
 
int get_isotopeNo () const
 Get the number of isotopes of the investigated element. More...
 
double getLightestConfMass () const
 Get the mass of the lightest subisotopologue. More...
 
double getHeaviestConfMass () const
 Get the mass of the heaviest subisotopologue. More...
 
double getModeLProb () const
 Get the log-probability of the mode subisotopologue. More...
 
double getModeMass () const
 The the mass of the mode subisotopologue. More...
 
double getModeProb () const
 The the probability of the mode subisotopologue. More...
 
double getSmallestLProb () const
 The the log-probability of the lightest subisotopologue. More...
 
double logProb (Conf conf) const
 Calculate the log-probability of a given subisotopologue. More...
 

Protected Attributes

std::vector< Conf > configurations
 
Conf * confs
 
unsigned int no_confs
 
double * masses
 
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_masses
 
const double *const atom_lProbs
 
const double loggamma_nominator
 
const Conf mode_conf
 
const double mode_lprob
 
const double mode_mass
 
const double mode_prob
 
const double smallest_lprob
 

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 213 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
MarginalAn instance of the Marginal class this class is about to disown.
lCutOffThe lower limit on the log-probability of the precomputed subisotopologues.
sortShould the subisotopologues be stored with descending probability ?
Returns
An instance of the PrecalculatedMarginal class.

Definition at line 375 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
idxThe number of the considered subisotopologue.
Returns
The counts of isotopes that define the subisotopologue.

Definition at line 288 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
idxThe number of the considered subisotopologue.
Returns
The log-probability of the idx-th subisotopologue.

Definition at line 254 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 274 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
idxThe number of the considered subisotopologue.
Returns
The mass of the idx-th subisotopologue.

Definition at line 268 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 280 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 294 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
idxThe number of the considered subisotopologue.
Returns
The probability of the idx-th subisotopologue.

Definition at line 261 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 247 of file marginalTrek++.h.


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