bpp-phyl  2.1.0
bpp::LaplaceSubstitutionCount Class Reference

Laplace estimate of the substitution count. More...

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

+ Inheritance diagram for bpp::LaplaceSubstitutionCount:
+ Collaboration diagram for bpp::LaplaceSubstitutionCount:

List of all members.

Public Member Functions

 LaplaceSubstitutionCount (const SubstitutionModel *model, int cutOff)
 LaplaceSubstitutionCount (const LaplaceSubstitutionCount &asc)
LaplaceSubstitutionCountoperator= (const LaplaceSubstitutionCount &asc)
virtual ~LaplaceSubstitutionCount ()
LaplaceSubstitutionCountclone () const
double getNumberOfSubstitutions (int initialState, int finalState, double length, size_t type=1) const
 Get the number of susbstitutions on a branch, given the initial and final states, and the branch length.
Matrix< double > * getAllNumbersOfSubstitutions (double length, size_t type=1) const
 Get the numbers of susbstitutions on a branch, for each initial and final states, and given the branch length.
std::vector< double > getNumberOfSubstitutionsForEachType (int initialState, int finalState, double length) const
 Get the numbers of susbstitutions on a branch for all types, for an initial and final states, given the branch length.
void setSubstitutionModel (const SubstitutionModel *model)
 Set the substitution model associated with this count, if relevent.
void setSubstitutionRegister (SubstitutionRegister *reg) throw (Exception)
bool hasSubstitutionRegister () const
const SubstitutionRegistergetSubstitutionRegister () const
SubstitutionRegistergetSubstitutionRegister ()
virtual size_t getNumberOfSubstitutionTypes () const
 Short cut function, equivalent to getSubstitutionRegister().getNumberOfSubstitutionTypes().
virtual const AlphabetgetAlphabet () const
 Short cut function, equivalent to getSubstitutionRegister()->getAlphabet().
virtual size_t getNumberOfStates () const
 Short cut function, equivalent to getSubstitutionRegister()->getAlphabet()->getSize().

Protected Member Functions

void computeCounts (double length) const
void substitutionRegisterHasChanged ()

Protected Attributes

SubstitutionRegisterregister_

Private Attributes

const SubstitutionModelmodel_
int cutOff_
double currentLength_
RowMatrix< double > m_

Detailed Description

Laplace estimate of the substitution count.

This method uses Laplace transforms, as described in 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.

See also:
UniformizationSubstitutionCount
DecompositionSubstitutionCount
Author:
Julien Dutheil

Definition at line 61 of file LaplaceSubstitutionCount.h.


Constructor & Destructor Documentation

bpp::LaplaceSubstitutionCount::LaplaceSubstitutionCount ( const SubstitutionModel model,
int  cutOff 
) [inline]

Definition at line 71 of file LaplaceSubstitutionCount.h.

Referenced by clone().

Definition at line 97 of file LaplaceSubstitutionCount.h.


Member Function Documentation

Matrix< double > * LaplaceSubstitutionCount::getAllNumbersOfSubstitutions ( double  length,
size_t  type = 1 
) const [virtual]

Get the numbers of susbstitutions on a branch, for each initial and final states, and given the branch length.

Parameters:
lengthThe length of the branch.
typeThe type of susbstitution to count.
Returns:
A matrix with all numbers of substitutions for each initial and final states.

Implements bpp::SubstitutionCount.

Definition at line 110 of file LaplaceSubstitutionCount.cpp.

References computeCounts(), currentLength_, bpp::SubstitutionModel::getAlphabet(), bpp::Alphabet::getSize(), m_, and model_.

virtual const Alphabet* bpp::SubstitutionCount::getAlphabet ( ) const [inline, virtual, inherited]

Short cut function, equivalent to getSubstitutionRegister()->getAlphabet().

Returns:
The alphabet associated to this substitution count.

Definition at line 112 of file SubstitutionCount.h.

