5 #ifndef BPP_PHYL_MODEL_ONECHANGETRANSITIONMODEL_H
6 #define BPP_PHYL_MODEL_ONECHANGETRANSITIONMODEL_H
51 double Pij_t (
size_t i,
size_t j,
double t)
const override;
52 double dPij_dt (
size_t i,
size_t j,
double t)
const override;
53 double d2Pij_dt2(
size_t i,
size_t j,
double t)
const override;
75 virtual void setFreq(std::map<int, double>& m)
override
Virtual class of a Transition Model related to a given SubstitutionModel.
const TransitionModelInterface & transitionModel() const override
const BranchModelInterface & model() const override
TransitionModelInterface & transitionModel_() override
AbstractFromSubstitutionModelTransitionModel & operator=(const AbstractFromSubstitutionModelTransitionModel &fmsm)
AbstractParameterAliasable & operator=(const AbstractParameterAliasable &ap)
Abstract class of Wrapping model class, where all methods are redirected from model().
virtual const FrequencySetInterface & frequencySet() const =0
virtual void setRate(double rate)=0
Set the rate of the model (must be positive).
virtual double getRate() const =0
Get the rate.
virtual double getInitValue(size_t i, int state) const =0
Parametrize a set of state frequencies.
From a model, compute transition probabilities given there is at least a change in the branch.
const Matrix< double > & getPij_t(double t) const override
void setRate(double rate) override
Set the rate of the model (must be positive).
const Matrix< double > & getd2Pij_dt2(double t) const override
const FrequencySetInterface & frequencySet() const override
double Pij_t(size_t i, size_t j, double t) const override
virtual void setFreq(std::map< int, double > &m) override
Set equilibrium frequencies.
OneChangeTransitionModel(std::unique_ptr< SubstitutionModelInterface > originalModel)
double dPij_dt(size_t i, size_t j, double t) const override
const Matrix< double > & getdPij_dt(double t) const override
double d2Pij_dt2(size_t i, size_t j, double t) const override
const Vdouble & getFrequencies() const override
double getRate() const override
Get the rate.
double freq(size_t i) const override
double getInitValue(size_t i, int state) const override
OneChangeTransitionModel * clone() const override
OneChangeTransitionModel & operator=(const OneChangeTransitionModel &fmsm)
std::string getName() const override
Get the name of the model.
virtual ~OneChangeTransitionModel()
OneChangeTransitionModel(const OneChangeTransitionModel &fmsm)
void setFreqFromData(const SequenceDataInterface &data, double pseudoCount) override
Set equilibrium frequencies equal to the frequencies estimated from the data.
virtual double freq(size_t i) const =0
virtual const Vdouble & getFrequencies() const =0
virtual void setFreq(std::map< int, double > &frequencies)=0
Set equilibrium frequencies.
virtual void setFreqFromData(const SequenceDataInterface &data, double pseudoCount=0)=0
Set equilibrium frequencies equal to the frequencies estimated from the data.
Defines the basic types of data flow nodes.
std::vector< double > Vdouble