From 6a89db28bb3a365e277bde55a8975785524ab479 Mon Sep 17 00:00:00 2001 From: Richard Roberts Date: Tue, 20 Aug 2013 17:07:40 +0000 Subject: [PATCH] Revert "Ported a fix from Steve for keeping factor order consistent (I don't remember why this is needed)" This reverts commit 975d470b0fb7637c0f46e967301da4eda0f04b5a. --- gtsam/nonlinear/ISAM2.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/gtsam/nonlinear/ISAM2.cpp b/gtsam/nonlinear/ISAM2.cpp index 612fe669c..b3d976acc 100644 --- a/gtsam/nonlinear/ISAM2.cpp +++ b/gtsam/nonlinear/ISAM2.cpp @@ -762,8 +762,7 @@ void ISAM2::marginalizeLeaves(const FastList& leafKeysList, // Keep track of marginal factors - map from clique to the marginal factors // that should be incorporated into it, passed up from it's children. -// multimap marginalFactors; - map > marginalFactors; // Steve's fix for making factor order consistent + multimap marginalFactors; // Remove each variable and its subtrees BOOST_REVERSE_FOREACH(Key j, leafKeys) { @@ -785,7 +784,7 @@ void ISAM2::marginalizeLeaves(const FastList& leafKeysList, // because their information is already incorporated in the new // marginal factor. So, now associate this marginal factor with the // parent of this clique. - marginalFactors[clique->parent()->conditional()->front()].push_back(marginalFactor); + marginalFactors.insert(make_pair(clique->parent(), marginalFactor)); // Now remove this clique and its subtree - all of its marginal // information has been stored in marginalFactors. const Cliques removedCliques = this->removeSubtree(clique); // Remove the subtree and throw away the cliques