5 #ifndef BPP_PHYL_MODEL_CODON_CODONDISTANCEFREQUENCIESSUBSTITUTIONMODEL_H
6 #define BPP_PHYL_MODEL_CODON_CODONDISTANCEFREQUENCIESSUBSTITUTIONMODEL_H
74 std::shared_ptr<const GeneticCode> gCode,
75 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod,
76 std::unique_ptr<CodonFrequencySetInterface> pfreq,
77 std::shared_ptr<const AlphabetIndex2> pdist =
nullptr,
78 bool paramSynRate =
false);
97 std::shared_ptr<const GeneticCode> gCode,
98 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod1,
99 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod2,
100 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod3,
101 std::unique_ptr<CodonFrequencySetInterface> pfreq,
102 std::shared_ptr<const AlphabetIndex2> pdist =
nullptr,
103 bool paramSynRate =
false);
115 std::string
getName()
const override;
121 void setFreq(std::map<int, double>& frequencies)
override;
Abstract class for modelling of non-synonymous and synonymous substitution rates in codon models.
Abstract Class for substitution models on codons parametrized by frequencies.
const FrequencySetInterface & frequencySet() const
const CodonFrequencySetInterface & codonFrequencySet() const override
bool hasCodonFrequencySet() const override
Abstract class for substitution models on codons.
Class for asynonymous substitution models on codons with parameterized equilibrium frequencies and nu...
void fireParameterChanged(const ParameterList ¶meterlist) override
void setFreq(std::map< int, double > &frequencies) override
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...
virtual ~CodonDistanceFrequenciesSubstitutionModel()
const FrequencySetInterface & frequencySet() const override
const CodonFrequencySetInterface & codonFrequencySet() const override
CodonDistanceFrequenciesSubstitutionModel * clone() const override
bool hasCodonFrequencySet() const override
std::string getName() const override
Get the name of the model.
CodonDistanceFrequenciesSubstitutionModel(std::shared_ptr< const GeneticCode > gCode, std::unique_ptr< NucleotideSubstitutionModelInterface > pmod, std::unique_ptr< CodonFrequencySetInterface > pfreq, std::shared_ptr< const AlphabetIndex2 > pdist=nullptr, bool paramSynRate=false)
Build a new CodonDistanceFrequenciesSubstitutionModel object from three pointers to AbstractSubstitut...
void setNamespace(const std::string &) override
Parametrize a set of state frequencies for codons.
Parametrize a set of state frequencies.
Defines the basic types of data flow nodes.