40 #include "../FrequenciesSet/ProteinFrequenciesSet.h" 42 #include <Bpp/Numeric/Prob/SimpleDiscreteDistribution.h> 56 vector<SubstitutionModel*> vpSM;
61 Vdouble vrate, vproba;
63 for (
size_t i = 0; i < vpSM.size(); i++)
65 vproba.push_back((dynamic_cast<LLG08_UL3::EmbeddedModel*>(vpSM[i]))->getProportion());
66 vrate.push_back(vpSM[i]->
getRate());
72 ParameterList pl =
pmixmodel_->getParameters();
73 for (
size_t i = 0; i < pl.size(); i++)
75 name = pl[i].getName();
77 st =
pmixmodel_->getParameterNameWithoutNamespace(name);
79 addParameter_(
new Parameter(
"LLG08_UL3." + st,
81 pmixmodel_->getParameter(st).hasConstraint() ?
pmixmodel_->getParameter(st).getConstraint()->clone() : 0,
true));
105 AbstractParameterAliasable(name),
110 #include "__LLG08_UL3ExchangeabilityCode" 111 #include "__LLG08_UL3FrequenciesCode" 112 #include "__LLG08_UL3RatesProps" The Le et al (2008) UL3 substitution model for proteins.
std::map< std::string, std::string > mapParNamesFromPmodel_
Tools to make the link between the Parameters of the object and those of pmixmodel_.
ParameterList lParPmodel_
Abstract class for mixture models based on the bibliography.
This class implements a state map where all resolved states are modeled.
LLG08_UL3(const ProteicAlphabet *alpha)
Build a UL3 model, with original equilibrium frequencies, probabilities and rates.
virtual void updateMatrices()
std::auto_ptr< MixtureOfSubstitutionModels > pmixmodel_
virtual void updateMatrices()
Compute and diagonalize the matrix, and fill the eigenValues_, leftEigenVectors_ and rightEigenVecto...
Partial implementation of the ReversibleSubstitutionModel interface.
AbstractBiblioMixedSubstitutionModel & operator=(const AbstractBiblioMixedSubstitutionModel &model)
LLG08_UL3 & operator=(const LLG08_UL3 &)
double getRate() const
Get the rate.
EmbeddedModel(const ProteicAlphabet *alpha, string name)
Substitution models defined as a mixture of several substitution models.