bpp-phyl  2.3.0
bpp::SubstitutionMappingTools Class Reference

Provide methods to compute substitution mappings. More...

#include <Bpp/Phyl/Mapping/SubstitutionMappingTools.h>

Public Member Functions

 SubstitutionMappingTools ()
 
virtual ~SubstitutionMappingTools ()
 

Static Public Member Functions

static ProbabilisticSubstitutionMappingcomputeSubstitutionVectors (const DRTreeLikelihood &drtl, SubstitutionCount &substitutionCount, bool verbose=true) throw (Exception)
 Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation. More...
 
static ProbabilisticSubstitutionMappingcomputeSubstitutionVectors (const DRTreeLikelihood &drtl, const std::vector< int > &nodeIds, SubstitutionCount &substitutionCount, bool verbose=true) throw (Exception)
 Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation. More...
 
static ProbabilisticSubstitutionMappingcomputeSubstitutionVectors (const DRTreeLikelihood &drtl, const SubstitutionModelSet &modelSet, const std::vector< int > &nodeIds, SubstitutionCount &substitutionCount, bool verbose=true) throw (Exception)
 
static ProbabilisticSubstitutionMappingcomputeSubstitutionVectorsNoAveraging (const DRTreeLikelihood &drtl, SubstitutionCount &substitutionCount, bool verbose=true) throw (Exception)
 Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation. More...
 
static ProbabilisticSubstitutionMappingcomputeSubstitutionVectorsNoAveragingMarginal (const DRTreeLikelihood &drtl, SubstitutionCount &substitutionCount, bool verbose=true) throw (Exception)
 Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation. More...
 
static ProbabilisticSubstitutionMappingcomputeSubstitutionVectorsMarginal (const DRTreeLikelihood &drtl, SubstitutionCount &substitutionCount, bool verbose=true) throw (Exception)
 Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation. More...
 
static ProbabilisticSubstitutionMappingcomputeOneJumpProbabilityVectors (const DRTreeLikelihood &drtl, bool verbose=true) throw (Exception)
 This method computes for each site and for each branch the probability that at least one jump occurred. More...
 
static void writeToStream (const ProbabilisticSubstitutionMapping &substitutions, const SiteContainer &sites, size_t type, std::ostream &out) throw (IOException)
 Write the substitutions vectors to a stream. More...
 
static void readFromStream (std::istream &in, ProbabilisticSubstitutionMapping &substitutions, size_t type) throw (IOException)
 Read the substitutions vectors from a stream. More...
 
static std::vector< double > computeTotalSubstitutionVectorForSitePerBranch (const SubstitutionMapping &smap, size_t siteIndex)
 Sum all type of substitutions for each branch of a given position (specified by its index). More...
 
static std::vector< double > computeTotalSubstitutionVectorForSitePerType (const SubstitutionMapping &smap, size_t siteIndex)
 Sum all type of substitutions for each type of a given position (specified by its index). More...
 
static double computeNormForSite (const SubstitutionMapping &smap, size_t siteIndex)
 Compute the norm of a substitution vector for a given position (specified by its index). More...
 
static std::vector< double > computeSumForBranch (const SubstitutionMapping &smap, size_t branchIndex)
 Sum all substitutions for each type of a given branch (specified by its index). More...
 
static std::vector< double > computeSumForSite (const SubstitutionMapping &smap, size_t siteIndex)
 Sum all substitutions for each type of a given site (specified by its index). More...
 
static std::vector< std::vector< double > > getCountsPerBranch (DRTreeLikelihood &drtl, const std::vector< int > &ids, SubstitutionModel *model, const SubstitutionRegister &reg, double threshold=-1, bool verbose=true)
 Returns the counts on each branch. More...
 
static std::vector< std::vector< double > > getCountsPerBranch (DRTreeLikelihood &drtl, const std::vector< int > &ids, const SubstitutionModelSet &modelSet, const SubstitutionRegister &reg, double threshold=-1, bool verbose=true)
 
