5 #ifndef BPP_PHYL_MODEL_CODON_KCM_H
6 #define BPP_PHYL_MODEL_CODON_KCM_H
9 #include "../AbstractBiblioSubstitutionModel.h"
46 std::unique_ptr<KroneckerCodonDistanceSubstitutionModel>
pmodel_;
56 KCM(std::shared_ptr<const GeneticCode> gc,
bool oneModel);
67 std::string
getName()
const override {
return "KCM" + std::string(
oneModel_ ?
"7" :
"19") +
".";}
88 void setFreq(std::map<int, double>& frequencies)
override
void setFreq(std::map< int, double > &frequ) override
Set equilibrium frequencies.
Parametrize a set of state frequencies for codons.
Interface for reversible codon models.
The general multiple substitution model for codons, from Zaheri & al, 2014.
const CodonFrequencySetInterface & codonFrequencySet() const override
std::unique_ptr< KroneckerCodonDistanceSubstitutionModel > pmodel_
double getCodonsMulRate(size_t i, size_t j) const override
Returns the multiplicative rate specific to two codons specified by their number. The respective gene...
SubstitutionModelInterface & substitutionModel_() override
KCM * clone() const override
void setFreq(std::map< int, double > &frequencies) override
Set equilibrium frequencies.
const SubstitutionModelInterface & substitutionModel() const override
KCM & operator=(const KCM &)
std::string getName() const override
Get the name of the model.
KCM(std::shared_ptr< const GeneticCode > gc, bool oneModel)
constructor.
std::shared_ptr< const GeneticCode > getGeneticCode() const override
bool hasCodonFrequencySet() const override
Interface for all substitution models.
Defines the basic types of data flow nodes.