bpp-phyl3 3.0.0
PhyloLikelihood.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_LIKELIHOOD_PHYLOLIKELIHOODS_PHYLOLIKELIHOOD_H
6#define BPP_PHYL_LIKELIHOOD_PHYLOLIKELIHOODS_PHYLOLIKELIHOOD_H
7
10
11#include "../DataFlow/LikelihoodCalculation.h"
12
13namespace bpp
14{
22 public virtual SecondOrderDerivable
23{
24public:
27
29
30public:
40 virtual bool isInitialized() const = 0;
41
42 virtual const Context& context() const = 0;
43
44 virtual Context& context() = 0;
45
60
66 double getLogLikelihood() const
67 {
68 return -getValue();
69 }
70
76 // virtual double getDLogLikelihood(const std::string& variable) const = 0;
77
78 // virtual double getD2LogLikelihood(const std::string& variable) const = 0;
79
89
91
98
105
112
119
126
130 virtual std::shared_ptr<LikelihoodCalculation> getLikelihoodCalculation() const = 0;
131};
132} // end of namespace bpp.
133#endif // BPP_PHYL_LIKELIHOOD_PHYLOLIKELIHOODS_PHYLOLIKELIHOOD_H
Context for dataflow node construction.
Definition: DataFlow.h:527
virtual double getValue() const=0
The PhyloLikelihood interface, for phylogenetic likelihood.
virtual ParameterList getNonDerivableParameters() const =0
virtual Context & context()=0
virtual ParameterList getSubstitutionModelParameters() const =0
Get the independent parameters associated to substitution model(s).
virtual const Context & context() const =0
virtual LikelihoodCalculation & likelihoodCalculation() const =0
PhyloLikelihoodInterface * clone() const =0
virtual ValueRef< DataLik > getLikelihoodNode() const =0
virtual ParameterList getRateDistributionParameters() const =0
Get the independent parameters associated to the rate distribution(s).
virtual ParameterList getBranchLengthParameters() const =0
Get the independent branch lengths parameters.
virtual ParameterList getDerivableParameters() const =0
double getLogLikelihood() const
Get the logarithm of the likelihood for the whole dataset.
virtual bool isInitialized() const =0
virtual ParameterList getRootFrequenciesParameters() const =0
Get the independent parameters associated to the root frequencies(s).
virtual std::shared_ptr< LikelihoodCalculation > getLikelihoodCalculation() const =0
Defines the basic types of data flow nodes.
std::shared_ptr< Value< T > > ValueRef
Shared pointer alias for Value<T>.
Definition: DataFlow.h:84