bpp-phyl3 3.0.0
DRTreeLikelihood.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_LEGACY_LIKELIHOOD_DRTREELIKELIHOOD_H
6#define BPP_PHYL_LEGACY_LIKELIHOOD_DRTREELIKELIHOOD_H
7
10
13
14namespace bpp
15{
39{
40public:
43
44 DRTreeLikelihoodInterface* clone() const override = 0;
45
46public:
47
48public:
55 virtual const DRASDRTreeLikelihoodData& likelihoodData() const override = 0;
64 virtual void computeLikelihoodAtNode(int nodeId, VVVdouble& likelihoodArray) const = 0;
65};
66} // end of namespace bpp.
67#endif // BPP_PHYL_LEGACY_LIKELIHOOD_DRTREELIKELIHOOD_H
Likelihood data structure for rate across sites models, using a double-recursive algorithm.
Interface for double-recursive (DR) implementation of the likelihood computation.
virtual void computeLikelihoodAtNode(int nodeId, VVVdouble &likelihoodArray) const =0
Compute the likelihood array at a given node.
virtual const DRASDRTreeLikelihoodData & likelihoodData() const override=0
DRTreeLikelihoodInterface * clone() const override=0
virtual DRASDRTreeLikelihoodData & likelihoodData() override=0
Interface for rate across sites (RAS) implementation.
Defines the basic types of data flow nodes.
std::vector< VVdouble > VVVdouble