5 #ifndef BPP_PHYL_MODEL_NUCLEOTIDE_K80_H
6 #define BPP_PHYL_MODEL_NUCLEOTIDE_K80_H
9 #include "../AbstractSubstitutionModel.h"
123 K80(std::shared_ptr<const NucleicAlphabet> alpha,
double kappa = 1.);
130 double Pij_t (
size_t i,
size_t j,
double d)
const override;
131 double dPij_dt (
size_t i,
size_t j,
double d)
const override;
132 double d2Pij_dt2(
size_t i,
size_t j,
double d)
const override;
137 std::string
getName()
const override {
return "K80"; }
Specialisation abstract class for reversible nucleotide substitution model.
The Kimura 2-rates substitution model for nucleotides.
K80 * clone() const override
const Matrix< double > & getd2Pij_dt2(double d) const override
K80(std::shared_ptr< const NucleicAlphabet > alpha, double kappa=1.)
double d2Pij_dt2(size_t i, size_t j, double d) const override
std::string getName() const override
Get the name of the model.
double dPij_dt(size_t i, size_t j, double d) const override
double Pij_t(size_t i, size_t j, double d) const override
const Matrix< double > & getPij_t(double d) const override
void updateMatrices_() override
Compute and diagonalize the matrix, and fill the eigenValues_, leftEigenVectors_ and rightEigenVecto...
void setFreqFromData(const SequenceDataInterface &data, double pseudoCount=0) override
This method is disabled in this model since frequencies are not free parameters.
const Matrix< double > & getdPij_dt(double d) const override
Defines the basic types of data flow nodes.