.TH "IsoSpec" 3 "Version 2.2.1" "IsoSpec" \" -*- nroff -*- .ad l .nh .SH NAME IsoSpec .SH SYNOPSIS .br .PP .SS "Classes" .in +1c .ti -1c .RI "class \fBAllocator\fP" .br .ti -1c .RI "class \fBConfEqual\fP" .br .ti -1c .RI "class \fBConfOrder\fP" .br .ti -1c .RI "class \fBConfOrderMarginal\fP" .br .ti -1c .RI "class \fBConfOrderMarginalDescending\fP" .br .ti -1c .RI "class \fBDirtyAllocator\fP" .br .ti -1c .RI "class \fBFixedEnvelope\fP" .br .ti -1c .RI "class \fBIso\fP" .br .RI "The \fBIso\fP class for the calculation of the isotopic distribution\&. " .ti -1c .RI "class \fBIsoGenerator\fP" .br .RI "The generator of isotopologues\&. " .ti -1c .RI "class \fBIsoLayeredGenerator\fP" .br .ti -1c .RI "class \fBIsoOrderedGenerator\fP" .br .RI "The generator of isotopologues sorted by their probability of occurrence\&. " .ti -1c .RI "class \fBIsoStochasticGenerator\fP" .br .ti -1c .RI "class \fBIsoThresholdGenerator\fP" .br .RI "The generator of isotopologues above a given threshold value\&. " .ti -1c .RI "class \fBKeyHasher\fP" .br .ti -1c .RI "class \fBLayeredMarginal\fP" .br .RI "\fBLayeredMarginal\fP class\&. " .ti -1c .RI "class \fBMarginal\fP" .br .RI "The marginal distribution class (a subisotopologue)\&. " .ti -1c .RI "class \fBMarginalTrek\fP" .br .RI "The marginal distribution class (a subisotopologue)\&. " .ti -1c .RI "class \fBOrderMarginalsBySizeDecresing\fP" .br .ti -1c .RI "class \fBPrecalculatedMarginal\fP" .br .RI "Precalculated \fBMarginal\fP class\&. " .ti -1c .RI "struct \fBProbAndConfPtr\fP" .br .ti -1c .RI "class \fBReverseOrder\fP" .br .ti -1c .RI "class \fBSSummator\fP" .br .ti -1c .RI "class \fBSummator\fP" .br .ti -1c .RI "class \fBTableOrder\fP" .br .ti -1c .RI "class \fBTSummator\fP" .br .in -1c .SS "Typedefs" .in +1c .ti -1c .RI "typedef double \fBRealType\fP" .br .ti -1c .RI "typedef int64_t \fBIntType\fP" .br .ti -1c .RI "typedef int * \fBConf\fP" .br .in -1c .SS "Functions" .in +1c .ti -1c .RI "template void \fBcopyConf\fP (const T *source, T *destination, int dim)" .br .ti -1c .RI "IntType \fBbtrd\fP (IntType _t, RealType p, IntType m, std::mt19937 &urng=random_gen)" .br .ti -1c .RI "IntType \fBinvert\fP (IntType t, RealType p, std::mt19937 &urng=random_gen)" .br .ti -1c .RI "IntType \fBboost_binomial_distribution_variate\fP (IntType t_arg, RealType p_arg, std::mt19937 &urng=random_gen)" .br .ti -1c .RI "void \fBparse_fasta\fP (const char *fasta, int atomCounts[6])" .br .ti -1c .RI "template void \fBreorder_array\fP (T *arr, size_t *order, size_t size, bool can_destroy=false)" .br .ti -1c .RI "double \fBAbyssalWassersteinDistanceGrad\fP (\fBFixedEnvelope\fP *const *envelopes, const double *scales, double *ret_gradient, size_t N, double abyss_depth_exp, double abyss_depth_the)" .br .ti -1c .RI "void \fBrelease_g_lfact_table\fP ()" .br .ti -1c .RI "double * \fBalloc_lfact_table\fP ()" .br .ti -1c .RI "double \fBRationalApproximation\fP (double t)" .br .ti -1c .RI "double \fBNormalCDFInverse\fP (double p)" .br .ti -1c .RI "double \fBNormalCDFInverse\fP (double p, double mean, double stdev)" .br .ti -1c .RI "double \fBNormalCDF\fP (double x, double mean, double stdev)" .br .ti -1c .RI "double \fBNormalPDF\fP (double x, double mean, double stdev)" .br .ti -1c .RI "double \fBLowerIncompleteGamma2\fP (int a, double x)" .br .ti -1c .RI "double \fBInverseLowerIncompleteGamma2\fP (int a, double x)" .br .ti -1c .RI "std::mt19937 \fBrandom_gen\fP (random_dev())" .br .ti -1c .RI "std::uniform_real_distribution< double > \fBstdunif\fP (0\&.0, 1\&.0)" .br .ti -1c .RI "size_t \fBrdvariate_binom\fP (size_t tries, double succ_prob, std::mt19937 &rgen)" .br .ti -1c .RI "double \fBInverseChiSquareCDF2\fP (int k, double x)" .br .ti -1c .RI "double \fBrdvariate_beta_1_b\fP (double b, std::mt19937 &rgen=random_gen)" .br .ti -1c .RI "unsigned int \fBparse_formula\fP (const char *formula, std::vector< double > &isotope_masses, std::vector< double > &isotope_probabilities, int **isotopeNumbers, int **atomCounts, unsigned int *confSize, bool use_nominal_masses)" .br .ti -1c .RI "void \fBwriteInitialConfiguration\fP (const int atomCnt, const int isotopeNo, const double *lprobs, int *res)" .br .RI "Find one of the most probable subisotopologues\&. " .ti -1c .RI "double * \fBgetMLogProbs\fP (const double *probs, int isoNo)" .br .ti -1c .RI "double \fBget_loggamma_nominator\fP (int x)" .br .ti -1c .RI "int \fBverify_atom_cnt\fP (int atomCnt)" .br .ti -1c .RI "void * \fBquickselect\fP (void **array, int n, int start, int end)" .br .ti -1c .RI "double \fBcombinedSum\fP (const int *conf, const std::vector< double > **valuesContainer, int dimNumber)" .br .ti -1c .RI "double \fBcombinedSum\fP (const int *conf, const \fBpod_vector\fP< double > **valuesContainer, int dimNumber)" .br .ti -1c .RI "int * \fBgetConf\fP (void *conf)" .br .ti -1c .RI "double \fBgetLProb\fP (void *conf)" .br .ti -1c .RI "double \fBunnormalized_logProb\fP (const int *conf, const double *logProbs, int dim)" .br .ti -1c .RI "double \fBcalc_mass\fP (const int *conf, const double *masses, int dim)" .br .ti -1c .RI "template void \fBprintArray\fP (const T *array, int size, const char *prefix='')" .br .ti -1c .RI "template void \fBprintVector\fP (const std::vector< T > &vec)" .br .ti -1c .RI "template void \fBprintOffsets\fP (const T **array, int size, const T *offset, const char *prefix='')" .br .ti -1c .RI "template void \fBprintNestedArray\fP (const T **array, const int *shape, int size)" .br .ti -1c .RI "void * \fBquickselect\fP (const void **array, int n, int start, int end)" .br .RI "Quickly select the n'th positional statistic, including the weights\&. " .ti -1c .RI "template void \fBdealloc_table\fP (T *tbl, int dim)" .br .ti -1c .RI "template void \fBrealloc_append\fP (T **array, T what, size_t old_array_size)" .br .ti -1c .RI "template size_t * \fBget_order\fP (T *order_array, size_t N)" .br .ti -1c .RI "template size_t * \fBget_inverse_order\fP (T *order_array, size_t N)" .br .ti -1c .RI "template void \fBimpose_order\fP (size_t *O, size_t N, TA *A, TB *B)" .br .in -1c .SS "Variables" .in +1c .ti -1c .RI "const size_t \fBisospec_number_of_isotopic_entries\fP = ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES" .br .ti -1c .RI "const int \fBelem_table_ID\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const int \fBelem_table_atomicNo\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const double \fBelem_table_mass\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const double \fBelem_table_massNo\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const int \fBelem_table_extraNeutrons\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const char * \fBelem_table_element\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const char * \fBelem_table_symbol\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const bool \fBelem_table_Radioactive\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const double \fBelem_table_probability\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const double \fBelem_table_log_probability\fP [ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES]" .br .ti -1c .RI "const int \fBaa_isotope_numbers\fP [6] = {2, 2, 2, 3, 4, 6}" .br .ti -1c .RI "const double \fBaa_elem_masses\fP [19]" .br .ti -1c .RI "const double \fBaa_elem_nominal_masses\fP [19]" .br .ti -1c .RI "const double \fBaa_elem_probabilities\fP [19]" .br .ti -1c .RI "const int \fBaa_symbol_to_elem_counts\fP [256 *6]" .br .ti -1c .RI "double * \fBg_lfact_table\fP = alloc_lfact_table()" .br .ti -1c .RI "const double \fBsqrt_pi\fP = 1\&.772453850905516027298167483341145182798" .br .ti -1c .RI "std::random_device \fBrandom_dev\fP" .br .ti -1c .RI "const double \fBpi\fP = 3\&.14159265358979323846264338328" .br .ti -1c .RI "const double \fBlogpi\fP = 1\&.144729885849400174143427351353058711647294812915311571513623071472137769884826079783623270275489708" .br .ti -1c .RI "std::mt19937 \fBrandom_gen\fP" .br .ti -1c .RI "std::uniform_real_distribution< double > \fBstdunif\fP" .br .in -1c .SH "Detailed Description" .PP Copyright (C) 2015-2020 Mateusz Łącki and Michał Startek\&. .PP This file is part of \fBIsoSpec\fP\&. .PP \fBIsoSpec\fP is free software: you can redistribute it and/or modify it under the terms of the Simplified ('2-clause') BSD licence\&. .PP \fBIsoSpec\fP 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\&. .PP You should have received a copy of the Simplified BSD Licence along with \fBIsoSpec\fP\&. If not, see https://opensource.org/licenses/BSD-2-Clause\&. .SH "Typedef Documentation" .PP .SS "typedef int* IsoSpec::Conf" .PP Definition at line \fB22\fP of file \fBconf\&.h\fP\&. .SS "typedef int64_t IsoSpec::IntType" .PP Definition at line \fB28\fP of file \fBbtrd\&.h\fP\&. .SS "typedef double IsoSpec::RealType" .PP Definition at line \fB27\fP of file \fBbtrd\&.h\fP\&. .SH "Function Documentation" .PP .SS "double * IsoSpec::alloc_lfact_table ()" .PP Definition at line \fB32\fP of file \fBisoMath\&.cpp\fP\&. .SS "IntType IsoSpec::boost_binomial_distribution_variate (IntType t_arg, RealType p_arg, std::mt19937 & urng = \fCrandom_gen\fP)" .PP Definition at line \fB189\fP of file \fBbtrd\&.h\fP\&. .SS "IntType IsoSpec::btrd (IntType _t, RealType p, IntType m, std::mt19937 & urng = \fCrandom_gen\fP)" .PP Definition at line \fB77\fP of file \fBbtrd\&.h\fP\&. .SS "double IsoSpec::calc_mass (const int * conf, const double * masses, int dim)\fC [inline]\fP" .PP Definition at line \fB71\fP of file \fBmisc\&.h\fP\&. .SS "double IsoSpec::combinedSum (const int * conf, const \fBpod_vector\fP< double > ** valuesContainer, int dimNumber)\fC [inline]\fP" .PP Definition at line \fB38\fP of file \fBmisc\&.h\fP\&. .SS "double IsoSpec::combinedSum (const int * conf, const std::vector< double > ** valuesContainer, int dimNumber)\fC [inline]\fP" .PP Definition at line \fB29\fP of file \fBmisc\&.h\fP\&. .SS "template void IsoSpec::copyConf (const T * source, T * destination, int dim)\fC [inline]\fP" .PP Definition at line \fB26\fP of file \fBallocator\&.h\fP\&. .SS "template void IsoSpec::dealloc_table (T * tbl, int dim)" .PP Definition at line \fB133\fP of file \fBmisc\&.h\fP\&. .SS "template size_t * IsoSpec::get_inverse_order (T * order_array, size_t N)" .PP Definition at line \fB162\fP of file \fBmisc\&.h\fP\&. .SS "double IsoSpec::get_loggamma_nominator (int x)" .PP Definition at line \fB149\fP of file \fBmarginalTrek++\&.cpp\fP\&. .SS "template size_t * IsoSpec::get_order (T * order_array, size_t N)" .PP Definition at line \fB151\fP of file \fBmisc\&.h\fP\&. .SS "int * IsoSpec::getConf (void * conf)\fC [inline]\fP" .PP Definition at line \fB47\fP of file \fBmisc\&.h\fP\&. .SS "double IsoSpec::getLProb (void * conf)\fC [inline]\fP" .PP Definition at line \fB54\fP of file \fBmisc\&.h\fP\&. .SS "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\&. .PP Definition at line \fB122\fP of file \fBmarginalTrek++\&.cpp\fP\&. .SS "template void IsoSpec::impose_order (size_t * O, size_t N, TA * A, TB * B)" .PP Definition at line \fB173\fP of file \fBmisc\&.h\fP\&. .SS "double IsoSpec::InverseChiSquareCDF2 (int k, double x)\fC [inline]\fP" .PP Definition at line \fB68\fP of file \fBisoMath\&.h\fP\&. .SS "double IsoSpec::InverseLowerIncompleteGamma2 (int a, double x)" .PP Definition at line \fB131\fP of file \fBisoMath\&.cpp\fP\&. .SS "IntType IsoSpec::invert (IntType t, RealType p, std::mt19937 & urng = \fCrandom_gen\fP)" .PP Definition at line \fB160\fP of file \fBbtrd\&.h\fP\&. .SS "double IsoSpec::LowerIncompleteGamma2 (int a, double x)" .PP Definition at line \fB104\fP of file \fBisoMath\&.cpp\fP\&. .SS "double IsoSpec::NormalCDF (double x, double mean, double stdev)" .PP Definition at line \fB70\fP of file \fBisoMath\&.cpp\fP\&. .SS "double IsoSpec::NormalCDFInverse (double p)" .PP Definition at line \fB57\fP of file \fBisoMath\&.cpp\fP\&. .SS "double IsoSpec::NormalCDFInverse (double p, double mean, double stdev)" .PP Definition at line \fB65\fP of file \fBisoMath\&.cpp\fP\&. .SS "double IsoSpec::NormalPDF (double x, double mean, double stdev)" .PP Definition at line \fB95\fP of file \fBisoMath\&.cpp\fP\&. .SS "void IsoSpec::parse_fasta (const char * fasta, int atomCounts[6])\fC [inline]\fP" .PP Definition at line \fB33\fP of file \fBfasta\&.h\fP\&. .SS "unsigned int IsoSpec::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)" .PP Definition at line \fB355\fP of file \fBisoSpec++\&.cpp\fP\&. .SS "template void IsoSpec::printArray (const T * array, int size, const char * prefix = \fC''\fP)" .PP Definition at line \fB85\fP of file \fBmisc\&.h\fP\&. .SS "template void IsoSpec::printNestedArray (const T ** array, const int * shape, int size)" .PP Definition at line \fB108\fP of file \fBmisc\&.h\fP\&. .SS "template void IsoSpec::printOffsets (const T ** array, int size, const T * offset, const char * prefix = \fC''\fP)" .PP Definition at line \fB99\fP of file \fBmisc\&.h\fP\&. .SS "template void IsoSpec::printVector (const std::vector< T > & vec)" .PP Definition at line \fB94\fP of file \fBmisc\&.h\fP\&. .SS "void * IsoSpec::quickselect (void ** array, int n, int start, int end)" .PP Definition at line \fB28\fP of file \fBmisc\&.cpp\fP\&. .SS "double IsoSpec::RationalApproximation (double t)" .PP Definition at line \fB47\fP of file \fBisoMath\&.cpp\fP\&. .SS "double IsoSpec::rdvariate_beta_1_b (double b, std::mt19937 & rgen = \fCrandom_gen\fP)\fC [inline]\fP" .PP Definition at line \fB76\fP of file \fBisoMath\&.h\fP\&. .SS "size_t IsoSpec::rdvariate_binom (size_t tries, double succ_prob, std::mt19937 & rgen)" .PP Definition at line \fB153\fP of file \fBisoMath\&.cpp\fP\&. .SS "template void IsoSpec::realloc_append (T ** array, T what, size_t old_array_size)" .PP Definition at line \fB142\fP of file \fBmisc\&.h\fP\&. .SS "void IsoSpec::release_g_lfact_table ()" .PP Definition at line \fB23\fP of file \fBisoMath\&.cpp\fP\&. .SS "template void IsoSpec::reorder_array (T * arr, size_t * order, size_t size, bool can_destroy = \fCfalse\fP)" .PP Definition at line \fB134\fP of file \fBfixedEnvelopes\&.cpp\fP\&. .SS "double IsoSpec::unnormalized_logProb (const int * conf, const double * logProbs, int dim)\fC [inline]\fP" .PP Definition at line \fB61\fP of file \fBmisc\&.h\fP\&. .SS "int IsoSpec::verify_atom_cnt (int atomCnt)" .PP Definition at line \fB156\fP of file \fBmarginalTrek++\&.cpp\fP\&. .SS "void IsoSpec::writeInitialConfiguration (const int atomCnt, const int isotopeNo, const double * lprobs, int * res)" .PP 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\&. .PP \fBParameters\fP .RS 4 \fIatomCnt\fP .RE .PP 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\&. .PP Definition at line \fB50\fP of file \fBmarginalTrek++\&.cpp\fP\&. .SH "Variable Documentation" .PP .SS "const double IsoSpec::aa_elem_masses" \fBInitial value:\fP.PP .nf = { elem_table_mass[9], elem_table_mass[10], elem_table_mass[0], elem_table_mass[1], elem_table_mass[11], elem_table_mass[12], elem_table_mass[13], elem_table_mass[14], elem_table_mass[15], elem_table_mass[29], elem_table_mass[30], elem_table_mass[31], elem_table_mass[32], elem_table_mass[85], elem_table_mass[86], elem_table_mass[87], elem_table_mass[88], elem_table_mass[89], elem_table_mass[90] } .fi .PP Definition at line \fB27\fP of file \fBfasta\&.cpp\fP\&. .SS "const double IsoSpec::aa_elem_nominal_masses" \fBInitial value:\fP.PP .nf = { elem_table_massNo[9], elem_table_massNo[10], elem_table_massNo[0], elem_table_massNo[1], elem_table_massNo[11], elem_table_massNo[12], elem_table_massNo[13], elem_table_massNo[14], elem_table_massNo[15], elem_table_massNo[29], elem_table_massNo[30], elem_table_massNo[31], elem_table_massNo[32], elem_table_massNo[85], elem_table_massNo[86], elem_table_massNo[87], elem_table_massNo[88], elem_table_massNo[89], elem_table_massNo[90] } .fi .PP Definition at line \fB37\fP of file \fBfasta\&.cpp\fP\&. .SS "const double IsoSpec::aa_elem_probabilities" \fBInitial value:\fP.PP .nf = { elem_table_probability[9], elem_table_probability[10], elem_table_probability[0], elem_table_probability[1], elem_table_probability[11], elem_table_probability[12], elem_table_probability[13], elem_table_probability[14], elem_table_probability[15], elem_table_probability[29], elem_table_probability[30], elem_table_probability[31], elem_table_probability[32], elem_table_probability[85], elem_table_probability[86], elem_table_probability[87], elem_table_probability[88], elem_table_probability[89], elem_table_probability[90] } .fi .PP Definition at line \fB47\fP of file \fBfasta\&.cpp\fP\&. .SS "const int IsoSpec::aa_isotope_numbers = {2, 2, 2, 3, 4, 6}" .PP Definition at line \fB25\fP of file \fBfasta\&.cpp\fP\&. .SS "const int IsoSpec::aa_symbol_to_elem_counts" .PP Definition at line \fB57\fP of file \fBfasta\&.cpp\fP\&. .SS "ISOSPEC_C_API const int IsoSpec::elem_table_atomicNo" .PP Definition at line \fB325\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const char * IsoSpec::elem_table_element" .PP Definition at line \fB1509\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const int IsoSpec::elem_table_extraNeutrons" .PP Definition at line \fB1213\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const int IsoSpec::elem_table_ID" .PP Definition at line \fB28\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const double IsoSpec::elem_table_log_probability" .PP Definition at line \fB2693\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const double IsoSpec::elem_table_mass" .PP Definition at line \fB621\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const double IsoSpec::elem_table_massNo" .PP Definition at line \fB917\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const double IsoSpec::elem_table_probability" .PP Definition at line \fB2397\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const bool IsoSpec::elem_table_Radioactive" .PP Definition at line \fB2101\fP of file \fBelement_tables\&.cpp\fP\&. .SS "ISOSPEC_C_API const char * IsoSpec::elem_table_symbol" .PP Definition at line \fB1805\fP of file \fBelement_tables\&.cpp\fP\&. .SS "double * IsoSpec::g_lfact_table = alloc_lfact_table()" .PP Definition at line \fB44\fP of file \fBisoMath\&.cpp\fP\&. .SS "ISOSPEC_C_API const size_t IsoSpec::isospec_number_of_isotopic_entries = ISOSPEC_NUMBER_OF_ISOTOPIC_ENTRIES" .PP Definition at line \fB26\fP of file \fBelement_tables\&.cpp\fP\&. .SS "const double IsoSpec::logpi = 1\&.144729885849400174143427351353058711647294812915311571513623071472137769884826079783623270275489708" .PP Definition at line \fB54\fP of file \fBisoMath\&.h\fP\&. .SS "const double IsoSpec::pi = 3\&.14159265358979323846264338328" .PP Definition at line \fB53\fP of file \fBisoMath\&.h\fP\&. .SS "std::random_device IsoSpec::random_dev" .PP Definition at line \fB149\fP of file \fBisoMath\&.cpp\fP\&. .SS "const double IsoSpec::sqrt_pi = 1\&.772453850905516027298167483341145182798" .PP Definition at line \fB102\fP of file \fBisoMath\&.cpp\fP\&. .SH "Author" .PP Generated automatically by Doxygen for IsoSpec from the source code\&.