|
bpp-phyl
2.2.0
|
Generally used mutation process model. More...
#include <Bpp/Phyl/Simulation/MutationProcess.h>
Inheritance diagram for bpp::SimpleMutationProcess:
Collaboration diagram for bpp::SimpleMutationProcess:Public Member Functions | |
| SimpleMutationProcess (const SubstitutionModel *model) | |
| Build a new SimpleMutationProcess object. More... | |
| virtual | ~SimpleMutationProcess () |
| size_t | evolve (size_t initialState, double time) const |
| Method redefinition for better performance. More... | |
| size_t | mutate (size_t state) const |
| Mutate a character in state i. More... | |
| size_t | mutate (size_t state, unsigned int n) const |
| Mutate a character in state i n times. More... | |
| double | getTimeBeforeNextMutationEvent (size_t state) const |
| Get the time before next mutation event. More... | |
| MutationPath | detailedEvolve (size_t initialState, double time) const |
| Simulation a character evolution during a specified time according to the given substitution model and send the total path with all intermediate states and times between mutation events. More... | |
| const SubstitutionModel * | getSubstitutionModel () const |
| Get the substitution model associated to the mutation process. More... | |
Protected Attributes | |
| const SubstitutionModel * | model_ |
| The substitution model to use: More... | |
| size_t | size_ |
| The number of states allowed for the character to mutate. More... | |
| VVdouble | repartition_ |
| The repartition function for states probabilities. More... | |
Generally used mutation process model.
This builds a MutationProcess according to a given SubstitutionModel. The underlying mutation process is the following:
from an exponential law with parameter
,
to state
is:
Definition at line 341 of file MutationProcess.h.
| SimpleMutationProcess::SimpleMutationProcess | ( | const SubstitutionModel * | model | ) |
Build a new SimpleMutationProcess object.
| model | The substitution model to use. |
Definition at line 120 of file MutationProcess.cpp.
References bpp::SubstitutionModel::getGenerator(), bpp::SubstitutionModel::getNumberOfStates(), bpp::SubstitutionModel::Qij(), bpp::AbstractMutationProcess::repartition_, and bpp::AbstractMutationProcess::size_.
|
virtual |
Definition at line 153 of file MutationProcess.cpp.
|
virtualinherited |
Simulation a character evolution during a specified time according to the given substitution model and send the total path with all intermediate states and times between mutation events.
| initialState | The state before beginning evolution. |
| time | The time during which evolution must occure. |
Implements bpp::MutationProcess.
Definition at line 103 of file MutationProcess.cpp.
References bpp::SubstitutionModel::getAlphabet(), bpp::AbstractMutationProcess::getTimeBeforeNextMutationEvent(), bpp::AbstractMutationProcess::model_, and bpp::AbstractMutationProcess::mutate().
|
virtual |
Method redefinition for better performance.
| initialState | The state before beginning evolution. |
| time | The time during which evolution must occure. |
Reimplemented from bpp::AbstractMutationProcess.
Definition at line 157 of file MutationProcess.cpp.
References bpp::AbstractMutationProcess::model_, bpp::SubstitutionModel::Pij_t(), and bpp::AbstractMutationProcess::size_.
|
inlinevirtualinherited |
Get the substitution model associated to the mutation process.
Implements bpp::MutationProcess.
Definition at line 325 of file MutationProcess.h.
References bpp::AbstractMutationProcess::model_.
|
virtualinherited |
Get the time before next mutation event.
| state | The actual state of the chain; |
Implements bpp::MutationProcess.
Definition at line 81 of file MutationProcess.cpp.
References bpp::AbstractMutationProcess::model_, and bpp::SubstitutionModel::Qij().
Referenced by bpp::AbstractMutationProcess::detailedEvolve(), and bpp::AbstractMutationProcess::evolve().
|
virtualinherited |
Mutate a character in state i.
| state | The current state of the character. |
Implements bpp::MutationProcess.
Definition at line 49 of file MutationProcess.cpp.
References bpp::AbstractMutationProcess::repartition_, and bpp::AbstractMutationProcess::size_.
Referenced by bpp::AbstractMutationProcess::detailedEvolve(), and bpp::AbstractMutationProcess::evolve().
|
virtualinherited |
Mutate a character in state i n times.
| state | The current state of the character. |
| n | The number of mutations to perform. |
Implements bpp::MutationProcess.
Definition at line 61 of file MutationProcess.cpp.
References bpp::AbstractMutationProcess::repartition_, and bpp::AbstractMutationProcess::size_.
|
protectedinherited |
The substitution model to use:
Definition at line 285 of file MutationProcess.h.
Referenced by bpp::AbstractMutationProcess::detailedEvolve(), evolve(), bpp::AbstractMutationProcess::getSubstitutionModel(), bpp::AbstractMutationProcess::getTimeBeforeNextMutationEvent(), and bpp::AbstractMutationProcess::operator=().
|
protectedinherited |
The repartition function for states probabilities.
repartition_[i][j] = probability that, being in state i at time t, we'll be in state <= j at time t+1.
Definition at line 298 of file MutationProcess.h.
Referenced by bpp::AbstractMutationProcess::mutate(), bpp::AbstractMutationProcess::operator=(), bpp::SelfMutationProcess::SelfMutationProcess(), and SimpleMutationProcess().
|
protectedinherited |
The number of states allowed for the character to mutate.
Definition at line 290 of file MutationProcess.h.
Referenced by evolve(), bpp::AbstractMutationProcess::mutate(), bpp::AbstractMutationProcess::operator=(), bpp::SelfMutationProcess::SelfMutationProcess(), and SimpleMutationProcess().