5 #ifndef BPP_PHYL_MODEL_NUCLEOTIDE_F84_H
6 #define BPP_PHYL_MODEL_NUCLEOTIDE_F84_H
145 double kappa_,
piA_,
piC_,
piG_,
piT_,
piY_,
piR_,
r_,
k1_,
k2_,
theta_,
theta1_,
theta2_;
151 std::shared_ptr<const NucleicAlphabet> alpha,
163 double Pij_t (
size_t i,
size_t j,
double d)
const;
164 double dPij_dt (
size_t i,
size_t j,
double d)
const;
165 double d2Pij_dt2(
size_t i,
size_t j,
double d)
const;
175 void setFreq(std::map<int, double>&);
Specialisation abstract class for reversible nucleotide substitution model.
The Felsenstein (1984) substitution model for nucleotides.
const Matrix< double > & getdPij_dt(double d) const
const Matrix< double > & getd2Pij_dt2(double d) const
const Matrix< double > & getPij_t(double d) const
void updateMatrices_()
Compute and diagonalize the matrix, and fill the eigenValues_, leftEigenVectors_ and rightEigenVecto...
double Pij_t(size_t i, size_t j, double d) const
void setFreq(std::map< int, double > &)
This method is redefined to actualize the corresponding parameters piA, piT, piG and piC too.
double dPij_dt(size_t i, size_t j, double d) const
F84(std::shared_ptr< const NucleicAlphabet > alpha, double kappa=1., double piA=0.25, double piC=0.25, double piG=0.25, double piT=0.25)
std::string getName() const
Get the name of the model.
double d2Pij_dt2(size_t i, size_t j, double d) const
Defines the basic types of data flow nodes.