static std::vector< std::vector< double > > getNormalizationsPerBranch (DRTreeLikelihood &drtl, const std::vector< int > &ids, const SubstitutionModel *nullModel, const SubstitutionRegister &reg, bool verbose=true)
 Returns the normalization factors due to the null model on each branch, for each register. More...
 
static std::vector< std::vector< double > > getNormalizationsPerBranch (DRTreeLikelihood &drtl, const std::vector< int > &ids, const SubstitutionModelSet *nullModelSet, const SubstitutionRegister &reg, bool verbose=true)
 Returns the normalization factors due to the set of null models on each branch, for each register. More...
 
static std::vector< std::vector< double > > getNormalizedCountsPerBranch (DRTreeLikelihood &drtl, const std::vector< int > &ids, SubstitutionModel *model, SubstitutionModel *nullModel, const SubstitutionRegister &reg, bool verbose=true)
 Returns the counts normalized by a null model. More...
 
static std::vector< std::vector< double > > getNormalizedCountsPerBranch (DRTreeLikelihood &drtl, const std::vector< int > &ids, SubstitutionModelSet *modelSet, SubstitutionModelSet *nullModelSet, const SubstitutionRegister &reg, bool verbose=true)
 Returns the counts normalized by a null model set. More...
 
static std::vector< std::vector< double > > getRelativeCountsPerBranch (DRTreeLikelihood &drtl, const std::vector< int > &ids, SubstitutionModel *model, const SubstitutionRegister &reg, double threshold=-1)
 Returns the counts relative to the frequency of the states in case of non-stationarity. More...
 
static void outputTotalCountsPerBranchPerSite (std::string &filename, DRTreeLikelihood &drtl, const std::vector< int > &ids, SubstitutionModel *model, const SubstitutionRegister &reg)
 Output the sum over all types of the counts per branch per site, in a file. More...
 
static void outputTotalCountsPerTypePerSite (std::string &filename, DRTreeLikelihood &drtl, const std::vector< int > &ids, SubstitutionModel *model, const SubstitutionRegister &reg)
 Output the sum over all branches of the counts per type per site, in a file. More...
 
static void outputIndividualCountsPerBranchPerSite (const std::string &filenamePrefix, DRTreeLikelihood &drtl, const std::vector< int > &ids, SubstitutionModel *model, const SubstitutionRegister &reg)
 Output individual counts par branch per site, in files. More...
 

Detailed Description

Provide methods to compute substitution mappings.

For now, only 4 methods are implemented, and provide probabilistic substitution mappings.

See: Dutheil J, Pupko T, Jean-Marie A, Galtier N. A model-based approach for detecting coevolving positions in a molecule. Mol Biol Evol. 2005 Sep;22(9):1919-28. Epub 2005 Jun 8.

Author
Julien Dutheil

Definition at line 63 of file SubstitutionMappingTools.h.

Constructor & Destructor Documentation

bpp::SubstitutionMappingTools::SubstitutionMappingTools ( )
inline

Definition at line 66 of file SubstitutionMappingTools.h.

virtual bpp::SubstitutionMappingTools::~SubstitutionMappingTools ( )
inlinevirtual

Definition at line 67 of file SubstitutionMappingTools.h.

Member Function Documentation

double SubstitutionMappingTools::computeNormForSite ( const SubstitutionMapping smap,
size_t  siteIndex 
)
static

Compute the norm of a substitution vector for a given position (specified by its index).

The norm is computed as: $ N_i = \sqrt{\left(\sum_l {\left(\sum_t n_{l, i, t}\right)}^2\right)}$, where $n_{l, i, t}$ is the number of substitutions of type t on site i on branch l, obtained using the () operator for the SubstitutionMapping object.

Parameters
smapThe substitution map to use.
siteIndexThe index of the substitution vector for which the norm should be computed.
Returns
The norm of the substitution vector.

Definition at line 1368 of file SubstitutionMappingTools.cpp.

References bpp::Mapping::getNumberOfBranches(), and bpp::SubstitutionMapping::getNumberOfSubstitutionTypes().

Referenced by computeOneJumpProbabilityVectors().

