![]() |
IsoSpec
2.1.2
|
Classes | |
class | Allocator |
class | ConfEqual |
class | ConfOrder |
class | ConfOrderMarginal |
class | ConfOrderMarginalDescending |
class | DirtyAllocator |
class | FixedEnvelope |
class | Iso |
The Iso class for the calculation of the isotopic distribution. More... | |
class | IsoGenerator |
The generator of isotopologues. More... | |
class | IsoLayeredGenerator |
class | IsoOrderedGenerator |
The generator of isotopologues sorted by their probability of occurrence. More... | |
class | IsoStochasticGenerator |
class | IsoThresholdGenerator |
The generator of isotopologues above a given threshold value. More... | |
class | KeyHasher |
class | LayeredMarginal |
LayeredMarginal class. More... | |
class | Marginal |
The marginal distribution class (a subisotopologue). More... | |
class | MarginalTrek |
The marginal distribution class (a subisotopologue). More... | |
class | OrderMarginalsBySizeDecresing |
class | PrecalculatedMarginal |
Precalculated Marginal class. More... | |
struct | ProbAndConfPtr |
class | ReverseOrder |
class | SSummator |
class | Summator |
class | TableOrder |
class | TSummator |
Typedefs | |
typedef double | RealType |
typedef int64_t | IntType |
typedef int * | Conf |
Functions | |
template<typename T > | |
void | copyConf (const T *source, T *destination, int dim) |
IntType | btrd (IntType _t, RealType p, IntType m, std::mt19937 &urng=random_gen) |
IntType | invert (IntType t, RealType p, std::mt19937 &urng=random_gen) |
IntType | boost_binomial_distribution_variate (IntType t_arg, RealType p_arg, std::mt19937 &urng=random_gen) |
void | parse_fasta (const char *fasta, int atomCounts[6]) |
template<typename T > | |
void | reorder_array (T *arr, size_t *order, size_t size, bool can_destroy=false) |
void | release_g_lfact_table () |
double * | alloc_lfact_table () |
double | RationalApproximation (double t) |
double | NormalCDFInverse (double p) |
double | NormalCDFInverse (double p, double mean, double stdev) |
double | NormalCDF (double x, double mean, double stdev) |
double | NormalPDF (double x, double mean, double stdev) |
double | LowerIncompleteGamma2 (int a, double x) |
double | InverseLowerIncompleteGamma2 (int a, double x) |
std::mt19937 | random_gen (random_dev()) |
std::uniform_real_distribution< double > | stdunif (0.0, 1.0) |
size_t | rdvariate_binom (size_t tries, double succ_prob, std::mt19937 &rgen) |
double | InverseChiSquareCDF2 (int k, double x) |
double | rdvariate_beta_1_b (double b, std::mt19937 &rgen=random_gen) |
unsigned int | parse_formula (const char *formula, std::vector< double > &isotope_masses, std::vector< double > &isotope_probabilities, int **isotopeNumbers, int **atomCounts, unsigned int *confSize, bool use_nominal_masses) |
void | writeInitialConfiguration (const int atomCnt, const int isotopeNo, const double *lprobs, int *res) |
Find one of the most probable subisotopologues. More... | |
double * | getMLogProbs (const double *probs, int isoNo) |
double | get_loggamma_nominator (int x) |
int | verify_atom_cnt (int atomCnt) |
void * | quickselect (void **array, int n, int start, int end) |
double | combinedSum (const int *conf, const std::vector< double > **valuesContainer, int dimNumber) |
double | combinedSum (const int *conf, const pod_vector< double > **valuesContainer, int dimNumber) |
int * | getConf (void *conf) |
double | getLProb (void *conf) |
double | unnormalized_logProb (const int *conf, const double *logProbs, int dim) |
double | calc_mass (const int *conf, const double *masses, int dim) |
template<typename T > | |
void | printArray (const T *array, int size, const char *prefix="") |
template<typename T > | |
void | printVector (const std::vector< T > &vec) |
template<typename T > | |
void | printOffsets (const T **array, int size, const T *offset, const char *prefix="") |
template<typename T > | |
void | printNestedArray (const T **array, const int *shape, int size) |
void * | quickselect (const void **array, int n, int start, int end) |
Quickly select the n'th positional statistic, including the weights. | |
template<typename T > | |
void | dealloc_table (T *tbl, int dim) |
template<typename T > | |
void | realloc_append (T **array, T what, size_t old_array_size) |
template<typename T > | |
size_t * | get_order (T *order_array, size_t N) |
template<typename T > | |
size_t * | get_inverse_order (T *order_array, size_t N) |
template<typename TA , typename TB > | |
void | impose_order (size_t *O, size_t N, TA *A, TB *B) |
Copyright (C) 2015-2020 Mateusz Łącki and Michał Startek.
This file is part of IsoSpec.
IsoSpec is free software: you can redistribute it and/or modify it under the terms of the Simplified ("2-clause") BSD licence.
IsoSpec is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
You should have received a copy of the Simplified BSD Licence along with IsoSpec. If not, see https://opensource.org/licenses/BSD-2-Clause.
double* IsoSpec::getMLogProbs | ( | const double * | probs, |
int | isoNo | ||
) |
Here we order the processor to round the numbers up rather than down. Rounding down could result in the algorithm falling in an infinite loop because of the numerical instability of summing.
Definition at line 122 of file marginalTrek++.cpp.
void IsoSpec::writeInitialConfiguration | ( | const int | atomCnt, |
const int | isotopeNo, | ||
const double * | lprobs, | ||
int * | res | ||
) |
Find one of the most probable subisotopologues.
The algorithm uses the hill-climbing algorithm. It starts from a subisotopologue close to the mean of the underlying multinomial distribution. There might be more than one modes, in case of which this function will return only one of them, close to the mean.
atomCnt |
Here we perform hill climbing to the mode of the marginal distribution (the subisotopologue distribution). We start from the point close to the mean of the underlying multinomial distribution.
Definition at line 50 of file marginalTrek++.cpp.
const double IsoSpec::aa_elem_masses |
const double IsoSpec::aa_elem_nominal_masses |
const double IsoSpec::aa_elem_probabilities |