bpp-phyl  2.1.0
 All Classes Namespaces Files Functions Variables Friends Pages
bpp::DistanceEstimation Class Reference

Estimate a distance matrix from sequence data, according to a given model. More...

#include <Bpp/Phyl/Distance/DistanceEstimation.h>

+ Inheritance diagram for bpp::DistanceEstimation:
+ Collaboration diagram for bpp::DistanceEstimation:

Public Member Functions

 DistanceEstimation (SubstitutionModel *model, DiscreteDistribution *rateDist, size_t verbose=1)
 Create a new DistanceEstimation object according to a given substitution model and a rate distribution. More...
 
 DistanceEstimation (SubstitutionModel *model, DiscreteDistribution *rateDist, const SiteContainer *sites, size_t verbose=1, bool computeMat=true)
 Create a new DistanceEstimation object and compute distances according to a given substitution model and a rate distribution. More...
 
 DistanceEstimation (const DistanceEstimation &distanceEstimation)
 Copy constructor. More...
 
DistanceEstimationoperator= (const DistanceEstimation &distanceEstimation)
 Assigment operator. More...
 
virtual ~DistanceEstimation ()
 
DistanceEstimationclone () const
 
void computeMatrix () throw (NullPointerException)
 Perform the distance computation. More...
 
DistanceMatrixgetMatrix () const
 Get the distance matrix. More...
 
bool hasSubstitutionModel () const
 
const SubstitutionModelgetSubstitutionModel () const throw (Exception)
 
void resetSubstitutionModel (SubstitutionModel *model=0)
 
bool hasRateDistribution () const
 
const DiscreteDistributiongetRateDistribution () const throw (Exception)
 
void resetRateDistribution (DiscreteDistribution *rateDist=0)
 
void setData (const SiteContainer *sites)
 
const SiteContainergetData () const
 
void resetData ()
 
void setOptimizer (const Optimizer *optimizer)
 
const OptimizergetOptimizer () const
 
OptimizergetOptimizer ()
 
void resetOptimizer ()
 
void setAdditionalParameters (const ParameterList &parameters)
 Specify a list of parameters to be estimated. More...
 
void resetAdditionalParameters ()
 Reset all additional parameters. More...
 
void setVerbose (size_t verbose)
 
size_t getVerbose () const
 

Private Member Functions

void init_ ()
 

Private Attributes

auto_ptr< SubstitutionModelmodel_
 
auto_ptr< DiscreteDistributionrateDist_
 
const SiteContainersites_
 
DistanceMatrixdist_
 
Optimizeroptimizer_
 
MetaOptimizerdefaultOptimizer_
 
size_t verbose_
 
ParameterList parameters_
 

Detailed Description

Estimate a distance matrix from sequence data, according to a given model.

By default, the parameters of the model are fixed to there given values. It is possible to estimate one or several parameters by setting them with the setAdditionalParameters() method. Parameters will be estimated separately for each pair of sequence.

For now it is not possible to retrieve estimated values. You'll have to specify a 'profiler' to the optimizer and then look at the file if you want to do so.

Definition at line 298 of file DistanceEstimation.h.

Constructor & Destructor Documentation

bpp::DistanceEstimation::DistanceEstimation ( SubstitutionModel model,
DiscreteDistribution rateDist,
size_t  verbose = 1 
)
inline

Create a new DistanceEstimation object according to a given substitution model and a rate distribution.

This instance will own the model and distribution, and will take car of their recopy and destruction.

Parameters
modelThe substitution model to use.
rateDistThe discrete rate distribution to use.
verboseThe verbose level:
  • 0=Off,
  • 1=one * by row computation
  • 2=one * by row computation and one . by column computation
  • 3=2 + optimization verbose enabled
  • 4=3 + likelihood object verbose enabled

Definition at line 327 of file DistanceEstimation.h.

bpp::DistanceEstimation::DistanceEstimation ( SubstitutionModel model,
DiscreteDistribution rateDist,
const SiteContainer sites,
size_t  verbose = 1,
bool  computeMat = true 
)
inline

Create a new DistanceEstimation object and compute distances according to a given substitution model and a rate distribution.

This instance will own the model and distribution, and will take car of their recopy and destruction.

Parameters
modelThe substitution model to use.
rateDistThe discrete rate distribution to use.
sitesThe sequence data.
verboseThe verbose level:
  • 0=Off,
  • 1=one * by row computation
  • 2=one * by row computation and one . by column computation
  • 3=2 + optimization verbose enabled
  • 4=3 + likelihood object verbose enabled
computeMatif true the computeMatrix() method is called.

Definition at line 360 of file DistanceEstimation.h.

bpp::DistanceEstimation::DistanceEstimation ( const DistanceEstimation distanceEstimation)
inline

Copy constructor.

Only the distance matrix is hard-copied, if there is one.

Parameters
distanceEstimationThe object to copy.

Definition at line 386 of file DistanceEstimation.h.

