7 #include "../FrequencySet/ProteinFrequencySet.h"
8 #include "../MixtureOfSubstitutionModels.h"
17 shared_ptr<const ProteicAlphabet> alpha) :
27 vector<unique_ptr<TransitionModelInterface>> vpSM;
28 vpSM.push_back(make_unique<LLG08_UL3::EmbeddedModel>(alpha,
"Q1"));
29 vpSM.push_back(make_unique<LLG08_UL3::EmbeddedModel>(alpha,
"Q2"));
30 vpSM.push_back(make_unique<LLG08_UL3::EmbeddedModel>(alpha,
"Q3"));
37 vrate.push_back(vi->getRate());
44 for (
size_t i = 0; i < pl.
size(); ++i)
46 name = pl[i].getName();
52 mixedModelPtr_->parameter(st).hasConstraint() ? std::shared_ptr<ConstraintInterface>(
mixedModelPtr_->parameter(st).getConstraint()->clone()) : 0));
62 shared_ptr<const ProteicAlphabet> alpha,
69 #include "__LLG08_UL3ExchangeabilityCode"
70 #include "__LLG08_UL3FrequenciesCode"
71 #include "__LLG08_UL3RatesProps"
Abstract class for mixture models based on the bibliography.
std::unique_ptr< MixedTransitionModelInterface > mixedModelPtr_
Partial implementation of the SubstitutionModel interface for models that are set for matching the bi...
std::map< std::string, std::string > mapParNamesFromPmodel_
Tools to make the link between the Parameters of the object and those of pmixmodel_.
ParameterList lParPmodel_
virtual void updateMatrices_()
void addParameter_(Parameter *parameter)
Specialisation abstract class for reversible protein substitution model.
virtual void updateMatrices_() override
Compute and diagonalize the matrix, and fill the eigenValues_, leftEigenVectors_ and rightEigenVecto...
Abstract class of Wrapping model class, where all methods are redirected from model().
This class implements a state map where all resolved states are modeled.
EmbeddedModel(std::shared_ptr< const ProteicAlphabet > alpha, string name)
double getProportion() const
LLG08_UL3(std::shared_ptr< const ProteicAlphabet > alpha)
Build a UL3 model, with original equilibrium frequencies, probabilities and rates.
virtual void addParameter(const Parameter ¶m)
Defines the basic types of data flow nodes.
std::vector< double > Vdouble