Removed cached factors from BayesTree - these were a hack from making iSAM2 work and were causing a lot of memory to be accumulated for big problems

release/4.3a0
Chris Beall 2010-11-02 21:37:48 +00:00
parent c9b57ccd74
commit 2b9193e12a
3 changed files with 0 additions and 7 deletions

View File

@ -133,7 +133,6 @@ namespace gtsam {
void BayesTree<CONDITIONAL>::Clique::permuteWithInverse(const Permutation& inversePermutation) {
BayesNet<CONDITIONAL>::permuteWithInverse(inversePermutation);
BOOST_FOREACH(Index& separatorKey, separator_) { separatorKey = inversePermutation[separatorKey]; }
if(cachedFactor_) cachedFactor_->permuteWithInverse(inversePermutation);
BOOST_FOREACH(const shared_ptr& child, children_) {
child->permuteWithInverse(inversePermutation);
}
@ -153,7 +152,6 @@ namespace gtsam {
#endif
if(changed) {
BOOST_FOREACH(Index& separatorKey, separator_) { separatorKey = inversePermutation[separatorKey]; }
if(cachedFactor_) cachedFactor_->permuteWithInverse(inversePermutation);
BOOST_FOREACH(const shared_ptr& child, children_) {
(void)child->permuteSeparatorWithInverse(inversePermutation);
}

View File

@ -58,7 +58,6 @@ namespace gtsam {
weak_ptr parent_;
std::list<shared_ptr> children_;
std::list<Index> separator_; /** separator keys */
typename CONDITIONAL::Factor::shared_ptr cachedFactor_;
friend class BayesTree<CONDITIONAL>;
@ -87,9 +86,6 @@ namespace gtsam {
std::list<shared_ptr>& children() { return children_; }
const std::list<shared_ptr>& children() const { return children_; }
/** Reference the cached factor */
typename CONDITIONAL::Factor::shared_ptr& cachedFactor() { return cachedFactor_; }
/** The size of subtree rooted at this clique, i.e., nr of Cliques */
size_t treeSize() const;

View File

@ -188,7 +188,6 @@ namespace gtsam {
BOOST_FOREACH(typename BayesTree::sharedClique& childRoot, children)
childRoot->parent_ = new_clique;
new_clique->cachedFactor() = jointFactor;
toc("JT 2.4 Update tree");
return make_pair(new_clique, jointFactor);
}