References dist_, and dist_.

virtual bpp::DistanceEstimation::~DistanceEstimation ( )
inlinevirtual

Definition at line 426 of file DistanceEstimation.h.

Member Function Documentation

DistanceEstimation* bpp::DistanceEstimation::clone ( ) const
inlinevirtual

Implements bpp::Clonable.

Definition at line 438 of file DistanceEstimation.h.

const SiteContainer* bpp::DistanceEstimation::getData ( ) const
inline

Definition at line 499 of file DistanceEstimation.h.

DistanceMatrix* bpp::DistanceEstimation::getMatrix ( ) const
inline

Get the distance matrix.

Returns
A pointer toward the computed distance matrix.

Definition at line 474 of file DistanceEstimation.h.

Referenced by bpp::TreeTools::MRP().

const Optimizer* bpp::DistanceEstimation::getOptimizer ( ) const
inline

Definition at line 507 of file DistanceEstimation.h.

Optimizer* bpp::DistanceEstimation::getOptimizer ( )
inline

Definition at line 508 of file DistanceEstimation.h.

const DiscreteDistribution& bpp::DistanceEstimation::getRateDistribution ( ) const throw (Exception)
inline

Definition at line 489 of file DistanceEstimation.h.

const SubstitutionModel& bpp::DistanceEstimation::getSubstitutionModel ( ) const throw (Exception)
inline

Definition at line 478 of file DistanceEstimation.h.

References bpp::TwoTreeLikelihood::model_.

size_t bpp::DistanceEstimation::getVerbose ( ) const
inline
Returns
Verbose level.

Definition at line 538 of file DistanceEstimation.h.

bool bpp::DistanceEstimation::hasRateDistribution ( ) const
inline

Definition at line 487 of file DistanceEstimation.h.

bool bpp::DistanceEstimation::hasSubstitutionModel ( ) const
inline

Definition at line 476 of file DistanceEstimation.h.

DistanceEstimation& bpp::DistanceEstimation::operator= ( const DistanceEstimation distanceEstimation)
inline

Assigment operator.

Only the distance matrix is hard-copied, if there is one.

Parameters
distanceEstimationThe object to copy.
Returns
A reference toward this object.

Definition at line 410 of file DistanceEstimation.h.

References dist_, dist_, model_, optimizer_, parameters_, rateDist_, sites_, and verbose_.

void bpp::DistanceEstimation::resetAdditionalParameters ( )
inline

Reset all additional parameters.

Definition at line 526 of file DistanceEstimation.h.

References bpp::ParameterList::reset().

void bpp::DistanceEstimation::resetData ( )
inline

Definition at line 500 of file DistanceEstimation.h.

void bpp::DistanceEstimation::resetOptimizer ( )
inline

Definition at line 509 of file DistanceEstimation.h.

References bpp::MetaOptimizer::clone().

void bpp::DistanceEstimation::resetRateDistribution ( DiscreteDistribution rateDist = 0)
inline

Definition at line 496 of file DistanceEstimation.h.

void bpp::DistanceEstimation::resetSubstitutionModel ( SubstitutionModel model = 0)
inline

Definition at line 485 of file DistanceEstimation.h.

void bpp::DistanceEstimation::setAdditionalParameters ( const ParameterList parameters)
inline

Specify a list of parameters to be estimated.

Parameters will be estimated separately for each distance.

Parameters
parametersA list of parameters to estimate.

Definition at line 518 of file DistanceEstimation.h.

void bpp::DistanceEstimation::setData ( const SiteContainer sites)
inline

Definition at line 498 of file DistanceEstimation.h.

void bpp::DistanceEstimation::setOptimizer ( const Optimizer optimizer)
inline

Definition at line 502 of file DistanceEstimation.h.

References bpp::Clonable::clone().

void bpp::DistanceEstimation::setVerbose ( size_t  verbose)
inline
Parameters
verboseVerbose level.

Definition at line 534 of file DistanceEstimation.h.

Member Data Documentation

MetaOptimizer* bpp::DistanceEstimation::defaultOptimizer_
private

Definition at line 307 of file DistanceEstimation.h.

DistanceMatrix* bpp::DistanceEstimation::dist_
private
auto_ptr<SubstitutionModel> bpp::DistanceEstimation::model_
private

Definition at line 302 of file DistanceEstimation.h.

Referenced by computeMatrix(), and operator=().

Optimizer* bpp::DistanceEstimation::optimizer_
private
ParameterList bpp::DistanceEstimation::parameters_
private

Definition at line 309 of file DistanceEstimation.h.

Referenced by computeMatrix(), and operator=().

auto_ptr<DiscreteDistribution> bpp::DistanceEstimation::rateDist_
private

Definition at line 303 of file DistanceEstimation.h.

Referenced by computeMatrix(), and operator=().

const SiteContainer* bpp::DistanceEstimation::sites_
private
size_t bpp::DistanceEstimation::verbose_
private

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