11 std::shared_ptr<SingleProcessPhyloLikelihood> spp,
12 std::shared_ptr<SubstitutionRegisterInterface> reg,
13 std::shared_ptr<const AlphabetIndex2> weights,
14 std::shared_ptr<const AlphabetIndex2> distances,
23 const auto tree = spp->tree();
27 for ( ; !eIT->end(); eIT->next())
30 if (tree->hasEdgeIndex(edge1))
37 for ( ; !nIT->end(); nIT->next())
40 if (tree->hasNodeIndex(node1))
47 short unresolvedOption,
The AbstractSinglePhyloSubstitutionMapping class: substitution mapping linked with a Single Process P...
bool matchParametersValues(const ParameterList &nullParams) override
Checks and sets the models with given parameters.
std::shared_ptr< const SubstitutionRegisterInterface > getSubstitutionRegister() const
std::shared_ptr< const AlphabetIndex2 > getDistances() const
void addModel(size_t index, const TransitionModelInterface &model, Vuint brIds)
add a Substitution Model in the map, and on all branches with given Ids.
std::unique_ptr< ProbabilisticSubstitutionMapping > factors_
virtual std::unique_ptr< EdgeIterator > allEdgesIterator()=0
virtual NodeGraphid getNodeGraphid(const std::shared_ptr< N > nodeObject) const=0
virtual NodeIndex setNodeIndex(const std::shared_ptr< N > nodeObject, NodeIndex index)=0
virtual EdgeGraphid getEdgeGraphid(const std::shared_ptr< E > edgeObject) const=0
virtual EdgeIndex setEdgeIndex(const std::shared_ptr< E > edgeObject, EdgeIndex index)=0
virtual std::unique_ptr< NodeIterator > allNodesIterator()=0
SingleProcessSubstitutionMapping(std::shared_ptr< SingleProcessPhyloLikelihood > spp, std::shared_ptr< SubstitutionRegisterInterface > reg, std::shared_ptr< const AlphabetIndex2 > weights, std::shared_ptr< const AlphabetIndex2 > distances, double threshold=-1, bool verbose=true)
std::shared_ptr< SingleProcessPhyloLikelihood > pSPP_
LikelihoodCalculationSingleProcess & getLikelihoodCalculationSingleProcess()
void setBranchedModelSet_()
Set the models of the BranchedModelSet to the adhoc branches, for normalization.
void computeNormalizations(const ParameterList &nullParams, short unresolvedOption=SubstitutionMappingTools::UNRESOLVED_ZERO, bool verbose=true)
compute Normalizations
This interface describes the substitution process along the tree and sites of the alignment.
virtual const std::vector< unsigned int > getNodesWithModel(size_t i) const =0
Get a list of nodes id for which the given model is associated.
virtual std::vector< size_t > getModelNumbers() const =0
virtual const BranchModelInterface & model(size_t i) const =0
Interface for all transition models.
Defines the basic types of data flow nodes.