12 std::shared_ptr<PhyloLikelihoodContainer> pC,
13 const std::vector<size_t>& nPhylo,
28 for (
size_t i = 0; i < param.size(); ++i)
37 simplex_ = ConfiguredParametrizable::createConfigured<Simplex, ConfiguredSimplex>(this->
context(), simplex, paramList,
"");
49 std::vector<std::shared_ptr<Node_DF>> vSL;
51 for (
auto np : nPhylo)
62 likCal_->setSiteLikelihoods(sL);
71 return accessValueConstCast<const Simplex*>(*simplex_)->getFrequencies();
76 return accessValueConstCast<const Simplex*>(*simplex_)->prob(index);
The AlignedPhyloLikelihoodSet abstract class.
const AlignedPhyloLikelihoodInterface & alignedPhyloLikelihood(size_t nPhyl) const override
virtual void shareParameters_(const ParameterList ¶meters)
const ParameterList & getParameters() const override
The PhyloLikelihoodSet class, to manage a subset of PhyloLikelihoods from a given PhyloLikelihoodCont...
const std::vector< size_t > & getNumbersOfPhyloLikelihoods() const override
const Context & context() const override
SiteLikelihoodsRef getSiteLikelihoods(bool shrunk=false)
virtual AlignedLikelihoodCalculation & alignedLikelihoodCalculation() const =0
Vdouble getPhyloProbabilities() const
Get the probabilities of the simplex.
double getPhyloProb(size_t index) const
Get the probability of a phylolikelihood.
void fireParameterChanged(const ParameterList ¶meters) override
void setPhyloProb(Simplex const &simplex)
Set the probabilities of the simplex.
AlignedPhyloLikelihoodMixture(Context &context, std::shared_ptr< PhyloLikelihoodContainer > pC, const std::vector< size_t > &nPhylo, bool inCollection=true)
std::shared_ptr< AlignedLikelihoodCalculation > likCal_
std::shared_ptr< ConfiguredSimplex > simplex_
Context for dataflow node construction.
static std::shared_ptr< Self > create(Context &, Args &&... args)
Build a new NumericMutable node with T(args...) value.
virtual void shareParameter(const std::shared_ptr< Parameter > ¶m)
static ValueRef< DataLik > create(Context &c, NodeRefVec &&deps, const Dimension< F > &mDim)
Build a new SumOfLogarithms node with the given input matrix dimensions.
Defines the basic types of data flow nodes.
std::vector< double > Vdouble