static ProbabilisticSubstitutionMapping* bpp::SubstitutionMappingTools::computeOneJumpProbabilityVectors ( const DRTreeLikelihood drtl,
bool  verbose = true 
)
throw (Exception
)
inlinestatic
static ProbabilisticSubstitutionMapping* bpp::SubstitutionMappingTools::computeSubstitutionVectors ( const DRTreeLikelihood drtl,
SubstitutionCount substitutionCount,
bool  verbose = true 
)
throw (Exception
)
inlinestatic

Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation.

Parameters
drtlA DRTreeLikelihood object.
substitutionCountThe SubstitutionCount to use.
verbosePrint info to screen.
Returns
A vector of substitutions vectors (one for each site).
Exceptions
ExceptionIf the likelihood object is not initialized.

Definition at line 80 of file SubstitutionMappingTools.h.

References computeSubstitutionVectorsMarginal(), computeSubstitutionVectorsNoAveraging(), and computeSubstitutionVectorsNoAveragingMarginal().

Referenced by computeOneJumpProbabilityVectors(), getCountsPerBranch(), outputIndividualCountsPerBranchPerSite(), outputTotalCountsPerBranchPerSite(), and outputTotalCountsPerTypePerSite().

ProbabilisticSubstitutionMapping * SubstitutionMappingTools::computeSubstitutionVectors ( const DRTreeLikelihood drtl,
const std::vector< int > &  nodeIds,
SubstitutionCount substitutionCount,
bool  verbose = true 
)
throw (Exception
)
static
ProbabilisticSubstitutionMapping * SubstitutionMappingTools::computeSubstitutionVectorsMarginal ( const DRTreeLikelihood drtl,
SubstitutionCount substitutionCount,
bool  verbose = true 
)
throw (Exception
)
static

Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation.

The marginal probability is used for weighting, i.e. the product of probabilities for the pair.

This function is mainly for testing purpose (see Dutheil et al. 2005). For practical use, consider using the 'getSubstitutionVectors' method instead.

Parameters
drtlA DRTreeLikelihood object.
substitutionCountThe substitutionsCount to use.
verbosePrint info to screen.
Returns
A vector of substitutions vectors (one for each site).
Exceptions
ExceptionIf the likelihood object is not initialized.

Definition at line 1113 of file SubstitutionMappingTools.cpp.

References bpp::ApplicationTools::displayGauge(), bpp::ApplicationTools::displayTask(), bpp::ApplicationTools::displayTaskDone(), bpp::DiscreteDistribution::getCategories(), bpp::Node::getDistanceToFather(), bpp::Node::getFather(), bpp::Node::getId(), bpp::TreeLikelihood::ConstBranchModelDescription::getNewSiteIterator(), bpp::DiscreteDistribution::getNumberOfCategories(), bpp::DRTreeLikelihoodTools::getPosteriorProbabilitiesForEachStateForEachRate(), bpp::DiscreteDistribution::getProbabilities(), bpp::TreeLikelihood::ConstBranchModelDescription::getSubstitutionModel(), bpp::ApplicationTools::message, and bpp::Matrix< Scalar >::resize().

Referenced by computeSubstitutionVectors().

ProbabilisticSubstitutionMapping * SubstitutionMappingTools::computeSubstitutionVectorsNoAveraging ( const DRTreeLikelihood drtl,
SubstitutionCount substitutionCount,
bool  verbose = true 
)
throw (Exception
)
static

Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation.

In this method, substitution counts are computed using the pair of ancestral states with maximum likelihood. This is a kind of joint-pair ancestral reconstruction, as in Galtier and Boursot (1998). This reconstruction possibly takes into account several rate classes, and substitution counts are averaged over all rate classes, weighted by their conditional likelihood.

This function is mainly for testing purpose (see Dutheil et al. 2005). For practical use, consider using the 'getSubstitutionVectors' method instead.

Parameters
drtlA DRTreeLikelihood object.
substitutionCountThe substitutionsCount to use.
verbosePrint info to screen.
Returns
A vector of substitutions vectors (one for each site).
Exceptions
ExceptionIf the likelihood object is not initialized.

