5 #ifndef BPP_PHYL_MODEL_CODON_ABSTRACTCODONSUBSTITUTIONMODEL_H
6 #define BPP_PHYL_MODEL_CODON_ABSTRACTCODONSUBSTITUTIONMODEL_H
9 #include "../AbstractWordSubstitutionModel.h"
10 #include "../Nucleotide/NucleotideSubstitutionModel.h"
48 std::shared_ptr<const GeneticCode>
gCode_;
63 std::shared_ptr<const GeneticCode> gCode,
64 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod,
65 const std::string& st,
66 bool paramRates =
false);
83 std::shared_ptr<const GeneticCode> gCode,
84 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod1,
85 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod2,
86 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod3,
87 const std::string& st,
88 bool paramRates =
false);
Abstract class for substitution models on codons.
std::shared_ptr< const GeneticCode > getGeneticCode() const override
AbstractCodonSubstitutionModel(std::shared_ptr< const GeneticCode > gCode, std::unique_ptr< NucleotideSubstitutionModelInterface > pmod, const std::string &st, bool paramRates=false)
Build a new AbstractCodonSubstitutionModel object from a pointer to a NucleotideSubstitutionModel.
std::shared_ptr< const GeneticCode > gCode_
AbstractCodonSubstitutionModel & operator=(const AbstractCodonSubstitutionModel &model)
void completeMatrices_() override
Method inherited from AbstractWordSubstitutionModel.
AbstractCodonSubstitutionModel * clone() const override=0
virtual ~AbstractCodonSubstitutionModel()
void updateMatrices_() override
Diagonalize the matrix, and fill the eigenValues_, iEigenValues_, leftEigenVectors_ and rightEigenVe...
bool hasParametrizedRates_
boolean for the parametrization of the position relative rates. Default : false.
void setNamespace(const std::string &prefix) override
AbstractCodonSubstitutionModel(const AbstractCodonSubstitutionModel &model)
Abstract Basal class for words of substitution models.
void setNamespace(const std::string &prefix)
AbstractWordSubstitutionModel & operator=(const AbstractWordSubstitutionModel &)
Defines the basic types of data flow nodes.