本文整理汇总了C++中TreeTemplate::setBranchProperty方法的典型用法代码示例。如果您正苦于以下问题:C++ TreeTemplate::setBranchProperty方法的具体用法?C++ TreeTemplate::setBranchProperty怎么用?C++ TreeTemplate::setBranchProperty使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类TreeTemplate
的用法示例。
在下文中一共展示了TreeTemplate::setBranchProperty方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: get_abayes_tree
string Alignment::get_abayes_tree() {
TreeTemplate<Node> tree = TreeTemplate<Node>(likelihood->getTree());
std::map<int, nniIDs> nniMap;
for (auto& node : tree.getNodes()) {
if (node->hasFather() && node->getFather()->hasFather()) {
auto search = nniMap.find(node->getFatherId());
if (search == nniMap.end()) {
nniMap[node->getFatherId()].rearr1 = node->getId();
}
else {
search->second.rearr2 = node->getId();
};
}
}
for (auto entry : nniMap) {
double lnl1 = -likelihood->testNNI(entry.second.rearr1);
double lnl2 = -likelihood->testNNI(entry.second.rearr2);
bpp::Number<double> abayes = 1 / (1 + exp(lnl1) + exp(lnl2));
tree.setBranchProperty(entry.first, TreeTools::BOOTSTRAP, abayes);
}
string s = TreeTools::treeToParenthesis(tree, true, TreeTools::BOOTSTRAP);
s.erase(s.find_last_not_of(" \n\r\t")+1);
return s;
}