Definition at line 685 of file SubstitutionMappingTools.cpp.

References bpp::ApplicationTools::displayGauge(), bpp::ApplicationTools::displayTask(), bpp::ApplicationTools::displayTaskDone(), bpp::MatrixTools::fill(), bpp::DiscreteDistribution::getCategories(), bpp::Node::getDistanceToFather(), bpp::Node::getFather(), bpp::Node::getId(), bpp::TreeLikelihood::ConstBranchModelDescription::getNewSiteIterator(), bpp::DiscreteDistribution::getNumberOfCategories(), bpp::Node::getNumberOfSons(), bpp::DiscreteDistribution::getProbability(), bpp::Node::getSon(), bpp::TreeLikelihood::ConstBranchModelDescription::getSubstitutionModel(), bpp::Node::hasFather(), bpp::TreeLikelihood::ConstBranchModelIterator::hasNext(), bpp::ApplicationTools::message, bpp::TreeLikelihood::ConstBranchModelIterator::next(), bpp::Matrix< Scalar >::resize(), and bpp::MatrixTools::whichMax().

Referenced by computeSubstitutionVectors().

ProbabilisticSubstitutionMapping * SubstitutionMappingTools::computeSubstitutionVectorsNoAveragingMarginal ( const DRTreeLikelihood drtl,
SubstitutionCount substitutionCount,
bool  verbose = true 
)
throw (Exception
)
static

Compute the substitutions vectors for a particular dataset using the double-recursive likelihood computation.

In this method, all ancestral states are estimated using marginal likelihoods, putatively intregated over several rate classes. For each branch, the number of substitution given marginal states is used. This method, used with a SimpleSubstitutionCount objet is equivalent to Tufféry and Darlu's (2000) computation of substitution vectors.

Use with another substitution count objet is in most cases irrelevent.

Parameters
drtlA DRTreeLikelihood object.
substitutionCountThe substitutionsCount to use.
verbosePrint info to screen.
Returns
A vector of substitutions vectors (one for each site).
Exceptions
ExceptionIf the likelihood object is not initialized.

Definition at line 982 of file SubstitutionMappingTools.cpp.

References bpp::ApplicationTools::displayGauge(), bpp::ApplicationTools::displayTask(), bpp::ApplicationTools::displayTaskDone(), bpp::MarginalAncestralStateReconstruction::getAllAncestralStates(), bpp::DiscreteDistribution::getCategories(), bpp::Node::getDistanceToFather(), bpp::Node::getFather(), bpp::Node::getId(), bpp::TreeLikelihood::ConstBranchModelDescription::getNewSiteIterator(), bpp::Alphabet::getSize(), bpp::TreeLikelihood::ConstBranchModelDescription::getSubstitutionModel(), bpp::TreeLikelihood::ConstBranchModelIterator::hasNext(), bpp::ApplicationTools::message, bpp::TreeLikelihood::ConstBranchModelIterator::next(), and bpp::Matrix< Scalar >::resize().

Referenced by computeSubstitutionVectors().

vector< double > SubstitutionMappingTools::computeSumForBranch ( const SubstitutionMapping smap,
size_t  branchIndex 
)
static

Sum all substitutions for each type of a given branch (specified by its index).

Parameters
smapThe substitution map to use.
branchIndexThe index of the substitution vector for which the counts should be computed.
Returns
A vector will all counts summed for each types of substitutions.

Definition at line 1385 of file SubstitutionMappingTools.cpp.

References bpp::Mapping::getNumberOfSites(), and bpp::SubstitutionMapping::getNumberOfSubstitutionTypes().

Referenced by computeOneJumpProbabilityVectors().

vector< double > SubstitutionMappingTools::computeSumForSite ( const SubstitutionMapping smap,
size_t  siteIndex 
)
static

Sum all substitutions for each type of a given site (specified by its index).

Parameters
smapThe substitution map to use.
siteIndexThe index of the substitution vector for which the counts should be computed.
Returns
A vector will all counts summed for each types of substitutions.

