bpp-phyl3 3.0.0
RN95s.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_NUCLEOTIDE_RN95S_H
6#define BPP_PHYL_MODEL_NUCLEOTIDE_RN95S_H
7
9
10#include "../AbstractSubstitutionModel.h"
12
13// From SeqLib:
15
16namespace bpp
17{
109class RN95s :
111{
112private:
114
115public:
116 RN95s(std::shared_ptr<const NucleicAlphabet> alphabet,
117 double alpha = 0.25,
118 double beta = 0.25,
119 double gamma = 0.25,
120 double delta = 0.25);
121
122 virtual ~RN95s() {}
123
124 RN95s* clone() const override { return new RN95s(*this); }
125
126public:
127 std::string getName() const override { return "RN95s"; }
128
132 void setFreq(std::map<int, double>&) override;
133
134protected:
135 void updateMatrices_() override;
136};
137} // end of namespace bpp.
138#endif // BPP_PHYL_MODEL_NUCLEOTIDE_RN95S_H
Specialisation abstract class for nucleotide substitution model.
const Alphabet & alphabet() const override
Intersection of models RN95 and L95.
Definition: RN95s.h:111
void setFreq(std::map< int, double > &) override
This method takes the average value between observed and .
Definition: RN95s.cpp:181
double delta_
Definition: RN95s.h:113
RN95s * clone() const override
Definition: RN95s.h:124
std::string getName() const override
Get the name of the model.
Definition: RN95s.h:127
void updateMatrices_() override
Diagonalize the matrix, and fill the eigenValues_, iEigenValues_, leftEigenVectors_ and rightEigenVe...
Definition: RN95s.cpp:47
RN95s(std::shared_ptr< const NucleicAlphabet > alphabet, double alpha=0.25, double beta=0.25, double gamma=0.25, double delta=0.25)
Definition: RN95s.cpp:17
double gamma_
Definition: RN95s.h:113
double alpha_
Definition: RN95s.h:113
virtual ~RN95s()
Definition: RN95s.h:122
double beta_
Definition: RN95s.h:113
Defines the basic types of data flow nodes.