References bpp::SubstitutionRegister::getAlphabet(), and bpp::SubstitutionCount::getSubstitutionRegister().

virtual size_t bpp::SubstitutionCount::getNumberOfStates ( ) const [inline, virtual, inherited]

Short cut function, equivalent to getSubstitutionRegister()->getAlphabet()->getSize().

Returns:
The number of states in the model/alphabet.

Definition at line 119 of file SubstitutionCount.h.

References bpp::SubstitutionRegister::getAlphabet(), bpp::Alphabet::getSize(), and bpp::SubstitutionCount::getSubstitutionRegister().

double LaplaceSubstitutionCount::getNumberOfSubstitutions ( int  initialState,
int  finalState,
double  length,
size_t  type = 1 
) const [virtual]

Get the number of susbstitutions on a branch, given the initial and final states, and the branch length.

Parameters:
initialStateThe initial state.
finalStateThe final state.
lengthThe length of the branch.
typeThe type of substitution to count.
Returns:
The number of substitutions on a branch of specified length and according to initial and final states.

Implements bpp::SubstitutionCount.

Definition at line 95 of file LaplaceSubstitutionCount.cpp.

References computeCounts(), currentLength_, and m_.

Referenced by getNumberOfSubstitutionsForEachType().

std::vector<double> bpp::LaplaceSubstitutionCount::getNumberOfSubstitutionsForEachType ( int  initialState,
int  finalState,
double  length 
) const [inline, virtual]

Get the numbers of susbstitutions on a branch for all types, for an initial and final states, given the branch length.

Parameters:
initialStateThe initial state.
finalStateThe final state.
lengthThe length of the branch.
Returns:
A matrix with all numbers of substitutions for each initial and final states.

Implements bpp::SubstitutionCount.

Definition at line 104 of file LaplaceSubstitutionCount.h.

References getNumberOfSubstitutions().

Returns:
The SubstitutionRegister object associated to this instance. The register contains the description of the various substitutions types that are mapped.

Implements bpp::SubstitutionCount.

Definition at line 209 of file SubstitutionCount.h.

References bpp::AbstractSubstitutionCount::register_.

Returns:
The SubstitutionRegister object associated to this instance. The register contains the description of the various substitutions types that are mapped.

Implements bpp::SubstitutionCount.

Definition at line 211 of file SubstitutionCount.h.

References bpp::AbstractSubstitutionCount::register_.

bool bpp::AbstractSubstitutionCount::hasSubstitutionRegister ( ) const [inline, virtual, inherited]
Returns:
Tell if a substitution register has been attached to this class.

Implements bpp::SubstitutionCount.

Definition at line 194 of file SubstitutionCount.h.

References bpp::AbstractSubstitutionCount::register_.

LaplaceSubstitutionCount& bpp::LaplaceSubstitutionCount::operator= ( const LaplaceSubstitutionCount asc) [inline]

Definition at line 87 of file LaplaceSubstitutionCount.h.

References currentLength_, cutOff_, m_, and model_.

Set the substitution model associated with this count, if relevent.

Parameters:
modelThe substitution model to use with this count.

Implements bpp::SubstitutionCount.

Definition at line 138 of file LaplaceSubstitutionCount.cpp.

References computeCounts(), currentLength_, bpp::SubstitutionModel::getAlphabet(), bpp::Alphabet::getSize(), m_, model_, and bpp::RowMatrix< Scalar >::resize().

Parameters:
regThe new SubstitutionRegister object to be associated to this instance. The register contains the description of the various substitutions types that are mapped.

Reimplemented from bpp::AbstractSubstitutionCount.

Definition at line 117 of file LaplaceSubstitutionCount.h.

Implements bpp::AbstractSubstitutionCount.

Definition at line 123 of file LaplaceSubstitutionCount.h.


Member Data Documentation

Definition at line 66 of file LaplaceSubstitutionCount.h.

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


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Friends