Definition at line 1402 of file SubstitutionMappingTools.cpp.

References bpp::Mapping::getNumberOfBranches(), and bpp::SubstitutionMapping::getNumberOfSubstitutionTypes().

Referenced by computeOneJumpProbabilityVectors().

vector< double > SubstitutionMappingTools::computeTotalSubstitutionVectorForSitePerBranch ( const SubstitutionMapping smap,
size_t  siteIndex 
)
static

Sum all type of substitutions for each branch of a given position (specified by its index).

Parameters
smapThe substitution map to use.
siteIndexThe index of the substitution vector for which the counts should be computed.
Returns
A vector will all counts for all types of substitutions summed.

Definition at line 1332 of file SubstitutionMappingTools.cpp.

References bpp::Mapping::getNumberOfBranches(), and bpp::SubstitutionMapping::getNumberOfSubstitutionTypes().

Referenced by computeOneJumpProbabilityVectors(), and outputTotalCountsPerBranchPerSite().

vector< double > SubstitutionMappingTools::computeTotalSubstitutionVectorForSitePerType ( const SubstitutionMapping smap,
size_t  siteIndex 
)
static

Sum all type of substitutions for each type of a given position (specified by its index).

Parameters
smapThe substitution map to use.
siteIndexThe index of the substitution vector for which the counts should be computed.
Returns
A vector will all counts for all branches summed.

Definition at line 1350 of file SubstitutionMappingTools.cpp.

References bpp::Mapping::getNumberOfBranches(), and bpp::SubstitutionMapping::getNumberOfSubstitutionTypes().

Referenced by computeOneJumpProbabilityVectors(), and outputTotalCountsPerTypePerSite().

vector< vector< double > > SubstitutionMappingTools::getCountsPerBranch ( DRTreeLikelihood drtl,
const std::vector< int > &  ids,
SubstitutionModel model,
const SubstitutionRegister reg,
double  threshold = -1,
bool  verbose = true 
)
static

Returns the counts on each branch.

Parameters
drtlA DRTreeLikelihood object.
idsThe numbers of the nodes of the tree
modelThe model on which the SubstitutionCount is built
regthe Substitution Register
thresholdvalue above which counts are considered saturated (default: -1 means no threshold).
verboseDisplay progress messages.
Returns
A vector of substitutions vectors (one per branch per type).

Definition at line 1419 of file SubstitutionMappingTools.cpp.

References bpp::SubstitutionRegister::clone(), computeSubstitutionVectors(), bpp::ApplicationTools::displayWarning(), bpp::AbstractMapping::getNodeIndex(), bpp::AbstractMapping::getNumberOfSites(), bpp::ProbabilisticSubstitutionMapping::getNumberOfSubstitutionTypes(), and bpp::TextTools::toString().

Referenced by computeOneJumpProbabilityVectors().

vector< vector< double > > SubstitutionMappingTools::getCountsPerBranch ( DRTreeLikelihood drtl,
const std::vector< int > &  ids,
const SubstitutionModelSet modelSet,
const SubstitutionRegister reg,
double  threshold = -1,
bool  verbose = true 
)
static
vector< vector< double > > SubstitutionMappingTools::getNormalizationsPerBranch ( DRTreeLikelihood drtl,
const std::vector< int > &  ids,
const SubstitutionModel nullModel,
const SubstitutionRegister reg,
bool  verbose = true 
)
static

Returns the normalization factors due to the null model on each branch, for each register.

Parameters
drtlA DRTreeLikelihood object.
idsThe numbers of the nodes of the tree
nullModelThe model on which the SubstitutionCount is built
regthe Substitution Register
verboseDisplay progress messages.
Returns
A vector of normalization vectors (one per branch per type).

Definition at line 1583 of file SubstitutionMappingTools.cpp.

