5 #ifndef BPP_PHYL_MODEL_CODON_ABSTRACTCODONAARATESUBSTITUTIONMODEL_H
6 #define BPP_PHYL_MODEL_CODON_ABSTRACTCODONAARATESUBSTITUTIONMODEL_H
9 #include "../Protein/ProteinSubstitutionModel.h"
41 std::shared_ptr<ProteinSubstitutionModelInterface>
pAAmodel_;
63 std::shared_ptr<ProteinSubstitutionModelInterface> pmodel,
64 std::shared_ptr<const GeneticCode> pgencode,
65 const std::string& prefix,
66 bool paramSynRate =
false);
113 void setAAModel(std::shared_ptr<ProteinSubstitutionModelInterface> model)
123 const std::shared_ptr<ProteinSubstitutionModelInterface>
getAAModel()
const
130 throw NullPointerException(
"AbstractCodonAARateSubstitutionModel::frequencySet. No associated FrequencySet.");
138 void setFreq(std::map<int, double>& frequencies)
override {}
Abstract class for modelling of non-synonymous and synonymous substitution rates in codon models,...
AbstractCodonAARateSubstitutionModel(std::shared_ptr< ProteinSubstitutionModelInterface > pmodel, std::shared_ptr< const GeneticCode > pgencode, const std::string &prefix, bool paramSynRate=false)
Build a new AbstractCodonAARateSubstitutionModel object from a pointer to NucleotideSubstitutionModel...
AbstractCodonAARateSubstitutionModel * clone() const override
void fireParameterChanged(const ParameterList ¶meters) override
bool hasCodonFrequencySet() const override
void setAAModel(std::shared_ptr< ProteinSubstitutionModelInterface > model)
std::shared_ptr< const GeneticCode > pgencode_
std::shared_ptr< ProteinSubstitutionModelInterface > pAAmodel_
AbstractCodonAARateSubstitutionModel & operator=(const AbstractCodonAARateSubstitutionModel &model)
void setFreq(std::map< int, double > &frequencies) override
virtual ~AbstractCodonAARateSubstitutionModel()
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...
std::shared_ptr< const StateMapInterface > stateMap_
const std::shared_ptr< ProteinSubstitutionModelInterface > getAAModel() const
AbstractCodonAARateSubstitutionModel(const AbstractCodonAARateSubstitutionModel &model)
const CodonFrequencySetInterface & codonFrequencySet() const override
const ProteinSubstitutionModelInterface & aaModel() const
void setNamespace(const std::string &prefix) override
AbstractParameterAliasable & operator=(const AbstractParameterAliasable &ap)
void setNamespace(const std::string &prefix)
Parametrize a set of state frequencies for codons.
Interface for codon models.
Specialized interface for protein substitution model.
Defines the basic types of data flow nodes.