bpp-phyl3 3.0.0
CodonDistancePhaseFrequenciesSubstitutionModel.h
Go to the documentation of this file.
1// SPDX-FileCopyrightText: The Bio++ Development Group
2//
3// SPDX-License-Identifier: CECILL-2.1
4
5#ifndef BPP_PHYL_MODEL_CODON_CODONDISTANCEPHASEFREQUENCIESSUBSTITUTIONMODEL_H
6#define BPP_PHYL_MODEL_CODON_CODONDISTANCEPHASEFREQUENCIESSUBSTITUTIONMODEL_H
7
8
12
13namespace bpp
14{
47{
48public:
61 std::shared_ptr<const GeneticCode> gCode,
62 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod,
63 std::unique_ptr<CodonFrequencySetInterface> pfreq,
64 std::shared_ptr<const AlphabetIndex2> pdist = nullptr);
65
80 std::shared_ptr<const GeneticCode> gCode,
81 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod1,
82 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod2,
83 std::unique_ptr<NucleotideSubstitutionModelInterface> pmod3,
84 std::unique_ptr<CodonFrequencySetInterface> pfreq,
85 std::shared_ptr<const AlphabetIndex2> pdist = nullptr);
86
88
90 {
92 }
93
94public:
95 void fireParameterChanged(const ParameterList& parameterlist) override;
96
97 std::string getName() const override;
98
99 double getCodonsMulRate(size_t i, size_t j) const override;
100
101 void setNamespace(const std::string&) override;
102
103 void setFreq(std::map<int, double>& frequencies) override;
104
106 {
108 }
109
111
112 bool hasCodonFrequencySet() const override
113 {
115 }
116};
117} // end of namespace bpp.
118#endif // BPP_PHYL_MODEL_CODON_CODONDISTANCEPHASEFREQUENCIESSUBSTITUTIONMODEL_H
Abstract class for modelling of non-synonymous and synonymous substitution rates in codon models.
Abstract Class for substitution models on codons parametrized by a frequency.
const CodonFrequencySetInterface & codonFrequencySet() const override
Abstract class for substitution models on codons.
Class for asynonymous substitution models on codons with parameterized equilibrium frequencies and nu...
CodonDistancePhaseFrequenciesSubstitutionModel * clone() const 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...
CodonDistancePhaseFrequenciesSubstitutionModel(std::shared_ptr< const GeneticCode > gCode, std::unique_ptr< NucleotideSubstitutionModelInterface > pmod, std::unique_ptr< CodonFrequencySetInterface > pfreq, std::shared_ptr< const AlphabetIndex2 > pdist=nullptr)
Build a new CodonDistancePhaseFrequenciesSubstitutionModel object from three pointers to AbstractSubs...
Parametrize a set of state frequencies for codons.
Defines the basic types of data flow nodes.