References bpp::RewardMappingTools::computeRewardVectors(), bpp::ApplicationTools::displayWarning(), bpp::TransitionModel::getAlphabet(), bpp::TransitionModel::getAlphabetStates(), bpp::WordAlphabet::getLength(), bpp::TreeLikelihood::getNumberOfSites(), bpp::SubstitutionRegister::getNumberOfSubstitutionTypes(), bpp::Alphabet::getSize(), bpp::SubstitutionRegister::getType(), bpp::SubstitutionRegister::getTypeName(), bpp::SubstitutionModel::Qij(), bpp::WordAlphabet::resize(), and bpp::TextTools::toString().

Referenced by computeOneJumpProbabilityVectors().

vector< vector< double > > SubstitutionMappingTools::getNormalizationsPerBranch ( DRTreeLikelihood drtl,
const std::vector< int > &  ids,
const SubstitutionModelSet nullModelSet,
const SubstitutionRegister reg,
bool  verbose = true 
)
static
vector< vector< double > > SubstitutionMappingTools::getNormalizedCountsPerBranch ( DRTreeLikelihood drtl,
const std::vector< int > &  ids,
SubstitutionModel model,
SubstitutionModel nullModel,
const SubstitutionRegister reg,
bool  verbose = true 
)
static

Returns the counts normalized by a null model.

Parameters
drtlA DRTreeLikelihood object.
idsThe numbers of the nodes of the tree
modelThe model on which the SubstitutionCount is built
nullModelThe null model used for normalization.
regthe Substitution Register
verboseDisplay progress messages.

Definition at line 1746 of file SubstitutionMappingTools.cpp.

References bpp::TreeTemplate< N >::getNode(), and bpp::TreeLikelihood::getTree().

Referenced by computeOneJumpProbabilityVectors().

vector< vector< double > > SubstitutionMappingTools::getNormalizedCountsPerBranch ( DRTreeLikelihood drtl,
const std::vector< int > &  ids,
SubstitutionModelSet modelSet,
SubstitutionModelSet nullModelSet,
const SubstitutionRegister reg,
bool  verbose = true 
)
static

Returns the counts normalized by a null model set.

Parameters
drtlA DRTreeLikelihood object.
idsThe numbers of the nodes of the tree
modelSetThe model set on which the SubstitutionCount is built
nullModelSetThe null model set used for normalization.
regthe Substitution Register
verboseDisplay progress messages.

Definition at line 1789 of file SubstitutionMappingTools.cpp.

References bpp::TreeTemplate< N >::getNode(), bpp::SubstitutionModelSet::getSubstitutionModel(), and bpp::TreeLikelihood::getTree().

vector< vector< double > > SubstitutionMappingTools::getRelativeCountsPerBranch ( DRTreeLikelihood drtl,
const std::vector< int > &  ids,
SubstitutionModel model,
const SubstitutionRegister reg,
double  threshold = -1 
)
static

Returns the counts relative to the frequency of the states in case of non-stationarity.

Parameters
drtlA DRTreeLikelihood object.
idsThe numbers of the nodes of the tree
modelThe model on which the SubstitutionCount is built
regthe Substitution Register
      If the SubstitutionRegister is a non-stationary
      CategorySubstitutionRegister, a correction is made.
thresholdvalue above which counts are considered saturated (default: -1 means no threshold).

Definition at line 1832 of file SubstitutionMappingTools.cpp.

References bpp::CategorySubstitutionRegister::getCategory(), bpp::CategorySubstitutionRegister::getCategoryFrom(), bpp::CategorySubstitutionRegister::getNumberOfCategories(), bpp::DRTreeLikelihoodTools::getPosteriorStateFrequencies(), bpp::CategorySubstitutionRegister::isStationary(), and bpp::VectorTools::sum().

Referenced by computeOneJumpProbabilityVectors().

void SubstitutionMappingTools::outputIndividualCountsPerBranchPerSite ( const std::string &  filenamePrefix,
DRTreeLikelihood drtl,
const std::vector< int > &  ids,
SubstitutionModel model,
const SubstitutionRegister reg 
)
static

Output individual counts par branch per site, in files.

Parameters
filenamePrefixThe filename prefix
drtlA DRTreeLikelihood object.
idsThe numbers of the nodes of the tree
modelThe model on which the SubstitutionCount is built
regthe Substitution Register
Author
Iakov Davydov

