5 #ifndef BPP_PHYL_MODEL_NUCLEOTIDE_JCNUC_H
6 #define BPP_PHYL_MODEL_NUCLEOTIDE_JCNUC_H
9 #include "../AbstractSubstitutionModel.h"
103 JCnuc(std::shared_ptr<const NucleicAlphabet> alpha);
110 double Pij_t (
size_t i,
size_t j,
double d)
const override;
111 double dPij_dt (
size_t i,
size_t j,
double d)
const override;
112 double d2Pij_dt2(
size_t i,
size_t j,
double d)
const override;
117 std::string
getName()
const override {
return "JC69"; }
Specialisation abstract class for reversible nucleotide substitution model.
The Jukes-Cantor substitution model for nucleotides.
double dPij_dt(size_t i, size_t j, double d) const override
double d2Pij_dt2(size_t i, size_t j, double d) const override
JCnuc * clone() const override
std::string getName() const override
Get the name of the model.
const Matrix< double > & getd2Pij_dt2(double d) const override
void setFreqFromData(const SequenceDataInterface &data, double pseudoCount=0) override
This method is disabled in this model since frequencies are not free parameters.
double Pij_t(size_t i, size_t j, double d) const override
JCnuc(std::shared_ptr< const NucleicAlphabet > alpha)
void updateMatrices_() override
const Matrix< double > & getPij_t(double d) const override
const Matrix< double > & getdPij_dt(double d) const override
Defines the basic types of data flow nodes.