Definition at line 1959 of file SubstitutionMappingTools.cpp.

References bpp::SubstitutionRegister::clone(), computeSubstitutionVectors(), bpp::ApplicationTools::displayResult(), bpp::AbstractMapping::getNodeIndex(), bpp::AbstractMapping::getNumberOfSites(), bpp::SubstitutionRegister::getNumberOfSubstitutionTypes(), bpp::SubstitutionRegister::getTypeName(), and bpp::TextTools::toString().

Referenced by computeOneJumpProbabilityVectors().

void SubstitutionMappingTools::outputTotalCountsPerBranchPerSite ( std::string &  filename,
DRTreeLikelihood drtl,
const std::vector< int > &  ids,
SubstitutionModel model,
const SubstitutionRegister reg 
)
static

Output the sum over all types of the counts per branch per site, in a file.

Parameters
filenameThe name of the output file
drtlA DRTreeLikelihood object.
idsThe numbers of the nodes of the tree
modelThe model on which the SubstitutionCount is built
regthe Substitution Register

Definition at line 1876 of file SubstitutionMappingTools.cpp.

References bpp::SubstitutionRegister::clone(), computeSubstitutionVectors(), computeTotalSubstitutionVectorForSitePerBranch(), bpp::AbstractMapping::getNodeIndex(), and bpp::AbstractMapping::getNumberOfSites().

Referenced by computeOneJumpProbabilityVectors().

void SubstitutionMappingTools::outputTotalCountsPerTypePerSite ( std::string &  filename,
DRTreeLikelihood drtl,
const std::vector< int > &  ids,
SubstitutionModel model,
const SubstitutionRegister reg 
)
static

Output the sum over all branches of the counts per type per site, in a file.

Parameters
filenameThe name of the output file
drtlA DRTreeLikelihood object.
idsThe numbers of the nodes of the tree
modelThe model on which the SubstitutionCount is built
regthe Substitution Register

Definition at line 1920 of file SubstitutionMappingTools.cpp.

References bpp::SubstitutionRegister::clone(), computeSubstitutionVectors(), computeTotalSubstitutionVectorForSitePerType(), bpp::AbstractMapping::getNumberOfSites(), bpp::ProbabilisticSubstitutionMapping::getNumberOfSubstitutionTypes(), and bpp::SubstitutionRegister::getTypeName().

Referenced by computeOneJumpProbabilityVectors().

void SubstitutionMappingTools::readFromStream ( std::istream &  in,
ProbabilisticSubstitutionMapping substitutions,
size_t  type 
)
throw (IOException
)
static

Read the substitutions vectors from a stream.

Parameters
inThe input stream where to read the vectors.
substitutionsThe mapping object to fill.
typeThe type of substitutions that are read. Should be in supported by the substittuion count obect assiciated to the mapping, if any.
Exceptions
IOExceptionIf an input error happens.

Definition at line 1288 of file SubstitutionMappingTools.cpp.

References bpp::DataTable::deleteColumn(), bpp::DataTable::getColumn(), bpp::DataTable::getColumnName(), bpp::DataTable::getNumberOfColumns(), bpp::DataTable::getNumberOfRows(), bpp::DataTable::read(), bpp::TextTools::toDouble(), bpp::TextTools::toInt(), and bpp::Exception::what().

Referenced by computeOneJumpProbabilityVectors().

void SubstitutionMappingTools::writeToStream ( const ProbabilisticSubstitutionMapping substitutions,
const SiteContainer sites,
size_t  type,
std::ostream &  out 
)
throw (IOException
)
static

Write the substitutions vectors to a stream.

Parameters
substitutionsThe substitutions vectors to write.
sitesThe dataset associated to the vectors (needed to know the position of each site in the dataset).
typeThe type of substitutions to be output. See SubstitutionCount class. Only one type of substitution can be output at a time.
outThe output stream where to write the vectors.
Exceptions
IOExceptionIf an output error happens.

Definition at line 1258 of file SubstitutionMappingTools.cpp.

Referenced by computeOneJumpProbabilityVectors().


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